Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

...

https://wiki.bitcraze.io/projects:crazyflie2:expansionboards:lighthouse

UART

The deck has two UARTs connected too P1 and P3. Only use P1

Image Modified

https://www.bitcraze.io/documentation/hardware/lighthouse_deck/lighthouse_deck-revd.pdf

Warning

NOTE that bitcraze is saying that you should use the 2.54mm header (i.e P3) but that will not work.

Image Modified

Protocol

Example code which has been modified from this repo:
https://github.com/bitcraze/lighthouse-fpga/blob/V6/tools/print_frame.py

View file
namemarcus_print_frame.py

At power up the deck is in boot and communicates at 115200.

[ 0x00 , 0x00 ]: UART Break condition used to just sync the device

[ 0xBC , 0x02 ]: enabled UART a.k.a protocol_reset() and get bootloader version a.k.a get_version()

[ 0x00 ]: Boot a.k.a boot() a.k.a load application code

After the device is in application the communication changes to 230400... when the unit is in application the RED LED will turn OFF.

Image Modified

First the deck will send 12 x 0xFF which is used for sync and if a HTC transmitter is present it will start too send data:

Image Modified

The data is described here:

https://github.com/bitcraze/lighthouse-fpga/tree/V6

Note

Make sure to use the latest FW . You can flash the deck using a crazyfly like this:
https://www.bitcraze.io/documentation/repository/crazyflie-clients-python/master/userguides/userguide_client/ → “Deck firmware“

Test setup

We are using an adapter board between the lighthouse module and the RC car. The ribbon cable is simply connected to the cars flash socket.

Image Added
Image Added