FAQ/common problems

Compilation issues

This happens when there is no .pde or .ino file in the project directory, Serial_begin() is not used and only *.c files are compiled.

This message means that main.c is not pulled in by the linker because there was no reference to main() anywhere. When processing *.pde/ino files wrapper/sdcc.sh (for IDE builds) or Arduino.mk (for Makefile builds) adds a reference to main:

/* add a dummy reference to main() to make sure to pull in main.c from the core library */
void main(void);
void (*dummy_variable) () = main;

If there is no pde/ino file the user has to make sure main.c is pulled in by the linker or define its own main().

Possible ways to pull in main.c:

Flashing fails on the new board

It might be locked/write protected. Check this

Hardware issues

My new stm8blue board seems dead and does not respond to the flash tool

Crap alert: There are known quality issues with some more recent PCB production lots of the stm8blue boards.