Skip to content

v3.0 - Modernization Release

Choose a tag to compare

@MichaelB2018 MichaelB2018 released this 26 Mar 21:20
· 2 commits to master since this release
ac12050

Modernize frontend and restructure backend

Summary

Full modernization of the Pi-Somfy project — updated web interface, restructured backend, and numerous bug fixes.

Web Interface

  • Modernized design with a mobile-friendly, responsive layout that works well on phones, tablets, and desktops
  • Replaced all bitmap button icons with crisp vector (SVG) graphics
  • Consolidated 20+ favicon formats into a single SVG favicon
  • Fixed schedule page visual glitches: toggle labels, clock picker positioning, and dropdown menus clipping
  • Fixed a bug where deleting a schedule and then adding a new one could fail
  • Removed dependency on external icon font files (Bootstrap Icons webfont)
  • Fixed 27 spelling mistakes

Alexa Integration

  • No restart required: Adding or removing shutters via the web UI is now automatically picked up by Alexa — no service restart needed
  • More reliable device discovery (responses sent multiple times to guard against network packet loss)

MQTT / Home Assistant

  • Updated to the modern Home Assistant MQTT discovery format
  • Now compatible with both paho-mqtt 1.x and 2.x

Backend

  • Consolidated 9 Python files into 6 (cleaner structure, less duplication)
  • Configuration file writes are now safer — protected against corruption from power loss or crashes
  • Fixed several bugs in the scheduler, configuration reader, and shutter control (demo mode)
  • Updated deprecated Python API calls for compatibility with current Python versions
  • Can now run on Windows for development/testing (web server and Alexa work; GPIO requires a Pi)

Housekeeping

  • Added .gitignore entries for user config and log files (contain personal data)
  • Removed unused fauxmo_config.json
  • Removed unused CSS/JS library files (functionality replaced with inline code)
  • Net reduction of ~2,100 lines of code

Testing

  • Tested on Windows (web interface + Alexa discovery)
  • Tested on Raspberry Pi (full stack including Alexa voice control)