Releases: Moddable-OpenSource/moddable
Releases · Moddable-OpenSource/moddable
October 6, 2020
- mcrun uses correct path separator ("/", not "\") when building on Windows for ESP8266 and ESP32 targets (reported by @LongNguyen1984)
- mDNS catches exceptions on UDP write to avoid reboot on unhandled exception when network disconnects
- preferences on ESP32 doesn't orphan open NVS instance if invalid key passed
October 5, 2020
mcrun
launches xsbug for ESP8266, ESP32, and simulator targets- XS JavaScript engine fixes for #454, #461, #462, #463, and #469 (reported by @kvenux). Also #464 (reported by @devsnek)
- BLE header files fix for Windows compilation #472 (reported by @wilberforce)
- Set preference support in serial2xsbug (experimental)
September 30, 2020
- Add NodeMCU build device targets for ESP8266 and ESP32 (
esp/nodemcu
andesp32/nodemcu
) - Add Button and LED classes following the TC53 IO Peripheral Class Pattern
- Use Button and LED in classes in hosts for Moddable One, Moddable Two, Moddable Three, ESP8266 NodeMCU, and ESP32 NodeMCU.
new Host.Button.Default({
onPush(down) {
trace(`Button pushed: ${down}\n`);
},
})
const led = new Host.LED.Default;
led.on();
led.off();
led.write(1);
- Update Commodetto mini-drag example for FT6202 capacitive touch driver compatibility #465 (reported by @basuke)
- mcrun fixes for Windows host
- Piu example to control Moddable Two display backlight (by @lprader)
- XS JavaScript engine fixes for #452 and #453 (reported by @kvenux)
- ESP32 builds that do not use Wi-Fi are smaller (about 200 KB) by using
esp_efuse_mac_get_default
in the debugger communication to report the device ID - Option to set lwip hostname on ESP32 #470 (requested by @ederle)
September 25, 2020
- IMA compressed audio now plays on 8-bit audio outputs
- Piu idle uses interval to reduce frequency of idle events
- GT911 capacitive touch input driver supports any number of touch points
- wasm build fixes for Linux host
- Fix crash on
get("REMOTE_IP")
on UDP sockets. Update documentation on remote IP. #457 (reported by @JanVanBraeckel) - Update WebSocket server document to correctly explain
write
method #445 (reported by @LaurenceMason) - Add replay example to demonstrate use of AudioIn class
- XS JavaScript engine - disallow use of bound function as constructor,
Object.defineProperties
works for all types of functions - Add manifest for SMBus module
- Content for examples that depend on non-secure http connection moved to test.moddable.com domain to avoid https redirect (reported by @basuke)
- Core tween code of Piu Timeline object rewritten in C to increase speed and reduce memory use
This release includes significant enhancements to support for M5 device targets include M5Stack Fire, M5Stack CORE2, M5Atom Lite, M5Atom Echo, and M5Atom Matrix.
- Support for M5Stack CORE2 build target (
esp32/m5stack_core2
) #455 (from @meganetaaan and @jpzukin) - Update targets for
esp32/m5atom-matrix
,esp32/m5atom-echo
, andesp32/m5atom-lite
to be consistent in - M5Atom target fixes - correct colors for NeoPixel lights, correct NeoPixel string length, consistent accelerometer orientation
- Update AudioIn class to work on M5Stack Fire and M5Atom Echo targets.
- M5Atom Echo example stops playing sound before starting next
- Debounce buttons on M5 products to work around hardware noise when Wi-Fi is enabled
September 15, 2020
- GT911 touch driver reuses read buffer to reduce load on garbage collector
- Support 16-bit ARGB4444 pixels in tools
- XS JavaScript engine fixes for #446, #447, #448, #449, and #450 (reported by @kvenux)
- Fix crash if lwip socket closed immediately before Wi-Fi disconnect
- Fix crash in when using lwip listener (reported by @basuke)
- Fix crash invoking callbacks in audio mixer
- Update Moddable One and Moddable Two documentation to describe pin use by I²C touch and SPI display components
September 10, 2020
- Support M5Atom Lite, M5Atom Echo, and M5Atom Matrix (from @wilberforce)
- GT911 touch driver marks unavailable touch points with 0x80
September 8, 2020
- Lower overhead message queues for BLE on QCA4020
- Make start-up sound configurable on M5Stack and M5Stack Fire
- Desktop simulator supports screen "holes"
- Optional
microseconds
static property forTime
#439 (requested by @LaurenceMason) - Fix
modSPIUninit
crash on ESP32 - XS JavaScript engine fixes for #440, #441, and #442 (reported by @kvenux)
- Use Xtreme Quality IMA-ADPCM encoder by David Bryant for higher quality
- IMA ADPCM compressed audio stores temporally first sample in low 4-bits of byte
September 4, 2020
- Fix wifi-config example to run on Moddable One
- Fix TypeScript support on Windows
September 3, 2020
- BLE does not invoke
onDisconnected
when no connection establiished - On M5Stack, use GPIO 33 to distinguish screen type to determine if inversion is needed
- On ESP32, quiet
phy_init
logging to error level to reduce size of instrumented logs - On ESP32, enable multicore by default
- ESP8266 targets default to 40 MHz
dio
for maximum compatibility. Moddable One and Moddable Three targets still run at 80 MHzqio
- Update "Keeping Up To Date" guide for Python 3 on Linux
- XS JavaScript engine fixes overflow detection on
xsBeginHost
(and optimizes code to build stack frame) - XS JavaScript engine fix crash when inspecting host stack frame in xsbug
- XS JavaScript engine fixes for #432 (reported by @kvenux)
- Suspend implemented for lwip and macOS socket
- HTTP client implements suspend method for flow control of incoming data
- Fix file name case mistake in Servo class #436 (from @abparker)
August 31, 2020
- Audio mixer clamps by default (instead of overflow). Other behaviors stubbed in sources
- Audio mixer always decompresses first compressed audio block
- Update reminders in documentation to restart after modifying environment variables
- Update minimum Windows version support to 8.1 (from Windows 7 Pro)
- ILI9341 display driver implements
command
method to send commands directly to controller - Add CPU load monitor to xsbug Instruments pane for ESP32
- Lower overhead message queues for BLE on ESP32 using NimBLE
- Update manifest documentation for ESP32 to explain partitions file handling and how
sdkconfig
fragments are merged