Releases: BlueAndi/Pixelix
Releases · BlueAndi/Pixelix
Pixelix v8.1.0
Features
- The Home Assistant MQTT discovery information moved out from program code to the filesystem /extra to save program space and easier modifications.
- File browser will create automatically non-existing folders during upload.
- Shutdown/Restart behaviour improved.
- The display can be switch on/off in the display webpage.
- Timer service can be used to switch the display on/off or set the display brightness at a given time and date.
- The default slot fade effect which is used after a power up can be configured in the settings.
- Use color picker on the webpages in general.
- Support for the RTC DS3231 added.
- Home Assistant MQTT discovery configuration provides more device informations.
- Hostname is used as prefix for the backup file name.
- If a plugin alias is changed, in the past all plugin registrations for REST/MQTT were unregistered. Now only the ones with the alias will be unregistered and then registered with the new alias of course again.
- The serial command "reset" was renamed to "restart". The same in the debug webpage.
- Pixelix can now be restarted via REST and MQTT.
- UTF-8 support added.
- MultiIconPlugin got Home Assistant support.
- Home Assistant discovery of JustTextPlugin, IconTextPlugin and IconTextLampPlugin supports now changing the icon too.
- REST API v1.6.0
Bugfixes
- Fixed JustTextPlugin: Because of a wrong additional parameter, text could not be set via web page.
- Persistent store flag fixed for JustTextPlugin, IconTextPlugin and IconTextLampPlugin.
Breaking Changes
- Home Assistant support for multiple discovery entities, which are related to only one plugin/feature entity added. This has an impact on the Home Assistant object-id and unique-id generation! It adds the possibility now to change the icon for the IconTextPlugin, IconTextLampPlugin and MultiIconPlugin via Home Assistant.
Full Changelog: v8.0.0...v8.1.0
Pixelix v8.0.0
Features
General
- HUB75 display support added with the HUB75 HAL. Development boards with two cores and a minimum of 8 MB flash are recommended to use it.
- A lot of changes to reduce the required program flash space. Development boards with 4 MB flash are still supported, but the available number of plugins is reduced to fit in program flash.
- Removed the coredump partition for development boards with 4 MB flash.
- The number of plugins, which are available out of the box changed. The root cause is the program flash space, especially for development boards with only 4 MB flash.
- HomeAssistant blueprint updated.
- Pixelix pcb board v2.1 finished.
- Out of the box support for the following development boards added:
- DIYMORE ESP32-S3 DevKitC-1-N16R8V with 32x8 and 32x16 LED display
- Adafruit MatrixPortal ESP32-S3 with 64x64 LED display
- The bootloader (bootloader.bin) file can be updated by using the web interface.
- Different display sizes are supported by the implemented view feature of the plugins. Out of the box the following sizes have dedicated views, others run with a generic view:
- 32x8
- 32x16
- 64x64
- GIF image support added, which replaced the sprite sheet animations.
- Serial terminal extended with
- a
help
command to show all available commands and get status
to retrieve the last error id, which is useful in case the display is not working.
- a
- Multi-line support for text implemented in the TextWidget.
- User defined icons e.g. for the IconTextPlugin are now uploaded in the new icon menu. Every uploaded icon has an unqiue icon id, which can be used by the plugins to specify which icon to use.
- Websocket requests are not handled in the webserver context anymore, but in the main loop.
- Display slots can be enabled/disabled now.
- Display page shows now the sticky flag and whether the slot is enabled or disabled.
- GFX performance increased.
- Web pages updated with a consistent dark theme.
- In WiFi access point mode a public ip address will be assigned to the connected mobile device. This was required especially for Samsung mobile phones to trigger the user notification and routing to the captive portal.
- Protocol for the live display update in the web page uses a simple compression algorithm.
- Many other bugfixes and improvements, please check the logs for details.
- Brightness soft limits implemented for environment and device depended adjustments.
Plugins
DateTimePlugin
- Choose the start of the week day.
- Analog clock visulation for 64x64 displays added.
JustTextPlugin
- Text can be stored persistent, which is automatically shown after a power-up.
IconTextPlugin
- Text can be stored persistent, which is automatically shown after a power-up.
IconTextLampPlugin
- Text can be stored persistent, which is automatically shown after a power-up.
MultiIconPlugin
- Supports the max. number of icons depended on the display size.
OpenWeatherPlugin
- One Call 2.5 support removed, because it was deprecated and access to the product stopped on October 14, 2024.
- On 64x64 displays it supports showing the forecast of one week.
Breaking changes
-
New TextWidget format tags:
Keyword Description {#RRGGBB} Change text color (RRGGBB in hex) {hl} Horizontal alignment left {hc} Horizontal alignment right {hr} Horizontal alignment center {vt} Vertical alignment top {vc} Vertical alignment center {vb} Vertical alignment bottom {0xCC} Special character (CC in hex) -
To support different display sizes, the plugins shall support the view feature.
-
ThreeIconPlugin renamed to MultiIconPlugin, because depended on the display size it can support less or more than 3 icons.
-
Please consider REST API changes, see REST API v1.5.0
New Contributors
- @ryannevell made their first contribution in #181
- @emmanuel-ferdman made their first contribution in #204
Full Changelog: v7.2.5...v8.0.0
Pixelix v7.2.5
Bugfixes
General
- Considers the renaming of the repository.
- Bugfix in AsyncTcpSock, which causes a reset while accessing any web page:
Backtrace: 0x40083c3d:0x3ffea3e0 0x4008e879:0x3ffea400 0x40093ef9:0x3ffea420 0x4008f889:0x3ffea550 0x401a1813:0x3ffea590 0x401a0b22:0x3ffea5f0
#0 0x40083c3d:0x3ffea3e0 in panic_abort at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/esp_system/panic.c:408
#1 0x4008e879:0x3ffea400 in esp_system_abort at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/esp_system/esp_system.c:137
#2 0x40093ef9:0x3ffea420 in __assert_func at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/newlib/assert.c:85
#3 0x4008f889:0x3ffea550 in xQueueSemaphoreTake at /Users/ficeto/Desktop/ESP32/ESP32S2/esp-idf-public/components/freertos/queue.c:1549 (discriminator 1)
#4 0x401a1813:0x3ffea590 in AsyncClient::_sockPoll() at .pio/libdeps/esp32doit-devkit-v1/AsyncTCPSock/src/AsyncTCP.cpp:920
#5 0x401a0b22:0x3ffea5f0 in _asynctcpsock_task(void*) at .pio/libdeps/esp32doit-devkit-v1/AsyncTCPSock/src/AsyncTCP.cpp:221
Pixelix v7.2.4
Security Release
The polyfill.io domain was compromised, therefore the polyfill.js is now got from cdnjs.
Article: https://blog.cloudflare.com/polyfill-io-now-available-on-cdnjs-reduce-your-supply-chain-risk
Pixelix uses the polyfill.js to get websocket support in older browsers.
Pixelix v7.2.3
Bugfixes
General
- Fixed esp32 RMT false positive report, which caused infinite logs on the console and slowed down the system.
Pixelix v7.2.2
Bugfixes
General
- Arduino FFT library updated, because previous used branch was broken.
- HomeAssistant blueprint fixed.
Pixelix v7.2.1
Bugfixes
General
- Sensor data was only updated partly depended on sensor type.
- Some sensors which provides a float value, may provide NaN. This is handled now.
TempHumidPlugin
- The humidity was shown with an additional dot on the display, although the value is without the fractional part. This dot is removed.
Notes
- Please have a look to the REST API v1.4.0 for new functionality.
- To get all Pixelix features you need a development board with at least 8 MB flash and a dual core ESP32 chip.
- On a single core ESP32-S2 it may happen that artifacts in the display appear in case of requests to the webserver. Note the LwIP stack and the TCP layer has tasks with higher priority and may access intesively the filesystem.
Pixelix v7.2.0
Features
General
- Set "homeassistant" as default discovery prefix.
- MQTT support added to Ulanzi TC001.
- RTC suppport added to Ulanzi TC001.
- With \xHH a character code in hex can be specified inside text to get special characters like the °.
- Brightness, temperature, humidity and battery sensor values can now be requested via REST API or subscribed to via MQTT.
- Display can be switched on/off now.
- The automatic display update is disabled by default. Use the button to enable it.
- In the serial terminal the IP address can be retrieved by "get ip".
GithubPlugin
- Replaced by GrabViaRestPlugin.
GrabViaRestPlugin
- GrabViaRestPlugin implemented to grab data via REST API and show it on the display. See ./doc/grabConfigs/rest for examples.
GrabViaMqttPlugin
- GrabViaMqttPlugin implemented to subscribe for MQTT topics and show them on the display. See ./doc/grabConfigs/mqtt for examples.
IconTextPlugin
- The absolute path for the bitmap icon and the sprite sheet can be set directly.
IconTextLampPlugin
- The absolute path for the bitmap icon and the sprite sheet can be set directly.
OpenWeatherPlugin
- OpenWeatherPlugin supports the "Current weather" API v2.5, One-Call API v2.5 and One-Call API v3.0.
- Configure the weather request period in OpenWeatherPlugin to your needs.
ShellyPlugSPlugin
- Replaced by GrabViaRestPlugin.
ThreeIconPlugin
- The absolute path for the bitmap icon and the sprite sheet can be set directly.
Improvements
- Websocket commands optimized in sense of memory consumption.
- The size of the display in the Display web page will be automatically adapted.
- File upload dialogs filter now for the appropriate file extensions.
- Bitmap (.bmp) V5 header support added.
- Virtual buttons controlled via websocket or REST API can execute all defined button actions.
- The display page was extended to jump to previous/next slot.
- The AsyncHttpClient's serialized to have only one outgoing http/https request at a time. This was necessary because a single https request needs about 47 kByte of heap memory and may cause a reset depended on the users configuration and timing.
Bugfixes
- NTP address handling fixed, which could cause a broken time synchronization.
- Several small bugfixes.
DDPPlugin
- DDP protocol fixed to be used by e.g. xlights.
Notes
- Please have a look to the REST API v1.4.0 for new functionality.
- To get all Pixelix features you need a development board with at least 8 MB flash and a dual core ESP32 chip.
- On a single core ESP32-S2 it may happen that artifacts in the display appear in case of requests to the webserver. Note the LwIP stack and the TCP layer has tasks with higher priority and may access intesively the filesystem.
Pixelix v7.1.1
Bugfixes
- Because lack of flash space for 4 MB development boards, the
- AudioService with the SoundReactivePlugin was removed and therefore
- BTCQuotePlugin, ShellyPlugSPlugin, VolumioPlugin and WifiStatusPlugin were added.
Pixelix v7.1.0
Features
General
- Support for the Ulanzi TC001 smart pixel clock added.
- Different LDRs are now supported an be configured in the board.ini per development board.
- If plugin has no alias, the plugin UID is used to generate a MQTT topic. If a alias is set, only the alias will be used to generate a MQTT topic.
- If a topic is unregistered, the MQTT HA discovery info will be purged.
- HomeAssistant entity icon support added.
- MQTT birth and last will messages implemented.
- Pixelix can now be switched off. It will go into a light standby mode and disables wifi.
- Control Pixelix with 1, 2 or 3 buttons, depended on your Pixelix hardware.
- LED matrix width, height and topology can be configured in the board.ini
- Supply current can be configured in the board.ini
- Min. brightness limited to 10%. Default brightness set to 20%.
- Sensor default offsets can be pre-configured in the Sensors.cpp. This is useful in case of known devices, like the Ulanzi TC001.
- The BTCQuotePlugin is removed from small configurations, because of less available space.
- File browser supports now simple uploading of files.
- Platform updated to v6.3.0.
- ACE editor updated to v1.22.1.
Plugins
BatteryPlugin
- New plugin implemented to show the state of charge in a graphical way. Currently only used by the Ulanzi TC001.
IconTextLampPlugin
- A lamp which is off, is now black and therefore usually not shown.
- A lamp which is on, is now red.
Bugfixes
General
- Obsolete PIO keywords (check_patterns) replaced with reccomended ones.
- SensorPlugin sensor and channel selection fixed.
Plugins
OpenWeatherPlugin
- Sometimes a "?" with the standard icon was shown instead of the weather icon.