Zerynth r2.2.0 Patch p01 & p02 are available with support for Infineon XMC 4700 Relax Kit, Nordic nRF52840 DK and Riverdi IoT Display!


#1

New Updates for version r2.2.0 are available!

We’re happy to announce the release of patches p01 & p02 for Zerynth version r2.2.0.
This time, the patch introduces 6 new devices, 3 new libraries, 1 important VM update, and a new toolchain command:

  • support for Infineon XMC 4700 Relax Kit, Ethernet included, more info (1), (2);
  • support for Nordic nRF52840 DK and nRF52 DK with an updated Nordic BLE library, more info (1), (2), (3);
  • support for Riverdi IoT Display, the new Riverdi TFT module powered by ESP32 and Bridgetek BT815 embedded video engine, more info;
  • support for oddWires IO and Proteus, ESP32-powered devices, more info (1), (2);
  • Mozilla WebThing library to develop IoT devices complying with the new Mozilla WebThing API specification, more info;
  • controllable behavior of the VM on Python uncaught exceptions and MCU faults, more info;
  • mass programming command inside the Zerynth Toolchain to register, virtualize, uplink and provision your IoT devices, more info;
  • device configuration zone to store device configuration and credentials in predefined flash memory areas, more info (1), (2);
  • support for CBOR (Concise Binary Object Representation) data model, more info;

To update you just have to:

  1. open Zerynth Studio;
  2. click “Rolling Update”;
  3. click “Update”, restart Zerynth Studio and enjoy!

Remember to create updated virtual machines and virtualize all boards with the new ones.

As usual, please keep us informed about any issue regarding this update.

Happy coding :sunglasses:


#2

Just a FYI when trying to update a VROOM based MCU board which worked in the previous release this is the error log I’m getting:

[info] Starting device registration
[info] Burning bootloader...
[info] Burning bin
[info] esptool.py v2.0
[info] Connecting........__
[info] Chip is ESP32D0WDQ5 (revision (unknown 0xa))
[info] Uploading stub...
[info] Running stub...
[info] Stub running...
[info] Changing baud rate to 1500000
[info] Changed.
[info] Traceback (most recent call last):
[info]   File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 2405, in 
[info]     _main()
[info]   File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 2398, in _main
[info]     main()
[info]   File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 2137, in main
[info]     esp.change_baud(args.baud)
[info]   File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 61, in inner
[info]     return func(*args, **kwargs)
[info]   File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 538, in change_baud
[info]     self._set_port_baudrate(baud)
[info]   File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 185, in _set_port_baudrate
[info]     self._port.baudrate = baud
[info]   File "C:\Users\Iain\zerynth2\sys\python\lib\site-packages\serial\serialutil.py", line 345, in setBaudrate
[info]     if self._isOpen:  self._reconfigurePort()
[info]   File "C:\Users\Iain\zerynth2\sys\python\lib\site-packages\serial\serialwin32.py", line 202, in _reconfigurePort
[info]     raise ValueError("Cannot configure port, some setting was wrong. Original message: %r" % ctypes.WinError())
[info] ValueError: Cannot configure port, some setting was wrong. Original message: OSError(22, 'The parameter is incorrect.', None, 87)
[error] Can't burn bootloader! --> esptool.py v2.0
Connecting........__
Chip is ESP32D0WDQ5 (revision (unknown 0xa))
Uploading stub...
Running stub...
Stub running...
Changing baud rate to 1500000
Changed.
Traceback (most recent call last):
  File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 2405, in 
    _main()
  File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 2398, in _main
    main()
  File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 2137, in main
    esp.change_baud(args.baud)
  File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 61, in inner
    return func(*args, **kwargs)
  File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 538, in change_baud
    self._set_port_baudrate(baud)
  File "C:\Users\Iain\zerynth2\sys\esptool\esp32\esptool.py", line 185, in _set_port_baudrate
    self._port.baudrate = baud
  File "C:\Users\Iain\zerynth2\sys\python\lib\site-packages\serial\serialutil.py", line 345, in setBaudrate
    if self._isOpen:  self._reconfigurePort()
  File "C:\Users\Iain\zerynth2\sys\python\lib\site-packages\serial\serialwin32.py", line 202, in _reconfigurePort
    raise ValueError("Cannot configure port, some setting was wrong. Original message: %r" % ctypes.WinError())
ValueError: Cannot configure port, some setting was wrong. Original message: OSError(22, 'The parameter is incorrect.', None, 87)

It worked fine on the previous release and updating the SparkThing32 I own went ok.

The device in question is the HiLetgo ESP-WROOM-32 ESP32 ESP-32S Development Board

I have it disambiguated as a NodeMCU ESP32S

Any help is appreciated, even if pointing out it’s a problem between keyboard and chair :slight_smile:


#3

Hello @IainColledge,

to make the virtualization process faster, we changed esptool baudrate and it did not cause any problem with the boards we officially support.

Anyway, you could try to open C:\Users\Iain\zerynth2\dist\r2.2.0\devices\nodemcu_esp32\nodemcu_esp32.py and edit "--baud", "1500000" to "--baud","115200".

Let me know


#4

Thanks very much, that worked, might be worth making the BAUD rate a parameter?