Page 1 of 1

Crazyflie Firmware UART1 Receive Data Problems

Posted: Fri Jun 17, 2016 1:25 am
by jackemoore
Hi,

The latest Github crazyflie-firmware-master commit 2016.06.14 (as well as that of the prior commit 2016.05.28) contains changes that are causing problems when using the uart1Getchar() function in module uart1.c. Using the uart1Putchar() function appears to remain successfully working.

The symptoms when attempting to receive asynchronous serial data communication using UART1 appear to be timing related, but there may be problems associated with the uart1 interrupt service handling links. With all the restructuring of code, it is unclear which segments are primarily responsible. Watchdog timeouts occur causing a crazyflie reset, but the origin of the problem remains unknown. Unfortunately, I'm not familiar with using either the debug build or debug module.

I've done a little tracking of the recent captured firmware:
..crazyflie-firmware 2016.02.12 (release date Feb 17th) works fine
..crazyflie-firmware-master 2016.02.24 (github) works fine
..crazyflie-firmware-master 2016.05.12 (github) works fine
..crazyflie-firmware-master 2016.05.19 (github) works fine
..crazyflie-firmware-master 2016.05.28 (github) has uart1 problems
..crazyflie-firmware-master 2016.06.14 (github) has uart1 problems

Currently, integration of the globaltop or ublox gps receivers into the latest development commits is not possible.

Best regards,
Jack

Re: Crazyflie Firmware UART1 Receive Data Problems

Posted: Fri Jun 17, 2016 2:52 pm
by jackemoore
Hi,

I tested the Github crazyflie-firmware update 2016.06.17 to see if it was compatible with gtgps.c (binary mode) and encountered the same failure symptoms. The updated firmware fixed syslink unhandled overrun interrupt which sounded close to being synonymous with the uart1 problem with gtgps.c.

..crazyflie-firmware-master 2016.06.17 (github) has uart1 problems

Would someone tell me if this is a possible explanation for the uart1 problem?

Best regards,
Jack

Re: Crazyflie Firmware UART1 Receive Data Problems

Posted: Tue Jun 21, 2016 12:21 pm
by tobias
This sounds strange indeed as the uart1 code hasn't been altered. Might be memory problem or stack problem. I will try and debug it tomorrow when I'm back in the office.

Re: Crazyflie Firmware UART1 Receive Data Problems

Posted: Thu Jun 23, 2016 11:20 pm
by jackemoore
Hi,
Turns out there is not a uart1 problem per se, but a possible timing/stack overflow problem identified elsewhere that was overshadowing uart1 activity. Please see additional comments on my findings in the Crazyflie 2 with GPS thread.
Best regards,
Jack