the controller now works mostly. requires further testing.