Gils
Ich wollte für den Controller ein One Button Interface implementieren um keine zusätzlichen buttons verlöten/verbauen zu müssen.
Bis jetzt habe ich noch keine negativen Rückmeldungen dazu gehört.
für das erfassen der Buttonpresses benutze ich eine Library. diese kümmert sich um das detektieren der verschiedenen drückarten und das entprellen. https://github.com/avdwebLibraries/avdweb_Switch
hab dort die timings weitgehend auf den standard einstellungen gelassen: 1 klick innerhalb von 250ms = singleclick, 2 klicks innerhalb von 250ms = doubleclick, gedrückt halten für mehr als 300ms = longpress.
natürlich lässt sich das interface anpassen und auch die timings ändern. ich wollte das interface aber so simpel wie nur irgend möglich halten.
eine möglichkeit wäre auch die dauer der akkuanzeige zu verlängern ( auf zb 10 stkunden) und dann helligkeitsänderungen nur dort zuzulassen.
oder man passt die timings für doppelklick und longpress an. das bedeutet aber auch das sich die detektion eines singleklick verzögert. dieser kann immer erst nach ablauf der doubleklick detection sauber festgestellt werden. sonst wäre jeder klick auch automatisch erstmal ein singleklick.
da das ganze open source ist würd ich es erstmal so lassen wie es ist, es sei denn es kommen jetzt noch viel mehr beschwerden oder änderungswünsche rein.
das tolel an open source ist ja das jeder selber sich seine individuelle version erstellen kann. lad dir das projekt und passe es nach deinen herzenswünschen an. 
übersetzung ins französische:
Gils
Je voulais implémenter une interface à un seul bouton pour le contrôleur, afin d’éviter d’avoir à souder ou à installer des boutons supplémentaires.
Pour l’instant, je n’ai reçu aucun retour négatif à ce sujet.
Pour la détection des pressions de bouton, j’utilise une bibliothèque qui s’occupe de reconnaître les différents types d’appuis et de gérer le rebond :
👉 https://github.com/avdwebLibraries/avdweb_Switch
J’ai gardé les paramètres par défaut pour les temporisations :
-
1 clic en moins de 250 ms = clic simple,
-
2 clics en moins de 250 ms = double clic,
-
appui maintenu plus de 300 ms = appui long.
Bien sûr, l’interface et les temporisations peuvent être modifiées, mais je voulais la garder aussi simple que possible.
Une autre option serait d’allonger la durée d’affichage du niveau de batterie (par exemple à 10 s) et de ne permettre les changements de luminosité que pendant cette période.
On peut aussi ajuster les délais pour le double-clic et l’appui long — mais cela a pour effet de retarder la détection d’un clic simple, puisque celui-ci ne peut être confirmé qu’après expiration du délai prévu pour le double-clic.
Sinon, chaque clic serait immédiatement interprété comme un clic simple.
Comme tout cela est open source, je préfère pour l’instant laisser les réglages tels quels, sauf si de nombreux retours ou demandes de modifications apparaissent.
L’avantage de l’open source, c’est que chacun peut créer sa propre version personnalisée.
Télécharge simplement le projet et adapte-le selon tes envies ! 🙂