Lighthouse deck
https://wiki.bitcraze.io/projects:crazyflie2:expansionboards:lighthouse
we have 3 x https://www.bitcraze.io/products/lighthouse-positioning-deck/
UART
The deck has two UARTs connected too P1 and P3. Only use P1
https://www.bitcraze.io/documentation/hardware/lighthouse_deck/lighthouse_deck-revd.pdf
NOTE that bitcraze is saying that you should use the 2.54mm header (i.e P3) but that will not work.
ย
Protocol
Example code which has been modified from this repo:
lighthouse-fpga/tools/print_frame.py at V6 ยท bitcraze/lighthouse-fpga
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.
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:
The data is described here:
GitHub - bitcraze/lighthouse-fpga at V6
Configure a car with the lighthouse deck
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.
ย
ย
Flashing the Lighthouse deck
Make sure to use the latest FW (of this writing is version 6) . 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โ
More detailed instructions on sub-page: Crazyflie Deck Flashing