Releases: glossyio/traffic-monitor
Release list
0.6.0 Release
Major changes for 0.6.0
Breaking changes
There are substantial changes to directories in both the repo and system application paths. An update-in-place was not designed and will not work.
The Traffic Monitor software is still undergoing major changes, consider it in Beta and that these major updates will break your current system.
Many configuration defaults have been updated for better performance and new capabilities. It is recommended to start with the new defaults and modify to fit your needs.
Upgrade path
To upgrade, we strongly recommend you backup your settings and database and re-image from scratch. Database structures have not changed, so you should be able to copy over your database from v0.5.
Perform a fresh install by following the Software Installation docs.
Sorry for any inconvenience this may cause.
New Features
Migrated to Podman
We have migrated all containerized applications from Docker to Podman. Podman is a daemon-less architecture that aligns very well with our open ethos while maintaining compatibility with our core applications, such as Frigate.
All previous docker commands are fully available in Podman. Note, though, that since this a daemon-less and runs on systemd, restarts may be handled by the systemctl command.
Thank you for the amazing work on this, @socket-wrench!
Now utilizing H.265 RPi5 hardware video decoding
This was a long-overdue backlog item. The Raspberry Pi 5 contains a hardware decoder for H.265 (h265 / HVEC) videos that allows much more efficient processing of videos encoded with this codec and a smaller size for the same quality as H.264. Be aware that some systems and browsers may not be able to play back H.265 by default.
Frigate sees a substantial decrease in CPU usage: in our tests about 6x (six times) decrease in CPU load. This is particularly obvious in very busy areas with many objects being tracked; i.e. a very busy road with dozens of cars, bikes, and pedestrians. This is achieved by passing the hardware decoder into Frigate and utilizing a custom ffmpeg value in the config.
To utilize the hardware decoder, the Raspberry Pi Camera 3 rtsp feed now encodes to H.265. This uses slightly more CPU than the previous H.264 encoding format since RPi5 has no hardware encoder, but it pays back dividends during Frigate's decoding and storage.
Note that the camera feed for the RPi Cam 3 Wide now properly utilizes the entire field-of-view. Previously the default resolution cropped and stretched the images. This will make the picture substantially clearer and better-looking as well as provide a better view for object detection, especially with far-away / small objects.
All camera feeds, including those from any external cameras, should be specified to send streams to the traffic monitor using H.265/HVEC to take advantage of Raspberry Pi 5's hardware decoder in Frigate.
Dashboard changes
Node-Red Dashboard 2 has updated its internal framework to chart.js, and our charts have been updated to work with the new data format and keep consistency with the on-device dashboards.
Database Download capabilities now include progress bars and allow for very large databases (>> 2 GB) to be properly packaged and transferred in tar.gz format without timing out. JSON files also use the same pipeline.
Thank you for the great, consistent work on this, @mhlmhl!
What's Changed
- Refactor/frigate 017 edgetpu/153 by @glossyio in #155
- Update Contributions to include dev branch by @glossyio in #156
- pipe tar output to download by @mhlmhl in #149
- Removing libedgetpu installation from tmsetup by @socket-wrench in #157
- updating tmsetup.sh to activate tm_venv for remote install by @socket-wrench in #158
- Refactor/podman migration by @socket-wrench in #152
- changed default rpi5 cam 3 to hevc encoding and hardware decoding in frigate by @glossyio in #159
- Add custom radar API settings defined in config by @glossyio in #160
- Fix issues 162 (missing X-axis labels) and issue 150 (x-axis labels o… by @mhlmhl in #165
Full Changelog: v0.5.0...v0.6.0
0.5.0 Release
Major changes for 0.5.0
Breaking Changes
Changes here should not have a major impact on current systems, and there were no database changes. An update-in-place was not designed and may not work.
The Traffic Monitor software is still undergoing major changes, consider it in Beta and that these major updates will break your current system.
Upgrade path
To upgrade, we strongly recommend you backup your settings and database and re-image from scratch. Database structures have changed, so do not restore the databases without first altering the structure--we recommend you start with a blank slate.
Perform a fresh install by following the Software Installation docs.
Sorry for any inconvenience this may cause.
New Features
Automated Detector Installation
Added Raspberry Pi AI HAT+ (Hailo-8 and Hailo-8l) firmware and driver installation! tmsetup will now automatically handle the Coral TPU and the Hailo-8. The script will detect if the AI co-processor is physically installed or if it's already set up and available during setup. The device will need to be restarted in order for installation to complete.
Dashboard 2 AQ and Movement
For those with an Enviro+ Board, the new dashboard will now display sensor values.
Movement patterns are available to validate against manual counts and verify Frigate Zone alignment.
Plate Recognizer
The closed-source Plate Recognizer model offers a variety of capabilities that may be of use, including License Plate Recognition, Vehicle Make/Model/Type, vehicle color, and more.
Install by running bash traffic-monitor/script/tmsetup.sh - C plate_recognizer
It will require an internet connection to set up and a paid license with platerecognizer.
What's Changed
- hailo8 detect and set up by @glossyio in #141
- Dashboard 2 database aq by @mhlmhl in #128
- Movements page by @mhlmhl in #134
- Refactor/false positive motionless/109 by @glossyio in #136
- Re-implement nm connectivity check by @glossyio in #132
- Dashboard 2 database aq by @mhlmhl in #128
- Movements page by @mhlmhl in #134
- Create journald dir and tm conf by @glossyio in #126
- add docker daemon.json for log rotation and storage by @glossyio in #127
- Feature/plate recognizer local by @glossyio in #133
- bugfix / plate-recognizer flow by @glossyio in #135
- Bugfix inconsistent colors issue 115 by @mhlmhl in #116
- Move node-red-tm to docker dir and change packags.json to be static by @glossyio in #138
- modified venv to handle warning and notify user by @glossyio in #140
- Docs/gitbook sync for v0.5 by @glossyio in #147
Full Changelog: v0.4.0...v0.5.0
0.4.0 Release
Major changes for 0.4.0
Breaking Changes
Major, breaking changes across the board.
The Traffic Monitor software is still undergoing major changes, consider it in Beta and that these major updates will break your current system.
Upgrade path
To upgrade, we strongly recommend you backup your settings and database and re-image from scratch. Database structures have changed, so do not restore the databases without first altering the structure--we recommend you start with a blank slate.
Perform a fresh install by following the Software Installation docs.
Sorry for any inconvenience this may cause.
New Features
New TM Setup Script
We have introduced a new, automated, omnipotent setup process! 🤖
The Traffic Monitor software is installed via an Ansible deploy script executed from our tmsetup shell script. This allows you to perform a local installation or remote installation from a host computer to 1 or more devices simultaneously!
Thank you for @socket-wrench for the amazing work on this!
Node-RED Dashboard 2 introduction
The original Node-RED Dashboard has been deprecated for some time now. We are switching over the on-device dashboard to Dashboard 2. We went this route due to its tight integration with Node-RED, active development, and Vue.js component base. For now, it is accessible via http://<device_ip_address>:1880/dash alongside the previous UI.
Thank you to @mhlmhl for the incredible UI building!
Node-RED moved to Docker
In order to better isolate our primary logic, we have moved it from a system service to another Docker container.
What's Changed
- Feature/setup ansible refactor by @socket-wrench in #69
- dashboard-2 version of database tab, based on latest main branch by @mhlmhl in #90
- Bug/tmsetup install ansible by @socket-wrench in #73
- bump frigate to v0.15.1 by @glossyio in #75
- Feature/setup make apt upgrade optional by @socket-wrench in #76
- Move Node-RED TM service to Docker container by @glossyio in #79
- Refactor/nrtm container flow mz 2025 05 by @glossyio in #81
- Hotfix/setup vars/mz 2025 06 by @glossyio in #86
- Bugfix - add always tag to base by @glossyio in #89
- Feature/tmsetup remote host execution by @socket-wrench in #82
- added hostname to node-red title text for easier identification by @glossyio in #92
- dashboard-2 version of database tab, based on latest main branch by @mhlmhl in #90
- Dashboard 2 monitoring v2 by @mhlmhl in #96
- Dashboard 2 database v3 by @mhlmhl in #110
- Bugfix inconsistent chart colors issue 112 by @mhlmhl in #114
- Bug Fix for issue 111 by @socket-wrench in #113
- Bugfix/issue 87 venv not found by @socket-wrench in #100
- Fixing variable syntax to alleviate deprecation warning by @socket-wrench in #123
- Bug/apt key/121 coral tpu by @glossyio in #122 - Thank you @Nezugi for attempting #117 coraltpu setup changes!!
New Contributors
- @socket-wrench made their first contribution in #69
Full Changelog: v0.3.1...v0.4.0
v0.3.1
v0.3.0
What's Changed
Major, breaking changes across the board.
To upgrade, we strongly recommend you backup your settings and database and re-image from scratch. Database structures have changed, so do not restore the databases without first altering the structure--we recommend you start with a blank slate.
Highlights
We are still in early-beta with the software and appreciate your patience. This latest release includes the following and more:
- Increased stability, such as addressing the intermittent WiFi connectivity issue by @socket-wrench, @ernstkl, and @mhlmhl
- Vast array of system metrics including CPU, RAM, and storage utilization, network interface, power utilization, and more by @mhlmhl. These will help in system monitoring and issue diagnosis. Currently these metrics are only sent to ThingsBoard.
- Initial config Backup and Restore functionality on ThingsBoard by @mhlmhl and @glossyio. This allows a the device configuration files to be manually backed up to ThingsBoard and restored after, say, a device is re-imaged. This currently requires reconnecting to ThingsBoard after a re-image, and then restore may be triggered via the on-device dashboard UI.
- Configuration file refactoring to allow for any number an combination of sensors including cameras, radars, air quality monitors, and more by @glossyio. This will also allow for all configuration to be done file-based so it no longer needs to be entered into the on-device dashboard UI. This also introduces Deployment Location information that can be sensor-specific. This will allow, say, if you have multiple cameras to be assigned a unique bear (direction the sensor is facing) on a per-sensor basis. This is now captured in its own database table for better downstream processing.
- Air Quality telemetry for applicable sensors by @glossyio. Now supports Pimoroni Enviroplus sensor for Temp, Humidity, Barometer, gaseous sensor, particulate matter, and more. The code is stored in a partner repo greendormer/enviroplus-monitor and flow created to capture data locally and to TB backend. Based on the amazing work at roscoe81/enviro-monitor (cloned from 73a8e02, version 8.2 Gen) and the manufactuer's repo at pimoroni/enviroplus-python.
- Visit our updated documentation: https://docs.trafficmonitor.ai
- Traffic Monitor Enclosure 3D models are now available at greendormer/tm-enclosure-3d so you can print your own weather-resistant enclosure for the TM!
Thank you everyone for the contributions!
Major changes since v0.2.0
- Kr 303 metrics by @mhlmhl in #24
- Bugfix/wifi drops by @mhlmhl in #35
- fix _repeat_command() by @mhlmhl in #37
- Refactor/backup config by @glossyio in #43
- Add Configuration file for TM Node-RED app by @glossyio in #44
- Hotfix/nr merge issue by @glossyio in #46
- setup: configure NetworkManager to switch off wifi powersaving by @ernstkl in #47
- build on connectivity check feature of networkmanager by @ernstkl in #48
- Air Quality telemetry in Node-RED flows by @glossyio in #49
- Docs/gitbook sync by @glossyio in #50
New Contributors
Full Changelog: v0.2.0...v0.3.0
v0.2.0 - IoT hub introduced
What's Changed
Major, breaking changes across the board to reduce resource utilization and add capabilities.
To upgrade, we strongly recommend you backup databases and completely re-image device to use these features. Database structures have changed, so do not restore the databases without first altering the structure--we recommend you start with a blank slate.
Highlights
We went away from InfluxDB in favor of a SQLite database. This will allow us to avoid the Docker overhead. We found we were not utilizing the Flux language, querying capabilities, and didn't have a use case to need the big-data querying engine.
We went away from Node-RED in a Docker environment and now install Node-RED as a service. The primary motivation here was having system-level access to execute commands from the Node-RED UI, which we intend to be the primary method for users to interact with their device. We wanted to be able to do things like set the system time, create hotspot AP, change WiFi settings, read system-level settings, and more. This was an instance where Docker's isolation system was holding us back.
For our IoT Hub, we went with ThingsBoard after evaluating many options both open-source and closed-source. We are very excited about ThingsBoard's open source nature and ability to provision devices, collect and process data, provide visualizations, and export data for downstream consumption. Anyone can install ThingsBoard by using the Community Edition, using their PaaS Cloud offering, and/or professional edition.
Major changes since v0.1.0
- Convert InfluxDB to SQLite and facilitate easy database dumps TG#34 by @glossyio in #11
- Integrated ThingsBoard HTTP API send telemetry by @mhlmhl in #17
- Added Deployment Location database table and entries by @glossyio in #20
- Swap Node-RED Docker for Node-RED as a Service TG#89 by @glossyio in #14
- Added form to change system time settings. by @glossyio in #20
- Added attrbitues to
eventpayload by @glossyio in #20
Minor changes since v0.1.0
- Bumped Frigate to v0.14.0 by @glossyio in #20
- Modified default Frigate Bicycle Object Filter, drastically lowered score to have less false negatives by @glossyio in #20
- added example nmcli commands for connect to wifi (disable AP mode) by @glossyio in #2
- add apt update for coral tpu and change to full-upgrade by @glossyio in #3
- Added description, better starter steps by @glossyio in #5
- fixed envsubst not adding HOSTNAME to frigate config by @glossyio in #7
- Feature/pci tpu and telemetry by @glossyio in #8
- Feature/nr db download links by @glossyio in #9
- fixed node-red install command by @glossyio in #15
- Kr 301 27 config tab by @mhlmhl in #17
New Contributors
Full Changelog: v.0.1.0...v0.2.0
v0.2.0-beta.3
v0.2.0-beta.2
v.0.2.0-beta.1
What's Changed
- added example nmcli commands for connect to wifi (disable AP mode) by @glossyio in #2
- add apt update for coral tpu and change to full-upgrade by @glossyio in #3
- Added description, better starter steps by @glossyio in #5
- fixed envsubst not adding HOSTNAME to frigate config by @glossyio in #7
- Feature/pci tpu and telemetry by @glossyio in #8
- Feature/nr db download links by @glossyio in #9
- Convert InfluxDB to SQLite and facilitate easy database dumps TG#34 by @glossyio in #11
New Contributors
Full Changelog: v.0.1.0...v.0.2.0-beta.1
v.0.1.0 - initial release
Full Changelog: https://github.com/glossyio/traffic-monitor/commits/v.0.1.0