• Yeah, it's because:

    • There's no flow control by default (it can be enabled) and some boards can't chew the data fast enough as it is uploaded. Every other Espruino board uses 9600 baud, but ESP32/ESP8266 don't because it's 'faster' - but then the IDE has to deliberately slow everything down to near 9600 baud speeds anyway because in some cases it can't be handled fast enough :(
    • On Chrome, the serial API actually loses data if you send too much data at a time on some platforms - it's totally unrelated to the board, and seems something to do with the serial port interface chips on some of the boards.

    There could be an option for it: You can force the 'slow write' on using the Throttle Send option - I guess that could be a drop-down allowing the option to only throttle various amounts.

    But honestly, it may work fine for you, but running in Chrome, on a different platform or with a different ESP32 with a different interface chip it'll probably break - which is why it's done that way. Having something slightly slower than it could be is worth it in order to have it 'just work' for as many people as possible.

About

Avatar for Gordon @Gordon started