You are reading a single comment by @Gordon and its replies. Click here to read the full conversation.
  • Finally, I've released Espruino 1v80 - it should be available for firmware updates from the Web IDE.

    There are a few big changes:

    • USB HID support on the Pico (so it can pretend to be a keyboard, mouse, etc).
    • Fast startup - code now starts running a fraction of a second after power-up, rather than after the previous ~1 sec delay.
    • The 'one character behind' problems that occasionally happened with the Pico's console on Windows/ChromeOS seem to be fixed now, as well as the bug where it wouldn't run code if it was plugged into USB without a terminal running.
    • Pico owners now get access to 5000 variables instead of 3000 (so available memory has almost doubled!). Code is compressed before writing it into flash memory, so it can fit in the same amount of Flash.
    • There's also now an API for accessing the Flash memory on the Espruino boards - both for the Pico and the Original, and a nice surprise for Pico owners - there's a whole page of 128kB flash memory available at 0x20060000 which shouldn't exist, but does!

    As always, I've tried to test and make sure everything is working fine, but this is a pretty big change - especially on the Pico - so let me know if you have any problems!

    Full list

    New features:

    • USB HID support for the Espruino Pico
    • Fast startup
    • Added support for USB CK pin (USARTs), and hence PS2 keyboards/mice (fix #544)
    • SPI.send now returns Uint8Array when passed an array. Also takes {data:X, count:Y} as argument (fix #485)
    • VGA output can now do line doubling (so 320x240 mode)
    • Add built-in 'Flash' module to allow Flash memory to be accessed from user code
    • Add RLE compression when saving to flash, increase Pico RAM from 3000 to 5000 vars (fix #543)

    Improvements:

    • Shorten some internal property names to save memory and increase speed
    • Speed up iteration for arraybuffers
    • SPI speed improvements, esp for SPI.write (fix #547)
    • Tweak Olimexino board - 700->1000 vars, but lowered code flash to 6k
    • Disable flash prefetch on Pico (~1% slower, but less power and way more accurate ADC readings) (fix #545)
    • Updated (inaccurate) docs for Serial.write/print and removed duplicated code
    • Improve digitalWrite/etc documentation
    • Add pin.mode and pin.getMode functions (mirroring pinMode)
    • Serial.setup now remembers options if none specified (fix #557)

    Bugfixes:

    • Fix SD card corruption on file append regression (fix #536)
    • Fix some potential pointer issues in hashlib
    • Make debounced setWatch output state+time information (regression fix #537)
    • Change 'internal property' prefix from '>' (fix #540)
    • Duplicate properties in an object defn. now cause second definition to be used (fix #495)
    • Make sure E.unmountSD doesn't forget custom SD card configs from E.connectSDCard
    • ES5 parseInt behaviour - don't treat numbers beginning with 0 as octals (fix #538)
    • Fix parseFloat(Infinity) (fix #314)
    • Fix JSON.parse when not given strings (fix #546)
    • Now throw errors when 'in' is used on an invalid datatype (fix #550)
About

Avatar for Gordon @Gordon started