VCON firmware changelog, see https://vcon.io 2.1.5 @ 2023-11-17 - Added support for Ethernet SPI chips - Increased max CLI input size 512 -> 2048 2.1.5 @ 2023-10-14 - Fixed UART0 IO - Added SWD RAM arch for OTA updates - Added support for 128k-page STM32 flashes (H7) - Added preliminary NXP RT1020 OTA support 2.1.4 @ 2023-09-17 - Fixed BLE reporting - Ability to set DNS and SNTP servers from DHCP, $.device.{dns,sntp} - Automatic config file snapshotting on successful cloud connect - Automatic config file restoring on cloud connect failure for 30 seconds - STM32 reflashing over UART fixed - disabling $.uart.delim during reflash - Added 8k flash page STM32 arch (H5) - Added $.tcp.url - an ability to forward UART data to the TCP server - Added `ls` and `save` CLI commands 2.1.3 @ 2023-07-18 - Enhanced sys.log RPC - SWD API bugfixes - Ethernet event handler fixed 2.1.2 @ 2023-05-24 - Fixed UART data forwarding - Added $.uart.delim and $.uart.crc for reliable message passing - Added Websocket ping/pong for user-defined websocket connection 2.1.1 @ 2023-04-01 - Added $.http.mode and HTTP serving - Added $.wifi.sta.{ip,gw,mask} for static IP configuration 2.1.0 @ 2023-03-03 - Moved $.host.{uart,swd,spi} config settings to $. - Added $.i2c.{sda,clk,freq} for I2C support - Added rpc/i2c.{scan,exec} RPC functions - Fixed EERASE handling in STM32 serial bootloader 2.0.11 @ 2023-02-26 - Fixed GPIO handling for pins > 31 - Added $.host.uart.delim setting, for recognising UART message boundaries - Added $.host.uart.crc setting, for checksumming UART messages 2.0.10 @ 2023-02-22 - More reliable Host/ESP32 UART comms 2.0.9 @ 2023-02-03 - Last Host firmware MD5 amd timestamp is stored in cloud device state - Not performing OTA if MD5 hashes are equal - Displaying Host MD5 hash and timestamp in the dashboard - Changes to $.host.uart settings are applied immediately, no reboot required - Change to $.debug.level is applied immediately, no reboot required - Added $.host.uart.mode with stop bit and parity support 2.0.8 @ 2023-01-22 - STM32 serial reflasher made per-page instead of total erase - $.host.rst and $.host.boot0 initialised after ESP32 boot 2.0.7 @ 2023-01-17 - Make mcu.reset prefer $.host.rst if it is configured - Added support for TI MCUs - Added support STM32 bootloader-based (serial), non-SWD reflash 2.0.6 @ 2022-12-30 - ESP32C3 build - Updated networking, TLS code - Disabling RPC over BLE for provisioned devices - Allowing all RPCs on un-provisioned devices - Added CLI mode for UART-based configuration 2.0.5 @ 2022-08-30 - Auto-disabling BLE and HTTP RPC channels after cloud provisioning - Added JS support, based on https://github.com/cesanta/elk engine - Auto-executing main.js file on boot - if it is present - Fixed MQTT / RPC mode issue - Changed Ethernet settings: added rst and phy, removed pwr and clk - Support Ethenet PHYs, 0: LAN8720, 1: ip101, 2: rtl8201, 3: dp83848, 4: ksz80xx 2.0.4 @ 2022-06-19 - Fixed issue with UART / MQTT bridge - Fixed TLS handshake handling - Fixed SNTP race issue - Fixed backtrace reporting 2.0.3 @ 2021-10-11 - Added cellular modem support 2.0.2 @ 2021-06-25 - Added Mega128A support - Added LAN8720 functionality back - Added $.device.dns tunable for setting DNS manually, e.g. udp://1.2.3.4:53 - Fixed mbedtls disconnection issue 2.0.1 @ 2021-04-18 - Support for Raspberry RP2040 reflashing - Added "swd.write" RPC for bulk writing into target memory - Added "rr,N" and "wr,N,N" swd.exec commands for reading and writing core regs - Fixed $.pins.* logic for pin 0 - Added initial UPDI support and $.host.updi.{pin,dur} parameters 2.0.0 @ 2021-04-02 - Better WiFi reconnection logic - Protection from VCON OTA failures - rollback if can't connect to the cloud - Report current config when connected to the cloud - Ethernet LAN8720 functionality being temporarily removed 1.4.24 @ 2021-03-08 - Added RAM check to the RPC handlers to prevent OOM - Added allocation granularity to RPC allocator to decrease fragmentation 1.4.23 @ 2021-01-27 - Added http.request RPC call, that adds ability to send HTTP requests - Fixes in the factory reset procedure 1.4.22 @ 2021-01-18 - Host MCU reset improved by resetting init.txt to the factory defaults - VCON-D51 init.txt flashes a bootloader - Added websocket bridge, with $.ws config section - Added hexdump options for $.dash, $.mqtt, $.ws sections for connection debug 1.4.21 @ 2020-12-12 - AVR reset logic enhanced - Added $.device.board string var - an arbitrary hardware board description - Added wifi.scan RPC call for scanning available WiFi networks 1.4.20 @ 2020-11-05 - Corrections in SWD reflashing functionality for ATSAM microcontrollers - Send RPC events to the Host MCU only if host.mode == 1 - Fixed "cli mkhex" command to allow arbitrary .bin file order - Added "cli mkfs" command for creating FS SPIFFS images - Allow .bin OTA updates in addition to .hex - Added $.host.addr configuration option for .bin firmware OTA updates, which specifies .bin firmware offset in flash memory - Added Host MCU auto-configuration via the init.txt file 1.4.19 @ 2020-10-09 - Changed max console log buffer size 512->1024 bytes - Added ability to send RPC requests through the VCON UART - UART polling code does not wait if there is no data to read 1.4.18 @ 2020-09-09 - Fixed HTTP configuration in Access Point mode - Added `backtrace` attribute to the `sys.info` response, which shows a crash backtrace for the last firmware crash. Allows to remotely debug crashed devices. Also, that attribute was added to the `state` device object on the cloud: that allows to access the backtrace even if a device is not currently connected