New 2.1.1 release!

Discussion about Z-Uno product. Visit http://z-uno.z-wave.me for more details.
Post Reply
User avatar
PoltoS
Posts: 3787
Joined: 26 Jan 2011 19:36

New 2.1.1 release!

Post by PoltoS » 18 Oct 2017 02:22

This build introduces many new features, allows you to use modern Arduino IDE 1.8.5 and prepares Z-Uno for the most secure IoT protocol - Z-Wave Security S2 - that will be release in the next 2.1.2.

You can get it from http://z-uno.z-wave.me/files/z-uno/pack ... index.json repo

What's new:

New features
  • Arduino IDE 1.6.5 and 1.8.5 are now supported. You can now use the latest Arduino IDE with Z-Uno!
  • Added 3-channel firmware for JP and KR frequencies - requires bootloader change from the Arduino IDE
  • Number of Z-Uno channels rised to 32! You can make 32 devices in one single Z-Uno.
  • Added support for up to 32 user parameters via Configuration Command Class. Parameters are numbered in Z-Wave controller as 64-95
    Use ZUNO_SETUP_CFGPARAMETER_HANDLER(handeler_func) to define your custom parameter handler where function is defined as handeler_func(param_number, value). Parameters are automaticly saved in the EEPROM. To load them from the EEPROM or change two new functions are introduced: zunoLoadCFGParam(param_number, * value) and zunoSaveCFGParam(param_number, * value).
  • Z-Uno can wake up on low and high INT1. To configure do zunoSetWUOptions(ZUNO_WUPFLAGS_INT1_HIGH/ZUNO_WUPFLAGS_INT1_LOW)
  • Same function zunoSetWUOptions(ZUNO_WUPFLAGS_INT1_KEYSCAN) is used to wake up from key scanner (any of 8 pins). Function zunoSetupKeyScannerWU(byte cols_num) is deprecated and removed.
  • Stack overflow and system errors are reported to the controller and/or to the UART0. Arduino IDE Tools menu allows to turn it on/off. This should make your debugging easier.
  • Battery measurement is made in user code: you can either define the range in voltage ZUNO_SETUP_BATTERY_LEVELS(low, high) or your personal handler that will report back the value upon request ZUNO_SETUP_BATTERY_HANDLER(handler). Values low/high are in milivolts.
  • Added BATTERY to possible values for analogRead() to read the battery level. The reported value is the position of 1.21 V between 0 and battery voltage. For 1024 precision the battery voltage equals to 1.21 V * 1024 / value.
  • Added function zunoSetBeamCountWU(byte count) to instruct Z-Uno in FLiRS mode to wake up after count second even if there were no packets.
  • In Arduino IDE Tools menu one more item added - clean EEPROM. Can clean user data, system data or all data (like reset to factory default).
  • Added Binary.h to the default header for Arduino style binary numbers definition
Bug fixes
  • Fixed wakeup on Key Scanner (broken in 2.1.0)
  • Fixed FLIRS not reporting without a delay in the loop. Now delay is not needed anymore.
  • Fixed handler calling when devices is sent into sleep by user.
  • memset fixed
  • No need to downgrade to the previous version to upgrade from test build to a stable one
  • Few examples changed to adop the changes above
Internal changes
  • Code compilation optimized to produce 4 (four!) times smaller binary code. This is needed to let us fit the new Security S2 in the code.
  • Rewrote LLCore.c to fit the new design of internal structure. Many features were moved from the internal bootloader to the HLCore.cpp.
  • zunoSysCall(func, ...) introduced instead of inter-code stack to make faster and more compact jumps between bootloader and user sketch.
  • All system calls don't use stack anymore.
  • User memmory in the EEPROM moved to new address. This will break your data in a sketch that is using EEPROM after the update.
  • Fixed problem with prototypes not visible
  • Fixed bug with local arrays not initialized (like in code void func() { byte a[]={1,2,3}; })
  • Fully refactored Print to make the code smaller and use less stack
  • Optimized code for float and printing float numbers to use less stack
  • Added fixPrint() method to print fixed digets of a float
  • Added dumpPrint() to help debug by printing big amounts of data (i.e. arrays/structures/any memory areas)
  • Print() now uses three different prototypes to print byte, word and dword value - saves stack in most cases
  • ZUNO_OLED refactored to use less stack.
Our next ambitious goal is to release and certify an S2 capable Z-Uno!

sega66
Posts: 12
Joined: 30 Jul 2017 19:31

Re: New 2.1.1 release!

Post by sega66 » 20 Oct 2017 12:03

This build allows you to use the Arduino IDE 1.8.4 ?

petergebruers
Posts: 143
Joined: 26 Jul 2015 17:29

Re: New 2.1.1 release!

Post by petergebruers » 20 Oct 2017 12:35

I am not sure. I was running Arduino 1.8.4 during beta tessting but now I am running the release version on Arduino1.8.5. Do you have stuff that does not run on 1.8.5?

Post Reply

Who is online

Users browsing this forum: No registered users and 5 guests