The clues were all there, though - the "about 0.6 sec on the olimexino", the "it works entirely on the systick timer" in the other thread, and the erratic timing very visible around 1 sec, so I took a stab and lowered that. So i nudged it down by a factor of 16. On the reasoning that the next line is measured in units of systicks, and that it's right next to that one, I figured I needed to adjust that one too, so I upped it to keep it the same length of time. Who knows if this reasoning works, or I just got lucky.
Now - why is this not a problem on other boards? What I notice is the ones effected by it are all F103's that aren't the Espruino Board...
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Damn, I'm good!
I changed this in build_platform_config.py:
#define SYSTICK_RANGE 0x1000000 // the Maximum (it is a 24 bit counter) - on Olimexino this is about 0.6 sec
#define SYSTICKS_BEFORE_USB_DISCONNECT 2
to
#define SYSTICK_RANGE 0x0100000
#define SYSTICKS_BEFORE_USB_DISCONNECT 32
The clues were all there, though - the "about 0.6 sec on the olimexino", the "it works entirely on the systick timer" in the other thread, and the erratic timing very visible around 1 sec, so I took a stab and lowered that. So i nudged it down by a factor of 16. On the reasoning that the next line is measured in units of systicks, and that it's right next to that one, I figured I needed to adjust that one too, so I upped it to keep it the same length of time. Who knows if this reasoning works, or I just got lucky.
Now - why is this not a problem on other boards? What I notice is the ones effected by it are all F103's that aren't the Espruino Board...
Same thing for MAPLERET6=1
http://drazzy.com/e/espruino/etc/espruino_1v72_mapleret6_stm32.bin