Releases: dakhnod/BLEnky
Fixed random watchdog resets
This release fixes a bug where the watchdog resettet the chip under certain conditions.
To be more precise, I thought that power_manage() terminates on every event, and thus fed the watchdog only after power_manage() in main.c.
Turns out that simple radio events wake up the chip, angering the watchdog. Yet, power_manage() doesn't return for those, so the watchdog is not fed.
Now the watchdog is also fed on radio events.
Fixed default outputs
This release fixes how default GPIO output values are written, or rather not written.
Is an output default is set to 0, the output used to stay in high impedance mode, which was enough to trigger mosfets...
Extended default device name
The default device name now includes part of the MAC address, e.g "BLEnky" -> "BLEnky E4:4B:4F"
Increased watchdog timeout
This release attempts to fix random watchdog reboots by increasing the watchdog timeout from 200ms to 10s.
Added die temperature measurement
Added service to retrieve the current die temperature.
Keep in mind that this measurement may not accurately reflect the environment temperature.
Compile-time configuration
This release adds a lot of features and customizations that can be changed on compile time.
Other than that, the communication protocol is changed slightly.
Input and output AIO characteristics not have different UUIDs by default.
Fixed bug with unequal amount of inputs and outputs
This release fixes a bug where the input states would no be correctly reported if the amount of output pins is not equal to the amount of input pins.
Switched bit MSB encoding to LSB
This release switches Pin data from MSG encoding to LSB encoding.
So, let's say you have one single pin at HIGH, the data is now 0b11111101
instead of 0b01111111
.
Removed some complicated memory allocation logic
- removed mem_manager dependency
- introduced checksum checking into flash
fixed write_analog instruction
This release makes the write_analog instruction have an effect again.