Releases: smlng/pycayennelpp
Fixed MicroPython support
This release ships a fix for MicroPython as it does not support usage of __bytes__
when calling bytes()
on a LppFrame or LppData instance. Specifically, you need to use LppFrame.to_bytes()
in MicroPython or for portable code in general.
What's Changed
Full Changelog: v2.3.0...v2.4.0
Add JSON encoder
This release adds LppUtil providing a helper function for proper JSON encoding of PyCayenneLPP data objects, i.e. LppFrame, LppData, and LppType.
Add LppFrame.get_by_name() to filter data types
This release ships a new utility function to filter the data list of an LppFrame by name of the data type. For example you can retrieve a list of all temperature values in a frame by calling frame.get_by_name("temperature")
.
Many more data types
This release ships with many more data types to keep up with popular Cayenne LPP libraries for other languages. It also includes some internal optimizations and code cleanup.
Major optimizations and code refactoring
This release ships many internal changes and fixes, which improve data handling and ease future extensions of PyCayenneLPP. This goes along with several changes to the API, though the actual user (or developer) facing interface got only minor tweaks. Also by removing the base64 dependency and logging output PyCayenneLPP avoids special handling and is now natively supported by MicroPython.
More data types and code improvements
This release again ships with more data types, namely support for generic 4 bytes values and unix timestamps. Further this release brings several improvements to the source code specifically addressing code deduplication.
New data types
This release adds two new data types namely Voltage and Load (weight).
Some minor fixes and improvements to documentation are includes as well.
Shipping MicroPython support
This release brings official MicroPython support.
PyCayenneLpp is now available via pip
for standard Python 3 and upip
for MicroPython, package name is pycayennelpp
and micropython-pycayennelpp
respectively.
First stable PyCayenneLPP release
v1.0.0 chore: prepare release v1.0.0
PyCayenneLPP v0.4-beta
First beta release of the Cayenne Low Power Payload Decode and Encoder for Python.