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.