Releases: HASwitchPlate/openHASP
Releases · HASwitchPlate/openHASP
Release 0.7.0-rc13
What's Changed
- Add W5500 SPI Ethernet by @bensuffolk in #343
- Feature/w5500 by @fvanroie in #344
- Make MQTT work with Ethernet by @bensuffolk in #345
- Updated for new define HASP_USE_ETHSPI to allow ETHSPI to build by @bensuffolk in #402
- Add option to auto create other standard files by @bensuffolk in #404
- added compile template for TTGO T-Display v1 (esp32 version) by @marc-gist in #411
- Fix custom topic by @Eshmun in #447
- Add Sunton ESP32-2432S032C by @d00616 in #493
- Improve cpicker in two ways by @aseanwatson in #500
- Comment out LV_FONT_DEFAULT to allow custom builds to compile by @bensuffolk in #503
- Spelling/typo fixes by @paravoid in #506
- Spelling fixes (changelog) by @paravoid in #507
- Add 4MB variant for Makerfabs ESP32 TFT Touch by @paravoid in #505
- New Crowdin updates by @fvanroie in #487
- Support ESP-BOX by @yetanothercarbot in #511
- change german language de_DE.h by @marsman7 in #523
- fix compile error : 'lv_font_montserrat_14' was not declared in this scope by @marsman7 in #527
- Adding system scripts that are automatically executed when idle level is changed by @marsman7 in #531
- Update CHANGELOG.md - idle level system scripts by @marsman7 in #532
- add panlee-zw3d95ce01s-tr-4848_16MB by @kinosang in #538
- New Crowdin updates by @fvanroie in #541
- New Crowdin updates by @fvanroie in #542
- New Crowdin updates by @fvanroie in #543
- swip up to page back by default by @kinosang in #539
- Fix #534 ILI9486 Failed to start: src/drv/tft/tft_driver_lovyangfx.cpp by @dfsx1 in #553
- Allow long WiFi passwords in the GUI by @alranel in #561
- sleep state - run idle scripts and allow to control the backlight by @perexg in #582
- use one allocation size for DynamicJsonDocument settings by @perexg in #584
- Implement WireGuard VPN by @perexg in #585
- New Crowdin updates by @fvanroie in #586
- Added support for Wizee (Elecrow) 2.8 WZ2432R028 ESP32 Display by @TheHexaMaster in #591
- Fix MacOS build by @alvarolobato in #597
- Support for esp32-s3-4848S040 by @tbxMb in #612
- Add esp32-s3-4848s040 to build.yaml by @tbxMb in #614
- Add support for updated Adafruit 2.4 and 3.5 TFT FeatherWings and HUZZAH32 board by @amanaplan in #613
- Revert "sleep state - run idle scripts and allow to control the backlight" by @fvanroie in #605
- Corrected environment names for huzzah32-v2-* boards by @amanaplan in #615
- Update sunton-esp32-s3-tft.ini by @TheHexaMaster in #622
- Allow more time for http get by @hb020 in #624
- re-enable idle scripts by @hb020 in #625
- On ESP32 fade the backlight by @presslab-us in #626
- wireguard - allow to set hostname for the remote peer by @perexg in #632
- Little wireguard cleanups by @perexg in #633
- Use callback for backlight fade by @presslab-us in #641
- Improve PC port feature support (Win32/Linux) by @kuba2k2 in #631
- Fix to compile in MacOS 14 by @dgomes in #650
- Allow lanbon_eth to build by @bensuffolk in #659
- hasp dark theme - use black (no gradient) for the background by @perexg in #581
- Add QR-code object by @marsman7 in #674
- New Crowdin updates by @fvanroie in #692
- New Crowdin updates by @fvanroie in #693
- New Crowdin updates by @fvanroie in #694
- fix: improve memory leaks on delete qrcode by @marsman7 in #695
- New Crowdin updates by @fvanroie in #699
- New Crowdin updates by @fvanroie in #701
- fix: Custom Group Topic name does not work by @marsman7 in #702
- Allow overriding of LV_MEM_CUSTOM by @hb020 in #705
- add crowpanel hmi 5inch 800x480 by @marsman7 in #711
- Add support for 2424S012 (round display with ESP32-C3) by @yetanothercarbot in #714
- Add list of TFT gpio pins so that they can not be selected for IO. by @FreeBear-nc in #734
- Minor spelling mistake corrected by @FreeBear-nc in #733
- Missing the FILE_SIZE_DIVIDER for gigabits by @FreeBear-nc in #737
- Add support for Guition JC4827W543 by @kiwiz in #729
- Using size_t limits max number to 2^32. by @FreeBear-nc in #739
- New Crowdin updates by @fvanroie in #740
- Add support for Waveshare ESP32-S3-Touch-LCD-4.3 by @adampr1 in #747
- Add support for Waveshare ESP32-S3-Touch-LCD-4.3 by @adampr1 in #746
- Was a mistake to hide TFT_BCKL gpio pin from the user. On some boards… by @FreeBear-nc in #752
- Hide TFT-G5 & USB GPIO pins in web page by @FreeBear-nc in #768
- Move USB_TXD/RXD to is_system_pin() by @FreeBear-nc in #769
- Add ESP32-S3-BOX-3 support. by @yetanothercarbot in #774
- Add devcontainer configuration by @GiorgioAresu in #780
New Contributors
- @bensuffolk made their first contribution in #343
- @marc-gist made their first contribution in #411
- @Eshmun made their first contribution in #447
- @d00616 made their first contribution in #493
- @aseanwatson made their first contribution in #500
- @paravoid made their first contribution in #506
- @yetanothercarbot made their first contribution in #511
- @marsman7 made their first contribution in #523
- @kinosang made their first contribution in #538
- @dfsx1 made their first contribution in #553
- @alranel made their first contribution in #561
- @perexg made their first contribution in #582
- @TheHexaMaster made their first contribution in #591
- @alvarolobato made their first contribution in #597
- @tbxMb made their first contribution in #612
- @amanaplan made their first contribution in #613
- @hb020 made their first contribution in #624
- @presslab-us made their first contribution in #626
- @kuba2k2 made their first contribution in #631
- @FreeBear-nc made their first contribution in #734
- @kiwiz made their first contribution in #729
- @adampr1 made their first contribution in https://github.com/HASwitchPlate/o...
v0.6.3
Changelog
Commands
- Additional
idleparameters now acceptoff,shortandlong - Add
sensorscommand to trigger the sensors state message - Run
L:/boot.cmdwhen the plate is (re)booted if the script exists - You can now use the
pXbY.jsonlcommand to update multiple object properties at once (thanks @nagyrobi)
Objects
- All objects have a custom
tagproperty which can contain arbitrary JSON data (or numbers or text) (thanks @nagyrobi) img.srcnow accepts bothhttpandhttpsurls (thanks @htvekov)img.srcnow acceptspngandbinaryimage urls, PSram is highly recommendedimg.srcnow accepts 16-bit BMP files stored in flash
Web UI
- Updated to modern responsive design (requires JavaScript)
- Add
/api/info/and/api/config/*/endpoints - Allow for a customizible
vars.css,style.css,script.jsandedit.htm - Display a message when the configuration is changed and a reboot is needed
- Add checkbox for backlight inversion to Display settings (thanks @wolffman122)
- Add checkbox to toggle ANSI codes #261 (thanks @geiseri)
- Allow firmware upgrade/downgrade in AP mode
GUI
antiburndisplays random pixels aka. white noise- Hide cursor during
antiburnandidleif the pointer is enabled
MQTT
- Remember last
pageid ofjsonlmessages. Sending multiple messages now behaves likejsonlfiles (thanks @arovak)
Fonts
- Use TrueType fonts from flash, PSram is highly recommended (thanks to @s-hadinger)
- Custom LVGL binary fonts can be read from flash and loaded into memory, PSram is highly recommended
- Font ID is replaced by
namexx(wherexxis the font size) but the previous Font IDs still work for backwards compatibility - Added build option for Vietnamese character set (thanks @kydang789)
⚠️ Breaking: Removed defunct .zi font support!
Bug fixes
- Fixed Lanbon L8 v1.17 PCB screen corruption #316 (thanks @DJBenson)
- Fix for screenshots not showing properly in Safari on macOS/iOS (thanks @masto)
- Fix bug that would not accept
onstate for setting output GPIOs #275 (thanks @freshnas and @cerietke) - Fix a bug in
dropdownlistwereclosemethod performedopeninstead #299 (thanks @htvekov) - Fix
srcbug inimgobjects that could corrupt images sent over http (thanks @htvekov) - Fix screen dimensions in
statusupdatemessage, taking into account current orientation #278 (thanks @kquinsland) - Fix for HTTP password that could be overwritten by 8 asterisks when it was not changed in the web UI
- Fixed MQTT hostname limit again... #304 (thanks @fake-name)
- Fixed firmware upgrade from URL #300 (thank @nagyrobi)
- Fixed a bug that prevented Wifi from connecting to different BSSID #330 (thanks @Braehead)
- Syslog message format fixes and improvements #285 (thanks @geiseri)
Custom component
- Expose
antiburnandpagein the CC (thanks @dgomes) - Expose the device URL in discovery message and CC
Architecture
- Moved to Tasmota Arduino 2.0.3 with native LittleFS library (thanks @Jason2866) and ESP-IDF 4.4.1 fixes for FragAttacks CVEs (thanks @nagyrobi)
- Add support for ESP32-S2 devices
⚠️ Breaking: Removed support for ESP8266!
Updated libraries to ArduinoJson 6.19.4, ArduinoStreamUtils 1.6.3, AceButton 1.9.2, TFT_eSPI 2.4.61, LovyanGFX 0.4.17 and Adafruit STMPE610 1.1.4
v0.6.2
Initial Setup
- Add Captive Portal to first time setup (thanks @AndreTeixeira1998)
- Create default
pages.jsonl,online.cmdandoffline.cmdfiles if they don't exist (thanks @nagyrobi)
Objects
- Enable
clickby default onimageobject - Add
typetospinnerobject - Add
zoom,angle,pivot_x,pivot_yandantialiasattributes toimageobject - Allow url as
srcofimageobject for raw webimages and from push image service from the CC (thanks @dgomes and @nagyrobi) - Use
L:/file.pnginstead of/littlefs/file.pngfor image paths,/littlefs/still works for backwards compatibility
Objects
- Add
antiburncommand to prevent static parts of the screen to create a ghosting effect in some LCDs or conditions
Devices
- Add Analog touch driver for Unoshield displays (thanks @wesleygas)
- Add Arduitouch MOD ESP32 with 2.4" or 2.8"
- Add Lilygo®Ttgo Pi ESP32 with TFT 3.5"
- Add Waveshare ESP32 One development board with Rpi MHS4001(B) or Waveshare RPi(C) LCD display
- Add D1-R32 ESP32 development board with with Waveshare ILI9486 Touch Shield
Bug fixes
- Fix bug that caused a crash when both
btnmatrixandmsgboxwhere used (thanks @AndreTeixeira1998) - Fix L8-HD dimmer brightness initialization after a reboot (thanks @Stupco)
- Keep last dimmer value when toggling dimmer state on/off
- Fix configurable mqttPort (thanks @Qargh)
- Fix opaque background of
spinnerobject in HASP theme (thanks @nagyrobi)
Updated AceButton to 1.9.1 and ArduinoJson to 6.18.5
v0.6.1
Commands
- Add
runcommand to execute script files (.cmdor.jsonl) - Add
unzipcommand for no-compression zip files - Add
servicecommand to start/stop a service
Wifi
- Don't reboot the plate anymore after prolonged wifi connection lost
- Run
/online.cmdor/offline.cmdscript when the wifi status changed
Objects
- Add new line object
- Add
valto btnmatrix whenone_selectis set - Cache up to 20 images in PSram when available
- Improve precision on the linemeter scales
- Fix dropdown redraw bug
Devices
- Fix L8-HD dimmer not responding correctly to mqtt after a reboot
- Add M5Stack Core2 backlight dimming
- Add Yeacreate Nscreen32
- Add Makerfabs ESP32 TFT Touch Capacitive
Fonts
- Additional characters:
²(squared) and³(cubed) - Additional icons: recycle-variant and additional weather icons
- Use latin1 as default charset on WT32-SC01
- Add Greek font
Compiling
- Allow custom bootlogo
- Selectively start http, telnet or console at boot
- Updated AceButton to 1.9.0 and ArduinoJson to 6.18.3
v0.6.0
Commands:
- Obsolete
dimandlightcommands, usebacklightcommand instead - Add
discoverycommand to facilitate HA CC discovery - Add
idlecommand to retreive idle state, replaceswakeupcommand - Updated
moodlightcommand with brightness support - Rewrite
outputXand addinputXcommand
Objects:
lmeterobject renamed tolinemeteralignvalues are nowleft,right,centerinstead of numbers (numbers can still be used)- Added
ext_click_handext_click_vattributes to extend the clickable area - Added
clearmethod to remove only the child objects from an object - New
tabview,tab,calendarandmsgboxobjects - Add
imgobject with png support (needs PSram for any sizable images) - Added missing properties of the
spinnerobject
Web UI:
- Updated GPIO configuration pages
- Include a File Editor on ESP32: Create, Edit, Upload, Delete and Apply pages.jsonl (Thanks Cossie)
- Cache css, favicon and edit.htm.gz in the browser
- New Information page layout, including MQTT message counters for sent, received and failed
MCU:
- Allow longer wifi ssid and password
- Update partition boundaries to use all remaining space for lfs filesystem
- Speed improvement: keep LVGL functions in fast memory & reduce overhead in main loop
- Use ascii characterset for WT32-SC01 due to limited flash size
GPIO rewrite:
- Better handling of gpios
- Support for Lanbon L8-HD dimmer (EU and AU version, thanks to @Stupco)
- Add moodlight brightness support
Broadcast and Discovery topic (HASP_USE_BROADCAST and HASP_USE_DISCOVERY)
- Allow dynamic configuration of HA entities using the openHASP Custom Component (thanks @dgomes)
- Add Manufacturer and Model to statusupdate
Updated lvgl to 7.11.0, ArduinoJson to 6.18.0 and TFT_eSPI to 2.3.70
Internationalization:
- Added French language
- Added Portuguese language (thanks @AndreTeixeira1998 and @dgomes)
- Added Spanish language (thanks @altersis)
v0.5.1
- Restore broken
config/submoduletopics - Don't show warning on
commentattribute - Patched a potential memory leak
- Added an automatic lv_mem_defrag to free up lvgl memory
- Allow selection of fonts via user_config_override
- Allow for longer mqtt configuration strings in user_config_override
- Allow default HASP_GPIO_TEMPLATE configuration in user_config_override
- Add
manufacturerandmodelto statusupdate - Fixed
enabledattribute and addedclickattribute
v0.5.0
Name changed to openHASP - https://www.openhasp.com/
When using HomeAssistant also update the openHASP Custom Component
- Switch built-in icons from FontAwesome to MaterialDesign icons #139
- Add built option for other character sets then latin1
- Built-in Font sizes dependent on screen size
- Add
swipeproperty to switch pages - Add
actionproperty for local page navigation - Add
back,prev,nextattributes to pages #114 - JSON Serialize text in payloads containing text attributes #140
- Add arduitouch-esp32_ili9341 config and allow for TFT_BACKLIGHT_ON set to LOW #131
- Add FreeTouchDeck and ESP32-Touchdown configs
- Add roller
modeinfiniteattribute - Add btnmatrix
toggleandone_checkattributes - Rework all event handlers to reduce update events and prevent race condition #119 (events have changed!)
- Add ability to style the selected part of roller object
- Add
scan_method = WIFI_ALL_CHANNEL_SCANfor ESP32, improving multi-AP connection - Add warning
objidproperty is obsolete, useobjinstead - Add warning
txtproperty is obsolete, usetextinstead - Add dark theme build option for web UI
- Update lvgl and tft_espi library version
- Update maximum backlight_level from 100 to 255
- Set default
HASP_LOG_LEVEL=LOG_LEVEL_TRACE
v0.4.0
Note: The partition scheme has changed and you will need to reflash the device over serial first.
All data will be erased, so make sure to backup your pages.jsonl, config.json and fonts.
Changes:
- Provide all-in-one binary files for ESP32 to flash a device over serial using a single .bin file
- Allow long wifi passwords (#71 thanks @nagyrobi)
- Wakeup screen on first touch (#80)
- Reduce slider events (#88)
- Update events to accommodate the HA Custom Component (by @dgomes)
- Remove HA auto-discovery in favor of the HA Custom Component
- Add
clearpage allcommand option - Add local page navigation and transitions
- Add scale properties
- Add
config/gpiocommand - Allow for timezone setting in user_config_override.h (thanks @arovak)
- Start localizations for NL, HU and RO (thanks @nagyrobi)
- New prebuild devices:
- esp32-touchdown (thanks @joelhaasnoot and @DustinWatts)
- huzzah featherwing 2.4" and 3.5" (thanks @arovak)
- m5stack-core2
- Fix zi font crash bug
- Update setting min/max attributes (#103 thanks @arovak)
- Native builds for Windows, MacOS and Linux (thanks to @thouters and @dgomes)