You can get it from https://z-uno.z-wave.me/files/z-uno/tes ... 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
- 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
- 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.