Monday, February 27, 2012

Monterey 2.0 - Preliminary Information

I have many big changes in mind for Monterey 2.0 (my FOSS ROV controller)!  How does having an ROV controller that works on OSX, Linux, Windows AND Android sound?  How does a simplified UX (user experience) sound?  Does a revamped UI sound like a good idea?  Finally, how does having a clean, simple example Arduino sketch for the bottomside (ROV firmware) sound?  Well, I've started designing these aspects of the controller.  I have learned quite a bit about OOP and Qt since I started working on Monterey v1.0 (my first decent sized Qt project), and I plan on applying what I have learned to Monterey v2.0.  

Preliminary Feature Set
  • A cleaner, neater code base! (also more focused on OOP than before)
  • Multiple motor configurations (4 horizontal/2 vertical, 2 horizontal/2 vertical and 2 horizontal/1 vertical)
  • Relay support (probably 3)
  • Servo support (probably 2)
  • Depth, heading and voltage sensor support
  • Fully functional (and well commented) example sketch for the Arduino Ethernet
  • USB joystick support
  • Easy debugging
  • Simplicity of use
  • A revamped UI with nicer widgets that get the job done better (graphs, compass, LEDs, etc) than their old counterparts in Monterey v1.0
And of course, if you want to add more features or use another bottomside microprocessor, you can change whatever you need to!  The topside code will be completely open sourced (I just need to find a license that I like and that I can use... it'll most likely be GPL'ed or LGPL'ed, although I would like a freer license), so you can tweak it how you'd like.  And since the topside talks to the bottomside over UDP, it'll be easy to use any bottomside architecture you'd like (Arduino, Propeller, BASIC Stamp, Raspberry Pi, etc).

I will also be simplifying the packet layouts.  There really is no need for the bottomside to echo up packets to the topside, so I'll get rid of that "feature."  I also plan on making the bottomside firmware respond to changes in settings in the topside firmware (i.e. the firmware will automatically detect changes in the motor layout if that change is made in the topside).  

I'll be posting more information, diagrams, flowcharts and screenshots as this unfolds.  I will still wait until June of 2012 to release the source, though (whether completed or not).

Thanks for stopping by!

Chris K

No comments:

Post a Comment