orb_contribute

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
orb_contribute [2016/05/20 17:28]
sam [Before starting work]
orb_contribute [2016/05/22 12:09] (current)
sam
Line 1: Line 1:
-====== How To Contribute To Octanis Rover/Balloon ====== +[[orb:contribute|this page has moved to orb:contribute]]
- +
-**How can I help?**  +
- +
-Thanks for asking! Let's find a place for you! +
- +
-Please read the following important pages that summarise technical requirements, systems and procedures within and around the Octanis Rover / Balloon project. Once you have a good overview, you can start working on one of the subsystems that we have categorised by "profession" on this page. +
- +
-==== Before starting work ==== +
-  * Join our Slack communication tool by asking info@octanis.org  +
-  * Read [[octanis1#mission_overview High level project objectives (see bottom of page)]] +
-  * Read [[orbmom | Rover / Balloon Operations Manual]] +
-  * Read [[http://slides.com/bitmorse/octanis-1-rover-systems-graph | Schema of Rover Systems and Interfaces]] +
-  * Read [[orb_requirements | Technical requirements for Mechanical & Electrical Systems and Flight Software]] +
- +
- +
----- +
- +
- +
-++++ If you're a Linux sysadmin | +
- +
-  * We use Debian like distributions on our devices. Debian Jessie on the SBC. +
-  * Work on our SBC (Olimex A20 board) to minimise power consumption +
-  * Configure monit on the SBC to monitor for connected peripherals and running processes +
-  * Improve ROS configuration +
-  * Write scripts to simplify repetetive tasks on SBC +
-  * Test LIDAR with SBC in different conditions and measure performance +
-  * General performance and power measurements of SBC +
-  * Work on the ground basestation (RPI with peripherals and ethernet for operator) +
-  * Create a URDF rover model for representation in moveit / ROS +
- +
-++++ +
- +
----- +
- +
- +
-++++ If you're a C++ or Python developer | +
- +
-  * Coding rules[[http://spinroot.com/gerard/pdf/P10.pdf | Ten rules for safety critical coding (NASA)]] +
-  * Learn about [[http://wiki.ros.org/APIs|ROS API]] +
-  * Contribute to development of a ROS node that processes LIDAR scans +
-  * Most work for C or Python developers is related to writing services or nodes for ROS. Get to know ROS here: +
-    * [[http://wiki.ros.org/ROS/Introduction|What is ROS]]  +
-    * [[http://wiki.ros.org/ROS/Tutorials|ROS Tutorials (C++, hello world)]]  +
-    * [[http://wiki.ros.org/rospy_tutorials|ROS Tutorials (Python)]] +
-    * [[http://wiki.ros.org/catkin/Tutorials|Writing your own ROS package]] +
- +
-++++ +
- +
- +
- +
- +
----- +
- +
- +
-++++ If you're an Electronics/Electrical Engineer | +
-  * Debug I2C bus issues +
-  * Work on improving cable management +
-++++ +
- +
- +
----- +
- +
-++++ If you're an Mechanical/Materials Engineer | +
-  * Review parts +
-  * Create FEM analysis of [[http://github.com/octanis1/Octanis1-CAD|parts]] and suggest improvements +
-  * Print parts on our 3d printer and improve according to real printed part performance +
-  * Work on rovers enclosure +
-  * Work on rovers frame +
-  * Analyse play issues +
-  * Select and test filament for all parts +
-  * Design and test different sets of wheels +
-++++ +
----- +
- +
- +
-++++ If you're a JavaScript developer | +
-  * Work on improving basestation webservice which receives data from satellite modem and LoRa +
-++++ +
- +
----- +
- +
- +
-++++ If you're a C developer (embedded) | +
-  * Coding rules (easy read): [[http://spinroot.com/gerard/pdf/P10.pdf | Ten rules for safety critical coding (NASA)]] +
-  * Read [[orb_requirements|firmware requirements]] +
-  * Work with TI-RTOS and CCS Studio to extend feature set of Rover's firmware [[http://www.ti.com/general/docs/lit/getliterature.tsp?baseLiteratureNumber=spruhu4&fileType=pdf|Installing CCS and TI-RTOS (page 11)]] +
-  * Write drivers for Rover's devices (e.g. Satellite modem) +
-  * Write tests +
-  * Work on data logging module +
-  * Analyse task scheduling, stack sizing and be on the lookout for potential priority inversions and deadlocks +
-  * Write documentation (doxygen) +
-  * Implement MAVLink protocol handling +
-  * Improve shell module +
-  * Improve build process +
- +
-++++ +
----- +
  • orb_contribute.txt
  • Last modified: 5 years ago
  • by sam