I need a project to motivate myself into writing some non-trivial go. So I want to learn about implementing control theory, sensors, etc. Things like IMU (gyro, 3D magnetic compass, and accelerometer) GPS. Not only do I want to talk to the sensors, but I want to implement Kalman filters, PID controllers, etc. myself. I'm a pretty experience programmer, done OS internal work, DBMS driver internals, networking, etc all at pretty low level. I do not want to just grab a library off github that "handles the sensor", I want to implement the algorithms, just like you would in C, but in go.
Naturally, my first thought was to implement a flight controller for an autonomous quad copter, but upon further review, I think that's a bit ambitious. So now I have three projects: 1) control the temperature of an incandescent light bulb (one controll) 2) balance a broomstick upside down (two controllers X and Y) 3) flight control for three phase brushless motors. 4) fully autonomous flight I'm not sure that any of these really require "hard real-time" as we aren't trying to control a nuclear reactor or a race car at speeds, but it also has more serious restrictions than a web-based chat server. My initial concept was that I'd grab a recent Raspberry PI, crank up the ARM cross compiler switches and have fun. But, I'm not sure that I want or need Linux. And maybe I want to specifically exclude Linux for a RTOS. So now I have 3 main questions: 1) is go a bad choice for implementing this? 2) what hardware should I use? RaspberryPI, or some super Arduino? or a more specific microcontroller, perhaps controlled by a R-PI? 3) what OS? (Choices restricted to some flavor of Unix/Linux, or an RTos, no OS-X, IOS, or Windows need apply) And yes, I know you can buy a quad-copter flight controller for $30 or so, but I'm much more interested in learning than just flying around taking spy photos. Thanks Pat -- You received this message because you are subscribed to the Google Groups "golang-nuts" group. To unsubscribe from this group and stop receiving emails from it, send an email to golang-nuts+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.