fairlight1337 / libcflie

Crazyflie Nano C++ Client Library
http://fairlight1337.github.io/libcflie.html
48 stars 68 forks source link

Receive Messages #12

Closed fbyland closed 9 years ago

fbyland commented 9 years ago

I'm currently installing NuttX instead of FreeRTOS on the Crazyflie. Therefore, I fully erased the STM32 and flashed NuttX on it. At the moment I'm writing a communication app. I don't want to use the Crazyflie protocoll since I plan to integrate it with some external system (motion capture). Therefore I plan to just send and receive messages (without the logging stuff). I managed to change your library, such that it sends the messages I want. However I didn't find out yet on how to look for messages that are sent by the Crazyflie. Do you have some function for that? Or is this just implemented over the logging system?

Thank you for the great work with this library

fairlight1337 commented 9 years ago

Hey - sorry, missed the email about the issue being opened. Only saw just now that you closed it. I don't quite get your question. The logging system is (as far as I recall) the main communication channel between the client and the Crazyflie.

So even when you want to stream the accelerometer values from the copter, you'll need to use the logging system. I have no experience with NuttX, so that might change matters for you.

Cheers

fbyland commented 9 years ago

Thank you for your answer anyway. I actually reduced your library to the core functions of just transmitting and receiving messages over the air. So the CCrazyRadio::writeData function was effectively all I needed. I found out that the problem was not so much your library but the communication speed in general. If I set the rate to 2M i have a loss rate of approximately 70% using your library. If I set it to 250k i have 0% loss rate. People should probably keep that in mind. In addition, I made it run under windows as well. Just had to download the windows binaries under http://libusb.info/ and follow the readme file in there (libusb.h and libusb-1.0.lib).