1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-11-29 07:24:13 +01:00
LibrePilot/flight
stac 98822bff98 i2c: force bus free on warm starts
Since the i2c bus is bidirectional, there are certain
states (eg. part way through a read) where the slave
device is in control of driving the SDA line.

On a cold start (power on), the slave devices are all
quiescent and will not drive the bus.  However, on a warm
start (eg. watchdog or jtag restart), it is possible that as
the CPU boots, the slave device may be holding the SDA line
low.  This is a bus busy condition and will prevent the I2C
bus master in the CPU from being able to seize the bus during
init.

The fix for this is to clock the i2c bus sufficiently to ensure
that the the slave device finishes its transaction and releases
the bus.

Once the slave has released the bus, the bus master can properly
initialize and assert a STOP condition on the bus.

git-svn-id: svn://svn.openpilot.org/OpenPilot/trunk@1349 ebee16cc-31ac-478f-84a7-5cbb03baadba
2010-08-21 16:19:02 +00:00
..
AHRS OP-119 AHRS: Added error counters for the messages as well as changed an error on AHRS echo back for the HomeLocation message. 2010-08-20 22:52:13 +00:00
Bootloaders Flight firmware-Start of the new bootloader 2010-08-08 00:14:22 +00:00
Doc FlightArchitecture: Updated description of Stabilization module (air/ground speed handled by guidance module) 2010-08-14 14:19:33 +00:00
Libraries OP-119 AHRS: Converted the big data structures for the WMM calculation to be allocated on the stack, which forced a dependency on FreeRTOS :-( but keeps things on the heap. Also changed the HomeLocation object to include a Set field. When this is false, OP will try and update it whenever it gets a 3D fix. If it is saved to disk with this field as true, then it won't need to get a lock to send the magnetic flux vector to the AHRS. 2010-08-21 08:35:44 +00:00
OpenPilot OP-124 Flight: Added fields to the AHRSStatus to track failures of each of the SPI message types. 2010-08-21 09:21:39 +00:00
PiOS i2c: force bus free on warm starts 2010-08-21 16:19:02 +00:00
PiOS.posix Linux compiler error fix 2010-07-14 15:45:36 +00:00
PiOS.win32 PiOS/Win32: Most stable version of port.c so far. Changed Makefile.win32 to use mingw32-gcc to avoid conflicts. 2010-08-12 14:32:52 +00:00
PipBee Removed I2C support from PipBee as it's not used. Added 4 LED definitions. 2010-08-04 17:35:48 +00:00
Project OP-119 AHRS: Converted the big data structures for the WMM calculation to be allocated on the stack, which forced a dependency on FreeRTOS :-( but keeps things on the heap. Also changed the HomeLocation object to include a Set field. When this is false, OP will try and update it whenever it gets a 3D fix. If it is saved to disk with this field as true, then it won't need to get a lock to send the magnetic flux vector to the AHRS. 2010-08-21 08:35:44 +00:00
README.txt Says all it needs to say for now. 2009-12-22 05:07:27 +00:00

Check the wiki