1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-03 11:24:10 +01:00
LibrePilot/flight/OpenPilot/UAVObjects
peabody124 4b4a66c2d7 PiOS/I2C: Lots of small changes. Added a few weird bus events that are
sometimes thrown, and made errors not lock it up by default.  It works for me,
but since this has historically been associated with lots of lock ups please
check your systems carefully.

PiOS/I2C: Make the bus by default try to recover from errors instead of locking
up

PiOS/I2C: After a bus error and clocking all previous data create a STOP
condition to make sure bus is released (note, this also requires creating a
START condition first)

PiOS/I2C: If the same event hits the I2C bus twice in a row then disregard
second one, there is no situation where we should get the same event multiple
times that matters and this gets us out really quickly to catch the real
events.  I was seeing this with repeated 0x70084 which means byte transmitted.
This is related to STM32 bugs in the IRQ timings I believe.

PiOS/I2C: 1) Mask out some bits we don't care about in the event flags
2) Don't lock up if the give semaphore fails, although why it does is strange
3) Recover from bus failure through the "auto" state path instead of just
coding state

PiOS/I2C: Change the reset bus code to follow
http://www.analog.com/static/imported-files/application_notes/54305147357414AN686_0.pdf
(thanks for the reference Neontangerine).  Although this may actually NOT clear
the bus the first time through, subsequent bus errors should eventually clock
it out.  The up side is it is less likely to clock a bunch of 1s into an ESC
and make it run up.

PiOS/I2C: Some cleaned up code for getting a snippet of the history when
something strange happens

PiOS/I2C: Export logging information from I2C through a UAV object

PiOS/I2C: Improve the diagnostic information

PiOS/I2C: Need to handle the event 0x30084.  This seems to happen between a
byte transmitted and new byte started

PiOS/I2C: Handle the NACK condition by simply going to the stopping state.

PiOS/I2C: Add a new NACK state to handle sending the STOP signal after a NACK
following the STM documentation.  Other error conditions still are not dealt
with.

PiOS/I2C: Should handle the NACK condition from all the write cases.  Need to
think about read cases

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@2239 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-12-17 07:01:58 +00:00
..
inc PiOS/I2C: Lots of small changes. Added a few weird bus events that are 2010-12-17 07:01:58 +00:00
actuatorcommand.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
actuatordesired.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
actuatorsettings.c Update ActuatorSettings to remove obsolete fields. 2010-11-26 20:55:05 +00:00
ahrscalibration.c AHRS: Add a separate parameter for velocity and position variance and remove 2010-11-26 15:57:08 +00:00
ahrssettings.c AHRS: Add a configuration to export the sensor data either with or without INS 2010-12-04 17:34:25 +00:00
ahrsstatus.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
attitudeactual.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
attitudedesired.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
attituderaw.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
baroaltitude.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
eventdispatcher.c Flight/Telemetry Avoid bunching of periodic updates by spreading them. 2010-06-11 02:24:26 +00:00
firmwareiapobj.c OP-185 Flight - support files for Firmware IAP object 2010-10-06 02:06:13 +00:00
flightbatterystate.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
flighttelemetrystats.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
gcstelemetrystats.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
gpsposition.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
gpssatellites.c nmea: parse GSV sentences and populate GPSSatellites object 2010-08-29 01:46:14 +00:00
gpstime.c Adding gpstime.h for flight. 2010-08-28 00:58:04 +00:00
guidancesettings.c OP-163 Flight/Guidance: Add variations on position hold to try out. Only one will end 2010-11-12 16:57:13 +00:00
homelocation.c AHRS: Made an object setting to allow the downsampling rate to be changed on the 2010-10-02 03:10:01 +00:00
i2cstats.c PiOS/I2C: Lots of small changes. Added a few weird bus events that are 2010-12-17 07:01:58 +00:00
manualcontrolcommand.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
manualcontrolsettings.c OP-192 Flight/ManualControl: Add an ArmedTimeout field to the 2010-12-04 17:34:16 +00:00
mixersettings.c Modified all channel naming internally to use Channel 1 to Channel 8, instead of the previous convention of Channel0 to Channel7. 2010-12-13 23:54:30 +00:00
mixerstatus.c Adding mixerstatus/mixersetting uavobject files that were missed 2010-09-21 07:08:51 +00:00
objectpersistence.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
pipxtrememodemsettings.c Updated UAVObjects 2010-12-12 18:26:51 +00:00
pipxtrememodemstatus.c Updated UAVObjects 2010-12-12 18:26:51 +00:00
positionactual.c Flight/Guidance: Initial template for guidance module 2010-09-26 03:06:27 +00:00
positiondesired.c Flight/Guidance: Initial template for guidance module 2010-09-26 03:06:27 +00:00
ratedesired.c Flight/RateDesired: UAVObject for monitoring the desired rate out of 2010-10-24 20:00:02 +00:00
stabilizationsettings.c Flight: Swap to Les' code for main line 2010-10-08 15:38:23 +00:00
systemalarms.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
systemsettings.c uavobjectparser: fix alignment of field init in generated code 2010-08-29 01:46:09 +00:00
systemstats.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
telemetrysettings.c Added more telemetry baudrate options 2010-12-06 08:31:24 +00:00
uavobjectmanager.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
uavobjectsinit.c PiOS/I2C: Lots of small changes. Added a few weird bus events that are 2010-12-17 07:01:58 +00:00
uavobjectsinittemplate.c Updates on UAVObjects required by the object generator 2010-03-27 03:19:56 +00:00
uavobjecttemplate.c OP-128 Flight Documentation: Added description to all the UAVObject (now mandatory) and changed the parser to populate this information into the autogenerated files. Also added a function to test if an object is read only for flight. 2010-08-27 00:15:42 +00:00
velocityactual.c Flight/Guidance: Initial template for guidance module 2010-09-26 03:06:27 +00:00
velocitydesired.c Flight/Guidance: Initial template for guidance module 2010-09-26 03:06:27 +00:00