Replies: 1 comment
-
|
Hi!, The lightouse deck measure and decode IR beams from the basestaions and sends the data over UART. It does not do any more processing like positioning, this is left as an exercise for the system that receives the data. The protocol is documented on the lighthouse-fpga repos: https://github.com/bitcraze/lighthouse-fpga?tab=readme-ov-file#uart-protocol. Please note that the currently pre-compiled firmware only use the uart on the Crazyflie connector side, so it would be easier for you to use this one either by soldering patch cables or by using a breackout-deck to get the data out on pins. The deck starts in bootloader mode and the firmware has to be written in it when the deck comes from factory. The easiest would be to boot a Crazyflie with recent firmware with the deck attached, this will update the deck to the latest firmware, and then you will only need to tell the booloader to boot the firmware, no need to handle bootlaoder on your side. The bootloader is documented there: https://github.com/bitcraze/lighthouse-bootloader/blob/master/docs/bootloader-protocol.md. It is available on both UART on Crazyflie and soldering pad side, as well as on I2C (the firmware is not I2C though ...). As for decoding the data, there are some python examples in the FPGA project, but the best might be to look at the Crazyflie firmware for how the data are used for positioning. This is unforunatly not going to be trivial, we are working at streamlining the use of lighthouse with other robots, but in the meantime I hope this gives you a way to get started. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Hello Bitcraze forum,
I am interested in using the Lighthouse system I have set up in my lab for localization of indoor mobile robots, by repurposing a spare Lighthouse deck. According to the Lighthouse deck specifications, there are UART solder pads available for connecting to a microcontroller, which is amazing. The tricky part is actually reading the data from the deck.
Does the Lighthouse deck output angles / other raw IR data, or does it do its own processing and give x, y, z coordinates (ideal)? At what frequency could it output said coordinates? I was also hoping to get some assistance in writing an actual script (Arduino IDE and/or Python) in order to read the Lighthouse deck data.
Much appreciated!
Beta Was this translation helpful? Give feedback.
All reactions