All Versions
22
Latest Version
Avg Release Cycle
44 days
Latest Release
1316 days ago
Changelog History
Page 2
Changelog History
Page 2
-
v0.7.2 Changes
April 27, 2020- π Fix
I2CBus.power_on
. Thanks, @tonke!
- π Fix
-
v0.7.1 Changes
April 26, 2020- π Improve packaging
- π Improve compatibility between Genuine MicroPython and Pycom MicroPython
-
v0.7.0 Changes
April 22, 2020Unnamed
- π Fix sandbox installation issue by nailing pycopy-cpython-upip to 1.2.6
- π Improve sanity checks for sandbox setup
- π Improve RGB-LED signalling
- Import microWebSrv only when enabling HTTP service to save memory
- π Make WiFi work in non-threaded environments again
- π Improve MiniNet WiFi connectivity
- π Improve logging timestamping
- π Improve sandbox tooling robustness
- β¬οΈ Upgrade to pycopy-cpython-upip==1.3.3 again. Thanks, Paul!
- β Add basic recycle task for uploading the code to the Pyboard D
- Start LoRa on demand to reduce memory consumption
- Defer loading modules for sensors at runtime to save memory
- Load the ADC module for "SystemBatteryLevel" at runtime
- π Fix missing ADC module import
- π¨ Process DS18B20 addresses case insensitive
- Port to ESP32 WROVER with MicroPython 1.11. Thanks, Markus!
- π Fix network status flag
- π Improve cross-compilation tooling re. Pycom vs. pyboard-D
- π° Display HTTP egress payload in log output on INFO level
- β Add option to use external WiFi antenna
- Pyboard D-series: Improve sandbox tooling
- Pyboard D-series: Make the source tree compatible with Genuine MicroPython
- Adjust slightly for running on Pycom devices again
- WiFi adjustments for Pyboard-D
- Appropriately compute sleep time, resolve #4
- π Make
make setup
more platform-agnostic, resolve #20 - β Add external antenna option for vanilla MicroPython
- π Use trimmed-down settings.py for PYBD
- β Add configuration settings overlay per
settings-user.json
- π Improve robustness with minimal configuration for PYBD
- π Improve instructions for Pycom firmware bundling and installation
- Adjust sandbox infrastructure for Pycom MicroPython 1.11
- π Fix import path of
onewire
module - π Fix weird error when freezing modules
- β Add LoPy4 support in Bootloader. Thanks, @poesel.
- β Add auto docstrings with pyment. Thanks, @poesel.
- π¨ Large refactoring.
- Get rid of the "hiveeyes" module namespace.
- Rework the "sensors.system" configuration section.
- π Improve configuration module.
- Reduce convolution of "purge_sensible_settings"
- Be more graceful when attempting to read json settings
- β Add missing
import socket
to LoRa module. Thanks, @thiasB! - π Improve multi-platform support
- Refactor platform switch and rename first stage bootloader
to Universal MicroPython Application Loader (umal) - Improve gracefulness for MachineResetCause helper
- Refactor platform switch and rename first stage bootloader
- π Improve WiFi robustness on first connection attempt
- Gracefully handle buses without names. Thanks, @thiasB!
- π» Be graceful if OSError exception object received from
MQTT publishing has no "errno" attribute. - π Improve sensor registration mechanics again
- π Improve utility functions to work around the 128-bit UUID byte swap problem.
Thanks, @poesel! - 0οΈβ£ Disable web server by default.
- π Make use of LoRaWAN state restoration from NVRAM. Thanks, @thiasB!
- βͺ Only restore LoRa state from NVRAM on wake from deep sleep. Thanks, @thiasB!
- π¨ Refactor BLE encoding/decoding utility functions
- π Improve connection to WiFi after starting again
- π Use
lte.deinit(reset=True)
for shutting down LTE modem on startup,
π see https://forum.pycom.io/topic/3083/lte-deinit-not-working/2. Thanks, @combaindeft! - Speed up shutting down LTE modem on startup by not invoking "detach"
as we haven't actually been attached at all, likelte.deinit(detach=False, reset=True)
.
Thanks @arapostol for https://github.com/pycom/pycom-micropython-sigfox/pull/255/files
which made us look at the source code in detail. - π Improve robustness of WiFi manager re. "connectivity after reset" again
- π Improve inline documentation
- π Improve platform switch for system sensors
- Acquire
onewire.py
drivers for both Vanilla MicroPython and Pycom MicroPython
asonewire_native.py
vs.onewire_python.py
. - π Fix 1-Wire multi-platform support again. Thanks, @poesel!
- Port codebase to Genuine MicroPython on ESP32. Thanks, @poesel!
- Adjust naming for sensor driver adapters
- Obtain improved lowlevel MicroPython driver for the MAX17043. Thanks, @poesel!
- β¬οΈ Upgrade to MicroWebSrv2. Thanks, Jean-Christophe (@jczic)!
- π Fix multi-platform support for SystemTemperatureSensor
- π Improve WiFi connectivity after hard reset again
- Catch KeyboardInterrupt in order to properly shut down the HTTP server. Thanks, @jczic!
- Just start HTTP server once without trying again
- β¬οΈ Upgrade to MicroWebSrv2 2.0.2
- Catch
KeyboardInterrupt
exceptions in WiFi keepalive thread and
UdpServer
in order to shut down using a singleCTRL-C
- β¬οΈ Upgrade to MicroWebSrv2 2.0.3. Thanks, @jczic!
- π Improve thread shutdown behavior when receiving
SIGINT
/CTRL-C
- π Improve sensor reading from 1-Wire DS18X20 devices
- π Support native 1-Wire/DS18X20 MicroPython driver
- π Improve 1-Wire/DS18X20 support after the pure-Python variant has
aligned its API to the one of Genuine MicroPython. Thanks, @robert-hh! - β Remove
fastboot
setting as the LTE modem can already be shutdown
more quickly by usingdeattach=False
- π Improve timekeeping
- β‘οΈ Update 1-Wire/DS18X20 driver again.
π The DS18B20 driver now also supports parasite power mode. Thanks, @robert-hh! - π Improve bootstrap messages
- β Add boolean flags for enabling/disabling Wifi and LoRa. Thanks @thiasB!
- Skip reading WiFi sensors when WiFi is disabled. Thanks @thiasB!
- β‘οΈ Optimize reading the HX711. Don't ever use
read_average()
. Instead, just
read()
the sensor ten times for computing the median. - Port LTE attach procedure from "Autonome Zelle". Thanks, @wtf!
- π Fix installation of "MicroWebSrv2" dependency. Thanks, Chris!
- Shut down peripherals regardless of using deep sleep or not
- π§ Battery voltage sensor: Make ADC attenuation configurable. Thanks, @thiasB!
- Power on I2C peripheral after power off. Thanks, @ckrohne!
- π§ Enable WiFi by default if not explicitly disabled within configuration
- π Improve "make install-ng": Now also works over USB/UART
- LoRaWAN/TTN integration for real. Thanks, @thiasB!
- Introduce
DataFrame
object to improve internal data transfer. - Backward compatibility for sensor type "system.battery-voltage".
- π Improve cross-compilation for MicroPython 1.12, see #61. Thanks, @poesel!
- π Fix Makefile target "install-pycom-firmware".
- β Add GPRS modem support for SIM800. Thanks, @sarusso!
- Sandbox: Separate desktop notifications from tools/terkin.py.
π Fix nasty dependency bug on the "netaddr" module.
β Add gracefulness to "make notify" target. - π Adjust directory layout: Move "terkin" files to "lib" folder
- π Adjust directory layout: Move root files to "src/" folder
- π Support firmware image building for Genuine MicroPython
- Sandbox presets: "config.mk" is now "presets.mk"
- β¬οΈ Upgrade to rshell 0.0.26
- π Adjust directory layout: Move "lib/" folder inside "src/" folder
- β Add missing "_boot.py" to custom MicroPython firmware images. Thanks, @poesel!
- Clean up rshell upload scripts for bytecode uploading
- π Fix module search path computation in bootloader
- Stop messing with terminal on UART0 for now
- β Add firmware builder machinery
- β Add lowlevel driver for DS3231 RTC
- β¬οΈ Upgrade to rshell 0.0.27
- β Add basic test suite
- β Adjust machinery to run under pytest
- β Add tests for WiFi
- β Add MQTT telemetry test. Needs running MQTT broker.
- β Add
pytest-docker-fixtures
to invoke the MQTT telemetry tests
π³ against a Mosquitto broker running on Docker. - β Add test coverage reporting
- π Skip Mosquitto/Docker integration tests on Windows/WSL
- π Improve test suite re. Mosquitto dependency
- β Add LoRaWAN tests
- β Add tests covering sleep modes and maintenance mode
- β Add tests covering sensor machinery
- β Add tests covering GPRS telemetry
- π Improve tests covering LoRaWAN message decoding with environmental sensors
- β‘οΈ Update 3rd-party modules
- π Fix flakyness of MQTT test
- β Add tests covering HTTP uplink telemetry
- β‘οΈ Use updated "umqtt" module for CPython compatibility
- π Use "time.time()" rather than "time.time_ns()" to retain compatibility
with Python3.6. Thanks, Matthias! - β Add new make targets for the testsuite to the inline Make documentation.
Thanks, Markus! - π Improve error reporting for "make setup"
- π Improve test coverage for HTTP telemetry / urequests module
- β Add test coverage for "system.voltage.battery" by mocking the ADC
- Round sensor values according to settings
- π§ Start supporting CPython on Linux/RaspberryPi. Thanks, @tonke!
-
v0.6.0 Changes
August 19, 2019Mordillo
- Explicitly
deinit()
LTE modem on each startup - Fix
settings.example-bob.py
. Thanks,@MKO1640
_ and@ClemensGruber
_. - π Improve formatting of BEEP telemetry field mapping for BOB
- Disable telemetry adapter offline state for now
- π² Disable DEBUG log level for system sensors
- β Add the "maintenance" device status / mode
- β Add UDP mode server for signalling the device into maintenance mode
- β Add device discovery and UDP client for signalling maintenance mode
- Attempt to fix woes with IPv6 addresses from
terkin.py
- Skip networks like 127.0.0.0/8 and 169.254.0.0/16 for
terkin.py
- π Make "terkin.py" handle multiple MAC address prefixes
coming from different Pycom devices. Now: WiPy, FiPy. - π» Optionally read MAC address from command line in order to
discover and maintain specific device - β Add MQTT authentication
- π Update documentation
- π Improve rshell access over IP
- Rename environment variable
MCU_SERIAL_PORT
toMCU_PORT
π§ for configuring both USB/UART port and IP address - π Use offset values for DS18B20 sensors from settings
- Enable/disable individual sensors per settings
- π¦ Install MicroWebSrv and MicroDNSSrv libraries into
dist-packages
folder - β Add singleton factory method to
TerkinDatalogger
. Thanks,@DieDiren
_. - β± Increase timeout for ARP ping requests with "terkin.py"
- π Use most recent "dotty_dict" module
- Properly format MAC addresses
- β Add maintenance mode interval to configuration settings
- Lazily import "ButtonManager" for trimming #11
- π Improve MAC address parsing and formatting
- π Improve MAC address normalization by also removing dashes and dots
- Follow the Pycopy MicroPython fork, standard library wise
- β¬οΈ Upgrade to Dotty Dict 1.1.1. Thanks,
@pawelzny
_. - π Improve sandbox tooling incl. FTP source code upload
- DS18B20: Extend time between starting the
conversion and reading the sensor to one second. - β Add MiniNet helper and corresponding
Makefile
rulewifi-connect
- π§ Ship configuration blueprint with deep sleep disabled
- π Improve MiniNet helper to get IP address
- π§ Set default maintenance duty cycle to 15 seconds
- π Improve Watchdog subsystem by adjusting to edge cases. Thanks,
@pinguin999
_. - Reorder sections when uploading using FTP
- β Add Self-documenting-Makefile helper
- π Improve Pycom firmware installation
- Slightly document Makefile targets
- β± Increase timeout when sending ARP packets for device discovery. Thanks,
@ClemensGruber
_. - Slightly adjust "make help". More Makefile improvements.
- Desktop notifications for MicroTerkin Agent
- π Make MicroTerkin Agent write detected IP address into file
- π Improve Makefile sandbox tooling
- π² Prettify logging
- 0οΈβ£ Optionally start modeserver, defaulting to true
- Add basic HTTP API subsystem. Thanks
@vkuhlen
_ and@DieDiren
_. - β Add
make provide-wifi
command for starting the access point interactively - 0οΈβ£ Start WiFi in STA_AP mode by default
- Disable garbage collector when reading sensors to improve timing
- π Improve tooling and inline documentation
- β Add option
main.fastboot
for skipping LTE modem teardown
for faster development iterations - Curate the garbage collector
- β Add backup mechanism for configuration files
- π Fix polling for WiFi connectivity
- π§ HTTP API: Add basic endpoints for configuration settings
- β Add backup configuration snippet to settings blueprint files
- π Makefile: Prompt for restart after FTP transfer
- Makefile: Add
RUNNING_IN_HELL
flag - π Makefile: Suppress desktop notifications on Windows for now
- π Makefile-Todo: Use lftp.exe for file transfer on Windows?
- Extend module search path to "terkin" and "hiveeyes"
π folders in order to support native Pymakr operation - π Make reference to "datalogger" object available in global scope
- Slightly tweak garbage collector curator to collect
garbage after computing and setting threshold - β Add more accessor methods to
TerkinConfiguration
- Add
get_last_stacktrace
utility function - π Fix memory exhaustion when starting the MicroWebSrv twice
- π§ HTTP API: Add endpoints for getting and setting individual configuration settings
- π¨ Object model refactoring
- HTTP API: Add endpoint for getting the last reading
- π¨ Refactor
sensors
-section of configuration settings - Settings: Rename sensor "key" attribute to sensor "id"
- Settings: Rename HX711 enumeration attribute from "address" to "number"
- π Fix broken dependencies re.
pycopy-collections
- π Move HTTP API request/response examples to screenshots folder
- π¨ Constructor refactoring and naming things
- β Add
id
attribute to bus configuration settings - π¨ Refactor and improve DS18B20 settings, reading and processing
- π Improve prettified sensor readings log output
- π Improve HTTP API
- π Improve initialization robustness with bus device objects
- β Add
mpy-cross-util.py
- β Add ahead-of-time compilation using
mpy-cross
throughmake recycle-ng MPY_CROSS=true
- π Refactoring, documentation, cleanups, naming things
- Improve user experience with
mpy-mk
sandbox toolkit. Thanks,@rohlan
_ and@ClemensGruber
_.- Fix interactive confirmation
- Add advices to guide user on errors
- Improve Windows compatibility for the
ng
series of commands
- β Add colors to
mpy-mk
- β Add note about installing
pycom-fwtool-cli
on Linux. Thanks, weef. - mpy-mk: Improve operating system detection
- mpy-mk: Streamline user interface
- Another attempt at touch button wakeup
- mpy-mk: Improve cross compilation
- sensors: Use BME280 library by robert-hh
- π mpy-mk: Add "make colors" for colored output testing on Windows
- π Make MicroTerkin Agent compatible with Python3.5. Thanks,
@rohlan
_. - π§ Attempt to automate installation of the modem firmware (WIP). Thanks,
@rohlan
_. - π§ Gracefully ignore missing "py-notifier" package on Linux. Thanks,
@rohlan
_. - π Fix
scapy
dependency woes. Thanks,@rohlan
_. - β Add tools for building firmware images for ESP32 based on Pycom MicroPython.
Thanks,@emmanuel-florent
_. - β‘οΈ onewire.py: Use library optimized for timing and with enabled CRC checks by
@robert-hh
_, thanks! - π§ First steps with BLE (WIP)
- π§ First steps with LTE (WIP)
- Be more graceful when starting network services
- β± Wrap "station.isconnected()" to mitigate unhandled exceptions on timeout errors
- 0οΈβ£ Extend default watchdog timeout to 60 seconds
- Try two times to connect to WiFi station
- π Makefile improvements
- Don't run "mpy-cross-setup" on each invocation of "mpy-compile"
- Don't clobber "mpy_cross_all.py"
- π Improve LED signalling
- Parallelize networking subsystem
- π§ Prepare real "light sleep" (WIP)
- Attempt to reset WiFi connection if scanning fails
- β Add "mboot", the universal MicroPython bootloader
- Reconfigure watchdog when connecting the device using MiniNet
- Propagate platform information for implementing platform switch conditions
- Transfer "mboot" bootloader and "mininet" module
- Start making Terkin platform-agnostic. Thanks, Markus!
- β Add release archives with frozen modules compatible to Pycom MicroPython
- Explicitly
-
v0.5.1 Changes
June 22, 2019 -
v0.5.0 Changes
June 22, 2019Power shaving
- π Improve documentation
- π Improve voltage divider settings for reading the battery level
- π Package the release bundle with the same directory layout as the sandbox
- β Add foundation for having button events through ESP32 touch pads
- β Add basic logging configuration settings to support turning off logging entirely
- π Fix purging of sensible configuration keys
- π Improve MAC address formatting when logging network status
- Try 11 dB attenuation for measuring vcc
- Disable heartbeat through RGB-LED, just blink twice on startup
- Turn off interrupts while powering down the HX711
- π Improve inline documentation and logging
- π Improve IRQ handling when reading the HX711
- π Sleep for 80 microseconds after pulling HX711 clock pin
PD_SCK
to HIGH - π Improve bus- and sensor power-management. Add "power_on" signal.
- Explicitly turn off LTE modem before deep sleep
- π Use 6dB attenuation factor again when reading the ADC for measuring VCC
- Conditionally turn off LTE modem
- WiFi STA: Get hold of auth mode and store into NVRAM to skip WiFi scan on each cycle
- WiFi STA: Erase auth mode from NVRAM if connection fails
- π¨ Refactor radio/networking subsystem
- π§ Explicitly start and stop Terminal on UART0 based on configuration
- π HX711: Hold clock pin "PD_SCK" in designated state through internal
pull-up in the RTC-domain, even during deep sleep. - HX711: Improve setup and initialization after power up
- β Add watchdog and feed it
-
v0.4.0 Changes
June 17, 2019Getting real
- β¬οΈ Upgrade to
Pycom MicroPython 1.20.0.rc11
- Stop leaking sensible information into settings output
- π Improve documentation
- Switch to LittleFS
- β Add deep sleep
- π Improve Makefile targets
- β Add more wakeup reasons
- β Add missing configuration section for HX711 to settings example.
Thanks, @ClemensGruber. - β Add basic device-interval sensors
SystemTemperature
andSystemBatteryLevel
- Explicitly shut down all peripherals having implicitly been turned on
- β Add
SystemWiFiMetrics
sensor - β Add
SystemUptime
sensor - π Fix: Better explicitly initialize the ADC before reading it
- π Improve
SystemBatteryLevel
sensor. Thanks,Dominik <https://github.com/ayoy>
_! - π Make
TelemetryTransportHTTP
work again - π Improve telemetry subsystem re. multi-protocol and -topology. Enable HTTP telemetry.
- β Add configuration example for BEEP-BOB
settings.example-bob.py
- Honor "scale" and "offset" parameters when reading the HX711. Fix #6.
- π Improve reading the HX711 re. wrong kg scaling.
Transmit all raw values and settings of HX711. - Attempt to improve #5: Reading Vcc.
- β Add missing "topology" configuration settings attribute
π§ for MQTT telemetry to example configurations - π Fix deep sleep
- Conditionally start telemetry subsystem just if networking is available
- π Improve robustness wrt. WiFi connectivity
- π Improve log messages
- β¬οΈ Bump version to 0.4.0dev
- π Improve purging of sensible configuration settings
- SystemBatteryLevel: Obtain voltage divider parameters from settings
- π Improve release tooling
- π Improve error signalling for missing "topology" configuration setting
- β¬οΈ Upgrade to
-
v0.3.0 Changes
June 07, 2019Yaks all the way down
- β Add ds18x20 lib
- Implement DS and HX sensors using
AbstractSensor
- ds18x20: Add reading multiple sensors
- Populate SensorManager, add bus management, add OneWireBus
- SensorManager: Make ds18x20 use OneWire-Bus through
AbstractBus
- ds18x20: fix runtime issues, resetting OneWire before scanning for devices
- Little cleanup
- SensorManager
- Add bus driver for i2c and onewire busses
- Settings: add busses to (sensor-)settings
- Convention: Bus address
<BUS_FAMILY>:<BUS_NUMBER>
- π Makefile|libs:
- Add bme280, Pycoproc, Quectel L76 GNSS library (Pytrack Board)
- Add Pytrack Board Library, Pytrack Board Accelerator
- SensorManager
- Add bus to sensor registry
- Add bme280 (humidity, temperature, pressure)
- Add i2c bus
- Cleanups
- π¦ Compensate for missing
_onewire
package, maybe on older firmwares - π Move acquire_bus to
AbstractSensor
- π Fix I2C pin propagation
- β Add Pytrack sensor
- Don't croak on failures
- π Fix HX711 pin wiring
- π Move Pytrack sensor to ratrack namespace
- β Add Pytrack Quectel L76 GNSS sensor
- π Makefile: cleanup (rm old DS18X20 lib)
- settings|sensor: add TODO: "i2c-address -> settings -> sensor"
- settings|sensor: add TODO: "i2c-address -> settings -> sensor"
- π§ Sensors: naming, (WIP!) hardcoded proposal for naming (see bme280)
- β Add Pytrack support
- Moar sensors
- β Add appropriate logging
- π Improve LoRa subsystem
- π Improve logging, code cosmetics
- β Add "make clean" target
- Enable all sensors
- π Improve bus registration
- π Improve BME280 readings
- π Improve documentation
- π Update documentation
- β Add LoRaWAN/TTN telemetry with CayenneLPP
- Start WiFi before LoRaWAN
- β¬οΈ Reduce logging noise
- π Improve sandbox, documentation and naming things
- π Update documentation
- β Remove main.py.dist again
- π Improve automatic sensor field naming
- π Improve example settings
- π Improve logging all over the place
- β¬οΈ Upgrade to rshell 0.0.21
- Use βdevice_idβ as part of the MQTT βclient_idβ
- π Fix telemetry success signalling
- Cleanup
- π Improve network/telemetry error handling, robustness
and convenience for WiFi and MQTT connectivity - π Improve logging
- π Update documentation
- π Improve reporting about which telemetry targets succeeded
-
v0.2.1 Changes
March 23, 2019π Fixes.
- π Fix install-requirements re. dotty_dict patching
- π Fix "make list-serials"
- Dependencies: add OneWire & DS18x20 libraries
- π Fix urllib dep
- Introduce SensorManager
- π Fix urllib dep
-
v0.2.0 Changes
March 17, 2019Fill in the gaps, lots of.
- π Update documentation
- β‘οΈ Update backlog
- π Improve MQTT robustness by compensating
ECONNRESET
andECONNABORTED
exceptions from connection to MQTT broker by attempting to transparently reconnect next time when performing a telemetry submission. - Stop connecting to further WiFi networks after getting connected already
- π Make the telemetry domain obtain the "format" parameter from configuration settings in order to control the serialization method.
- β‘οΈ Update MQTT address example settings
- π Improve WiFi STA connectivity and status reporting
- π Improve status reporting and inline comments
- π Fix example configuration
- π Improve documentation
- Preparing cayenneLPP into telemetry, new convention for sensor mapping (e.g. channel in CayenneLPP)
- Lora works now, cleaning up and restructuring, might be good
- β Add TTN to get_handler() and transmit()
- π Improve telemetry target selector
- β Add PyCayenneLPP package to foundation libraries
- β Add telemetry target for running Base64-encoded CayenneLPP over MQTT
- install upip via pypi
- β Add project header to main sketch files
- π Improve PyCayenneLPP installation
- β¬οΈ Reduce rshell buffer size to "30"
- π Improve Telemetry - Multiple telemetry sinks running in parallel - Add MQTT driver adapter
- Streamline sensor reading vs. telemetry submission
- π§ Trim configuration settings output
- Naming things
- π Improve documentation
- π Fix channel naming in example configuration
- π§ Skip reporting the current configuration settings as this crashes the serial output on WSL.
- Use environment variable "MCU_SERIAL_PORT" for configuring serial port
- π¦ Overhaul make target "setup-requirements" to populate "dist-packages"
- π Update documentation, improve README and add README-HARDWARE.md
- π Improve "refresh-requirements" make target
- π Documentation, once more
- π Bump documentation again
- π¨ Slight application namespace refactoring
- π Improve reporting
- Don't enable serial device in "boot.py"
- π Improve documentation
- β Add examples for different use cases
- π Build distribution archive files and upload them to GitHub
- π¨ Refactoring/modularization
- π Update documentation
- π Minor fixes
- Re-add BobDatalogger
- β Add release tooling