Espruino 1v92 released

Posted on
  • I've just released 1v92 - it's been a while coming, but there are now a huge amount of new features:

    • Added Pin.toggle(), eg. LED1.toggle()
    • Added DataView class
    • Add Neopixel/WS281x/APA10x LED writing with require("neopixel").write - works on pretty much all devices
    • A few fixes for potential crashes
    • Fixed implicit casting to bool/number on ArrayBuffers (#1030)
    • Fix E.FFT output (enable magnitude when one array specified)
    • JSON.parse now throws an exception if an incorrect value type is found (fix #1117)
    • Pipe close event handlers now use 'this' arg - solves auto-closing pipe when piping from HTTP
    • Increase max graphics size from 1023 to 32767
    • Add Fat File System support to ESP32
    • Fix File.read so that end of file triggers pipe.end event
    • Fix precedence of 'void' keyword (#1079)

    • Pico/WiFi: Allow USB HID to work on Windows (from @nailxx)

    • Puck.js: Now use 'high drive' mode for GPIOs - provides much more power output on pins

    • Puck.js: tweak IR duty cycle, with high drive GPIO the Infrared range is now ~3x more

    • Puck.js: Allow Puck.IR to take pins for an external IR LED (#927)

    • Puck.js: Allow arbitrary NFC data to be specified (#1021)

    • Puck.js: Allow multiple advertising packets to be set at once with NRF.setAdvertising

    • Puck.js: Add 'properties' object to BluetoothRemoteGATTCharacteristic

    • Puck.js: Perform BLE write without response if that is what is required

    • Puck.js: Add BluetoothRemoteGATTCharacteristic.startN­otifications (#959)

    • Puck.js: Added BluetoothDevice.gattserverdisconnected event

    • Puck.js: Report back reason codes for BLE disconnect

    • Puck.js: char.readValue now returns DataView to be more Web Bluetooth compliant (#1091)

    • Puck.js: Respond to conn_params update request, fix puck-puck disconnection after ~65 sec (#1089)

    • Puck.js: Change connection params for central mode so NRF.setLowPowerConnection affects connection speed

    • Puck.js: Correct reading if using analogWrite to red LED and then using Puck.light()

    • Puck.js: stop app_timer NRF_ERROR_INVALID_PARAM errors (trying to sleep for too little time)

    • Puck.js: Don't get stuck in 'HID Busy' state if a HID send failed

    • Puck.js: Allow services to be advertised (fix #996)

    • ESP8266: Add Wifi.setAPIP() and Wifi.setIP

    • ESP8266: Add i2c clock stretch (#1097)

    • ESP8266: Add ESP8266.deepSleep(micros, option) (#1102)

    It's available from the usual places - if you have an official Espruino Board you can use the Web IDE's update feature, and with Puck.js you can use a phone: espruino.com/Puck.js#firmware­-updates

  • Does the Puck support Central/Peripheral mode? I have read that there are some problems connecting Android devices because they do not support Central mode. Could the Puck work as a Gatt Server and is further configuration required? That should allow more compatibility.

    A nice update, really interesting functions.

  • Yes, Puckjs will do both. When you connect to Puck.js to program it Puck.js is being a GATT Server.

    It'd be worth checking out the Puck.js Bluetooth LE intro for more information: espruino.com/About+Bluetooth+­LE

    If you have other general questions about Puck.js, please can you ask them in a separate thread though? It'll help to use this one purely for questions about the 1v92 release itself.

  • Thank you.

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

Espruino 1v92 released

Posted by Avatar for Gordon @Gordon

Actions