As discussed, here's my draft proposal. It's a bit like a table of contents that shows the
topics and order in which things are discussed.
The objective now is to discuss this TOC on the mailing list and comment where necessary,
or set up a new hidden page on the wiki with this TOC, modified to insight and once considered
ready, populated with the actual content under each header.
- Paparazzi is a complete system for control / monitoring of UAS. It is composed
of an airframe and a GCS.
* What is the target group? Is it COTS? Who'll probably be able to use it and who should
look for other solutions? What are comparable/competing projects?
* What is an autopilot and what are its features? How different from manual control?
How can paparazzi be used in incremental complexity (stabilized mode, with GCS, autonomous mode, etc.)
* What is a ground station and what are its features?
= refer to 3-5 configuration examples of the use of paparazzi autopilots.
= refer to some prizes that were won with paparazzi.
- Ground Control Station in more detail
* Computer choice and OS.
* GCS software and where it's located. Different branches?
* GCS part of the telemetry link
* Explain basic GCS concept. What is an A/C. What is a "session"?
* Explanation the function of most common PC processes.
- Playing around with the GCS
* Explain that the GCS can run simulations without hardware. Invite users to play around with it now.
* Explain the simplest method of getting a simulated aircraft in the air with some screenshots.
* Provide an example how different configurations of airframes affect the monitoring/control
- Aircraft explanation
* Airframe choice.
* The autopilot with attached sensors.
* Explain how software will be configured for the airframe through XML.
- Electronics in more detail
* Soldering equipment requirements
* Choice of acquiring ready-made boards or create your own. Branch off there.
= Include warning about mix of 3.3v/5v levels on board and options to deal with those.
* Explain how sensors affect the capabilities of the autopilot.
= List most common extra sensors, depending on application (matrix?)
= Specify where to go for custom sensor integrations
* List some distributors+types for the relatively specific Picoblade housings+wires in
different continents and how it's probably good to get a good couple of those?
(at least on lisa/m2).
* Debugging hardware options
* Bus pirate / oscilloscope / other tools are very handy to mention here too.
* Communications (as is)
Getting started for real....
explain *why* things are done.
The two can be merged into one with more things added as to why things are done prior to
getting the user to do it.
* Explain the directory tree of paparazzi (in a table).
* Specify what's going to be done next and what the expected end result will be.
* Explain how the airframe XML impacts the inclusion/exclusion/configuration of code
and provide a template to work from.
= module loading (inclusion of optional parts)
* Explain the impact of the flightplan xml for the AP.
* Explain what "settings" XML files are and how these impact the AP.
* Explain the radio file and subsequent code generation. Include how the radio should be set up
(neutrals? pre-trimmed?) prior to configuration the endpoints.
* Explain compile code and load cycle...
* Identifying a successful firmware upload, execution of code onboard.
* Troubleshooting compilation failures. Link to JTAG debugging.
* What to do if all else fails?
= How to use google to search mailing list and wiki.
= Explain wiki layout.
= Other resources that may be helpful.
* Refer to HITL setup and debugging ( requires working data modem ).
Once it is all working on the bench....
* next steps: crash prevention and double checking.
* Choosing a suitable testing site.
* Refer to tuning guide: ( tuning requires some updates, still mentions IR sensors for example).
* Checklist for use in the field, verifying proper function prior to launch.
* What to do in case of malfunction / how to panic.
* Using buspirate/oscilloscope with paparazzi to analyze i2c/spi.
* How to integrate a new module into a build.
= What are modules (optional stuff, mostly sensors, actuators, etc..)
= Choose existing one or develop your own+XML
= How to find/verify options for modules in source code or XML.
* How to make your own "targets" (use existing hardware to configure GPS, etc.)
* How to develop tests.
* How to add new navigation routines.
* How to modify the UI of the GCS.
* How to add a new GCS process to the framework.
* Starting points for integrating other systems on the communication bus.
* ... what else do new users eventually do with paparazzi? ... (think of questions on mailing list).
Other doc work
* Update existing documentation of hardware/software.
* The values that can be set in certain modules or configurations (AHRS) etc. need to
explain a bit more the impact of that choice, instead of simply stating the name
of the algorithm implemented. In case readers are not familiar with the theory,
recommend a general setting that should service them ok. (disclaimer?)