Fixed: Vibration wake-up (tap-to-wake) not working on Pironman 5 MAX — v1.3.7

Posting this in case it helps anyone else who’s been tapping their case in frustration wondering why the OLED never wakes up :slightly_smiling_face:

Setup: Pironman 5 MAX on a Raspberry Pi 5, running as a Home Assistant hub, pironman5 v1.3.7.

The symptom

I’d actually installed the regular Pironman 5 package by mistake at first, and vibration wake-up worked fine there. After switching to the correct MAX variant, it stopped working — no errors anywhere, and the addon’s own log file just went silent: /var/log/pironman5/pm_auto.vibration_switch.log

Root cause

This is a known software bug — full writeup in GitHub issue #57. Short version: the MAX variant’s peripheral list never actually registers the vibration switch addon, so it silently never loads. On top of that, there are a few smaller bugs in the addon code itself (a leftover reference to an undefined variable, wrong init order, and a function signature mismatch) that would still stop it from working even if it did load.

The fix

Patched both files by hand (backed up the originals first, obviously):

  • pironman5/variants/pironman5_max.py — Added the missing peripheral entry, event mapping, and default pin config.

  • pm_auto/addons/vibration_switch.py — Fixed the init order and a couple of small code bugs.

Confirmation

Restarted the pironman5 service and checked journalctl -u pironman5.service — the addon now loads cleanly. VibrationSwitchAddon now appears in the addon list and initializes without errors. Gave the case a tap and the OLED woke right up :tada:

If anyone wants the exact diffs, happy to post them as a follow-up. Also left a comment on the GitHub issue for SunFounder’s attention, hopefully gets folded into a proper release at some point.

Thank you for your detailed post and for sharing your fix – we truly appreciate it.

The behaviour you observed is due to a version difference:

Starting from Pironman 5 Max Home Assistant add‑on v1.3.7, we have removed the vibration/tap‑to‑wake feature for the OLED. It is now designed to be woken only by pressing the Power Button. This change improves reliability and avoids conflicts with external GPIO control.

The standard Pironman 5 add‑on (v1.2.6) still includes the old vibration logic. If installed on a Max, it may attempt to use the feature, which explains why it worked initially but stopped after switching to the correct Max version.

We plan to update the Pironman 5 add‑on in the future to align with the Max behaviour. Thank you again for your feedback and your helpful contribution to the community!