Contributing

So, you want to start contributing to OpenROV? OpenROV is an open-source/open-hardware project, so everyone can download the code, the schematics for the electronics and the plans of the body, bring improvements or bug fixes, and push them back to the main project.

Roadmap
V2.5 Software
 * Get OpenROV software working on Beagle Bone Black (Brian Adams - brian at openrov.com )
 * Get an BB Black Ubuntu image (Dominik Fretz - dominik at openrov.com)
 * SPI programming of Arduino (existing UART method still unreliable) (Brian Adams - brian at openrov.com])
 * Arduino Refactoring

V2.5 Hardware
 * Depth and Heading sensor board (Colin Ho colin at openrov.com)
 * Internal Structure Update (clean up space) (Eric Stackpole - Eric at openrov.com)
 * Control Board update (use Atmega2560) (Walt Holm - walthom at aol.com)
 * Battery tubes update (with o-ring based seal)
 * Find more robust outer shell material (Polypropylene?)
 * humidity/leak sensor inside Electronics Tube
 * System Temp Sensor

future V2.+
 * Unittesting/Automated test harness for the software
 * Improved layering in the software (separation of concerns)
 * UI cockpit instrument visualizations (depth gauge, sensor readouts, etc.)
 * Gasless Optics for liquid pressure compensated cameras
 * Brushless Speed Controllers optimized for low-rpm control

How to Contribute
This is a series of guides on how to successfully contribute to the development of OpenROV:


 * Download the software needed to modify designs and code
 * Download the Source Code
 * First get familiar with the system architecture and with the code of the controlling software.
 * Then get used to how Git & Github work.
 * Read the guide on how to Contribute Code.
 * Check out the software list of bugs and enhancements just waiting for your participation. There are similar lists for hardware, electronics and image.
 * And finally when you think you are ready to submit you first patch, sign the CLA (Contributor License Agreement) and send your first pull request.
 * We also have a page dedicated to sections of the project that are Under Development for future revisions of OpenROV
 * We have a Prototyping Network of OpenROV community members with machine tools to help build and test new designs and ideas