Releases: BlueAndi/Pixelix
Releases · BlueAndi/Pixelix
Pixelix v7.0.0
Features
General
- The slot configuration is now stored in the filesystem with the advantage to have up to 16 slots available now. The NVS partition size was too small, therefore it was necessary.
- Better stability by using AsyncTCPSock library, instead of AsyncTCP.
- The push URL supports now GET AND POST.
- The quiet mode can be enabled in the settings. This suppresses system messages and the startup with a wifi connection is much faster.
- Obsolete setting keys will be automatically removed to prevent slowly increasing the used size on the NVS partition.
- The dialogs in the web interface are now all based on bootstrap dialogs.
- The file browser has now a file tree for a better overview.
- The file browser shows in the upper left corner of the editor the current loaded file.
- Pixelix its base SW increased in functionaliy and size. Therefore it was not possible anymore to provide all of the available plugins for the development boards with only 4 MB flash. On the other hand more features were requested. The solution was to have different configurations:
- Small configuration for development boards with 4 MB flash.
- Normal configuration for development boards with 8 or 16 MB flash.
- Small configuration without audio driver for ESP32 with only one core and 4 MB flash.
- MQTT service introduced.
- Home Assistant support for MQTT discovery added for JustTextPlugin, IconTextPlugin and IconTextLampPlugin.
- A scrollbar for the web interface menu's is automatically shown for small mobile displays.
- Mini-terminal implemented, mainly for developing purposes in case Pixelix is connected via USB to the PC.
- Commands:
ping
- Response is just pong. Used for testing.reset
- Restarts Pixelixwrite wifi ssid <YOUR-SSID>
- Write wifi SSD.write wifi passhprase <YOUR-PASSHPRASE>
- Write wifi passphrase.
- Commands:
- Board v2.1 schematic available. Not finished yet, anyway it already has some improvements to v2.0
- WEMOS Lolin S2 Mini support added.
- M5Stack Core support added.
- Sensors can be calibrated with an offset.
- All 3rd party libs updated.
- And a lot of other minor things. :-)
Plugins
- In general the REST API of the plugins were improved in sense of having a REST API and MQTT API.
DateTimePlugin
- The date and time format can be set now different per instance. The configuration will be stored in the filesystem.
- Every instance can be configured with its own timezone.
- The color of date, time and day of the week can be configured.
DDPPlugin
- Districuted Display Protocol (DDP) implemented (unbuffered), used by e.g. xlights.
OpenWeatherPlugin
- Supports animated weather icons.
- See icon page.
SignalDetectorPlugin
- New plugin able to detect signals via digital microphone, triggering a URL and showing information on the display.
SoundReactivePlugin
- Spectrum is reacting faster by using half of precision for FFT.
WormPlugin
- New plugin with moving worms, eating some food and sometimes explode.
Bugfixes
ThreeIconPlugin
- The repeat state was not updated after a power-up, therefore no animation was running.
Breaking Changes
- Please have a look to the REST API v1.3.0. Unfortunately it was necessary to change some of the existing features.
Pixelix v6.0.0
Features/Improvements
General
- Support for different font sizes added. Default is the TomThumb font with 6 pixel height. Additional the muFont is a large font with 8 pixel height. All plugins consider that font height in their layout.
- The welcome message is shown if the plugin configuration is empty or the plugin in the 2nd slot is from type "IconTextPlugin" and contain "#welcome" as alias.
- A backup for all plugin configurations can now be made in the webinterface before updating the filesystem. A backup can be restored as well in the webinterface. See update page.
- Pixelix HW board 2.0 was born. :-)
- Development board support added:
- Lilygo® ESP32 T-Display S3
- Adafruit ESP32 Feather V2
- AZ-Delivery ESP-32 Dev Kit C V4
- Homeassistant REST wrapper configuration for the JustTextPlugin added.
- Max. number of slots decreased to 10. This was necessary because the plugin configuration is stored in the persistent flash section, which has some size limitations.
- Less space usage in filesystem by using gzipped files and removed meta information (EXIF, etc.) in jpeg files.
- File editor retrieves the file tree directory for directory. This is a little bit slower, but avoids triggering the task watchdog.
- The introduced reset monitor shows periodically how many resets happended and the cause of the latest one in the log.
- Added further spritesheet examples.
- Pixelix will notify the online status only if there is no error during startup.
- esp_log_write() messages no longer piped through own log system.
- A slot can be activated now via REST, see REST v2.1
- One slot can be set sticky which will activate the slot and stop the slot scheduling. It can be set/cleared via REST, see REST v2.1
- Firmware and fileystem can be updated via webinterface at once (multi-select in the file browse dialog).
- PSRam is shown in the debug info webpage.
- The user button supports more actions:
- On short pulse: Activates the next slot.
- Two short pulses: Activates next fade effect.
- Five short pulses: IP address is shown.
- Long pressed: Increases the display brightness until maximum and then decreases until minimum. After that it will again increases it and so on.
- Show WiFi MAC address in the captive portal web page. This is helpful in case the WiFi network blocks unknown devices and it must be configured first.
- REST API updated: v1.2.1
Plugins
- Plugins know now the current network connection status.
- JustTextPlugin, IconTextPlugin and IconTextLampPlugin
- If no text is set, the plugin will be skipped in the slot.
- DateTimePlugin
- A question mark is shown in case the clock information is not available. This will be shown at startup until the network connection to the time server is available.
- The date/time format can now be configured more precisely in the settings how it shall look like.
- DateTimePlugin date/time switching was not working properly in case its the only active plugin.
Others
- 3rd party libraries updated.
- I2S workaround added for selecting the channel. Problem caused with Arduino v2.0.4 (#93).
- 16 MB flash partition workaround added to support the Lilygo® ESP32 T-Display S3. Problem caused by the esptool.py (espressif/esptool#795).
Breaking changes
- Filesystem changed from SPIFFS to LittleFS. An update via USB will be necessary, don't use OTA update.
Pixelix v5.0.3
Bugfix version
- Supports PlatformIO v6.1.1
- Supports Unity v2.5.2
Pixelix v5.0.2
Bugfix version
- Alternative OpenWeatherPlugin icons added, thanks to NSD4rKn3SS.
- Installation procedure improved.
- Circular dependency between concrete HAL and Sensors library fixed.
- Logging extended with DEBUG and TRACE logging. Both are disabled by default.
- Program space reduced.
- Unused icons removed to have more space in the filesystem.
Pixelix v5.0.1
Bugfix version
- Release workflow deployed .zip with binaries, but with full path.
- DateTimePlugin REST API usage in web page fixed (wrong path).
- SoundReactivePlugin web page structure fixed.
- ThreeIconPlugin REST API handling in web page fixed and missing parts implemented.
- Uploads to plugins are now checked whether its enough space in the filesystem available.
- Because the main application error strategy is without C++ exceptions, the operator new shall be used with std::nothrow otherwise a reset appears.
- Authentication removed from captive portal, because some mobile devices have problems with their connection checker apps.
- Filesystem space improvements, especially in the web pages.
- Some further minor stuff, see commit logs.
Pixelix v5.0.0
Features
- REST API in v1.2.0
- Own bitmap image loader implemented in order to replace the one from NeoPixelBus.
- The BitmapWidget got now a sprite sheet feature for animated images. It was integrated to the following plugins:
- IconTextPlugin
- IconTextLampPlugin
- ThreeIconPlugin
- The online status is reported if a corresponding "push" URL has been configured in the settings.
- The display shows an low level error code to make the inital startup easier.
- The file editor is now able to edit the sprite sheet parameter files.
- Plugins:
- SoundreactivePlugin implemented showing a bar graph, which represents the frequency bands.
- DateTimePlugin got a REST API to be able to configure what shall be shown (date and/or time). Therefore DatePlugin and TimePlugin were removed.
- ThreeIconPlugin implemented which is able to show three separated icons in a row. This way triggered animations can show e.g. that your garage door is opening or your lamp is on/off.
- "The Matrix" graphical demo plugin implemented.
Improvements
- Python scripts are now PEP8 compliant.
- Settings are now accessible via REST API.
- The plugin alias name can now be set in the web interface.
- HAL for LED Matrix updated according to latest GFX changes.
- TextWidget moved the text one pixel line lower for better look.
- Precomiled binaries are now available for all environments (USB variant), except native environment.
- The default brightness is now available in the settings and can be changed via webinterface.
- Documentation contains now a minimal hardware setup.
- Accept any 3rd party lib version with the same major and minor versions, and an equal or greater patch version.
- 3rd party libs:
- bodmer/TFT_eSPI update to v2.4.1
- ArduinoJson updated to 6.19.1
- jQuery updated to v3.6.0
- esp32 platform updated to v3.5.0
- arduinoFFT V1.5.6 added.
Bugfixes:
- Several smaller bugfixes, see commit log.
Breaking changes
- The BaseGfx provides now a default constructor. This enables the static creation of subclasses.
- The Canvas was replaced by WidgetGroup, which only handles groups of widgets.
- Use YAGfxBitmap instead of own pixel buffer handling.
- Own handled framebuffers replaced with bitmap containers.
Pixelix v4.1.2
Bugfix version
- If a low level error occurres in InitState, a error code will be shown on the display to guide the user. See error codes in the FAQ.
- The low level error codes will help users e.g. who program their own Pixelix the first time and forgot to upload the filesystem.
Important notes:
- During startup the system will check for
version.json
file in the root directory. If the file is not available, the error code "E4" will be shown. In this case, please upload the filesystem too. ;-) - If the
version.json
is available, the version inside must match with the firmware version, otherwise an additional warning will appear in the display with the hint, that the filesystem may not be compatible. - If you update from a previous version via over-the-air, update first the filesystem and afterwards the firmware!
Pixelix v4.1.1
Bugfix version
- Digital in (INPUT) template fixed.
- SensorPlugin website original could only handle the first sensor right. Now it can handles separate sensors correct.
- 3rd party libs updated:
- bodmer/TFT_eSPI compatible versions are now accepted.
Note: Some users may not have a LDR like the GL5528 connected. In this case the pin is floating and the sensor may be detected as available at startup. This is no bug! ;-) Unfortunately it is not possible to check for a open-circuit with pin 34, where the LDR is currently expected.
Pixelix v4.1.0
Minor feature release
- https support integrated to AsyncHttpClient by using AsyncTcpSock lib.
- The settings are now accessible via the REST API.
- Secret settings are now handled like a password in the web interface. Note, the webserver doesn't support https, therefore all data is transfered without encryption.
- The plugin alias names can now be changed in the web interface. No reboot is necessary afterwards.
- Plugins:
- GithubPlugin implemented which shows the stargazers count on the display.
- 3rd party libs:
- esp32 platform updated to v3.4.0
- TFT_eSPI updated to v2.4.1
Pixelix v4.0.1
Bugfix version
- Humidity fixed in TempHumidPlugin. Thanks ReinVelt.
- Plugin development documentation improved.
- 3rd party libs updated:
- espressif32 platform update to v3.3.2
- NeoPixelBus update to v2.6.7
- ArduinoJson update to v6.18.5
- StreamUtils update to v1.6.1
- arduino-sht update to v1.2.1