[riot-users] DEVELHELP flag in Makefiles

Carron Joël joel.carron at heig-vd.ch
Wed May 15 08:36:05 CEST 2019

In the docs, we find :

"Additional code parts such as (extensive) debug output and sanity checks using assertions. To activate it set environment variable DEVELHELP=1, or disable explicitly with DEVELHELP=0."

But, everywhere in RIOT source code, the DEVELHELP is checked with "#ifdef DEVELHELP" or "#if defined(DEVELHELP)". So, correct me if I'm wrong, but it shouldn't change anything if the DEVELHELP is set to 0, 1 or anything else ? In this case, the doc is wrong ? We really need to comment it out as suggested in the Makefiles of examples to remove it. But then it causes my app to not restart after simulated power outage.

De : users <users-bounces at riot-os.org> de la part de Carron Joël <joel.carron at heig-vd.ch>
Envoyé : mardi 14 mai 2019 22:42:25
À : users at riot-os.org
Objet : Re: [riot-users] DEVELHELP flag in Makefiles

Thank you for your answer. I've already read the docs but my real question was why do I get this "strange" behaviour ? My app works fine with the flag (flashed on over 50 boards) but without it the app can't start anymore as soon as I unplug the board from power and replug it. With the flag I have no issue.

Where can I look for something bad in my code that can explain this difference ? I looked a bit in the RIOT source code but didn't find anything for the moment that can give me an answer.

Envoyé par BlueMail<http://www.bluemail.me/r?b=14874>
Le 14 mai 2019, à 20:38, Bas Stottelaar <basstottelaar at gmail.com<mailto:basstottelaar at gmail.com>> a écrit:
Hi Joel,

It enables additional debug output and sanity checks. You can find more information at [1].

Kind regards,

[1]  https://riot-os.org/api/group__utils.html

Op 14 mei 2019, om 19:40 heeft Joel Carron < joel.carron at heig-vd.ch<mailto:joel.carron at heig-vd.ch>> het volgende geschreven:

Hi everyone,

Can someone explain me what this flag in Makefile examples do ?

I just finished an app for a custom board. As my Makefile was based on an example, there was still this flag present. As its comment suggests, it's for development so I decided to remove it.

After removing it, my application starts normally right after flashing my board but as soon as I unplug it from power supply and plug it again, the app doesn't start anymore. I flashed the app on a Nucleo-F303RE to get some console output but I just get garbage from pyterm. I decided to keep this flag as it works flawlessly with it and takes only 4kB more in ROM but it could be great if someone knows a little more about it.

What could cause my app on two boards to fail starting without this flag ? In my app, I use some DEBUG() macros, I start two threads, do some UDP packets exchanges with another boards and that's it.

Best regards


users mailing list
users at riot-os.org<mailto:users at riot-os.org>

users mailing list
users at riot-os.org

More information about the users mailing list