Forum: Mikrocontroller und Digitale Elektronik Keypad 3x4 (am Tasmota o.ä.)


von D a v i d K. (oekel) Benutzerseite


Lesenswert?

Moin,

das Grundprinzip eines solchen KeyPads ist mir bekannt (es gibt 
Anschlüsse für jede Row und Colum; Eines von beiden wird zeitmultiplexed 
bestromt und in der anderen Achse abgefragt)

Die GPIOs wären kein Problem, da ich eh schon einen Expander an meinem 
ESP83266 habe.

Doch mir wurde mehrfach davon abgeraten dies nun Scriptseitig 
abzudecken, da der Controller wohl (zumindest für eine vernünftige 
Abtastrate) an seine Grenzen kommen würde. (Zumindest mit Tasmota, was 
ich zwinged für andere Dinge brauche)

Es gab den Hinweis auf einen AnsteuerChip für solche KeyPads, aber dann 
wurde nicht genauer drauf eingegangen.

Daher hier dieser Beitrag und die Frage nach einem solchen Chip. 
Natürlich im Idealfall bereits mit Treiberkompatibilität zu Tasmota.

Liebe Grüße und noch einen schönen Restsonntag.

David

PS: Einen ESP32 möchte ich nicht, da ich für den kleinen Bruder ein 
wirklich kompacktes Layout in duzent gefertigter Hardware-Ausführung 
liegen habe. (Aber klar, wenn es gar nicht anders geht, kenne ich diese 
Notlösung...)

: Bearbeitet durch User
von Ron-Hardy G. (ron-hardy)


Lesenswert?

PT6961 o.ä.

: Bearbeitet durch User
von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

D a v i d K. schrieb:
> Doch mir wurde mehrfach davon abgeraten dies nun Scriptseitig
> abzudecken, da der Controller wohl (zumindest für eine vernünftige
> Abtastrate) an seine Grenzen kommen würde.

Ich kann mir keine Script-Sprache vorstellen, die auf diesem Power-Hog 
zu langsam ist, um so ein kleines Tastenfeld abzufragen.

von D a v i d K. (oekel) Benutzerseite


Lesenswert?

Jetzt bin ich noch über folgende Option gestolpert:
https://www.smarthome-tricks.de/esp8266/esp8266-4x4-tastatur-an-analogen-pin-verwenden/

Da ich exakt dieses hier habe:
https://www.conrad.de/de/p/tru-components-drucktastenfeld-tastenfeld-matrix-3-x-4-1-st-2300335.html
(Scheinen bereits Widerstände im KeyPad verbaut zu sein.)

Muss ich wohl nur noch darauf klar kommen, wie das Teilernetzwerk in 
meinem Falle aussieht ;)

Und mit dem Richtigen KeyWord, kommmt man dann hier auch auf bessere 
Beiträge:
Beitrag "Re: Analog Keypad 3x4"

: Bearbeitet durch User
von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

D a v i d K. schrieb:
> 
https://www.smarthome-tricks.de/esp8266/esp8266-4x4-tastatur-an-analogen-pin-verwenden/

Würde ich nicht machen, denn der ADC des ESP8266 ist ein grobes 
zittriges Schätzeisen mit bis zu 20% Abweichung. Brauchbar funktioniert 
er nur, wenn WLAN deaktiviert ist, aber um WLAN ein/aus zu schalten muss 
man den Chip rebooten.

: Bearbeitet durch User
von Ron-Hardy G. (ron-hardy)


Angehängte Dateien:

Lesenswert?

oder sowas?

von Sherlock 🕵🏽‍♂️ (rubbel-die-katz)


Lesenswert?

Ron-Hardy G. schrieb:
> oder sowas?

Kann man machen. Du musst dir selbst überlegen, ob du für solche 
einfachen Sachen spezielle IC's neben deinen eigentlich super 
leistungsstarken ESP packen willst.

Das mangelnde Programmierfähigkeiten zunehmend mit mehr Hardware 
erschlagen wird habe ich ja bereits akzeptiert. Ich würde mir die Zeit 
nehmen, mich da rein zu fuchsen und es selbst zu programmieren (ohne 
spezial-IC). Alleine schon aus sportlichem Ehrgeiz (ist ja "nur" Hobby).

: Bearbeitet durch User
von D a v i d K. (oekel) Benutzerseite


Lesenswert?

Sherlock 🕵🏽‍♂️ schrieb:
> Das mangelnde Programmierfähigkeiten zunehmend mit mehr Hardware
> erschlagen wird habe ich ja bereits akzeptiert. Ich würde mir die Zeit
> nehmen, mich da rein zu fuchsen und es selbst zu programmieren (ohne
> spezial-IC). Alleine schon aus sportlichem Ehrgeiz (ist ja "nur" Hobby).

Es gibt einfach extrem viele Baustellen die man als programmieraffiner 
Mensch (gerade wenn man beruflich auch programmiert) angehen möchte. Da 
ist man schon extrem Dankbar wenn man so geniale OpenSource Projekte wie 
Tasmota vorfindet, bei denen mit etwas Konfiguration bereits sehr viel 
funktioniert.

Anders formuliert: Ich spreche hier ja nur 1/7 Anwendungsfälle an, die 
ich mit diesem ESP umsetze. 6/7 funktionieren ja bereits ootb.
Wenn ich jetzt nur aus Ergeiz dieses Problem selber programmieren zu 
wollen auch die Zeit aufbringen muss die anderen 7 Fälle zu lösen 
(geschweigedenn des ganzes IP- und MQTT-Stack) klingelt es nur noch in 
meinem Kopf "nicht das Rad neu erfinden".

Wenn es um autarke ICs geht würde ich es sofort selber schreiben. Bei 
IOT bin ich glücklich über jeden IC, der mir Kleinigkeiten abnimmt.

von D a v i d K. (oekel) Benutzerseite


Lesenswert?

Ron-Hardy G. schrieb:
> oder sowas?

Ich betrachte jetzt Mal den "TCA8418 I2C Controlled Keypad Scan IC" 
genauer.
BreakoutBoard bzw. TH-Variante wäre noch praktisch fals ich keinen 
ähnlichen finde!

Also danke für diesen Hinweis!

EDIT: mit dem HT16K33 habe ich bereits sehr oft gearbeitet. Also komisch 
das ich da nicht auch drauf gekommen bin. Mal schauen, ob es für 
irgendeinen davon einen fertige Tasmota Treiber gibt.

: Bearbeitet durch User
von Peter D. (peda)


Lesenswert?

Typisch läßt man Tastenabfragen mit im Timerinterrupt (Systick) 
erledigen. Darin sollte auch gleichzeitig das Entprellen und 
Komfortfunktionen (langer Druck, Repeat) erfolgen.
Und es kann auch kein Tastendruck verloren gehen, wenn mal die Abfrage 
im Main etwas später erfolgt.

Das ist ja immer ein großes Ärgernis in kommerziellen Geräten, daß man 
besonders geduldig sein muß, weil der Programmierer von Hardware keine 
Ahnung hatte. Aber auch das Gegenteil sieht man oft, daß nicht richtig 
entprellt wird und dann zu viele Drücke registriert werden. Oder 
Geisterdrücke durch elektrostatische Entladungen erfolgen.

von D a v i d K. (oekel) Benutzerseite


Lesenswert?

D a v i d K. schrieb:
> Ron-Hardy G. schrieb:
>> oder sowas?
>
> Ich betrachte jetzt Mal den "TCA8418 I2C Controlled Keypad Scan IC"
> genauer.
> BreakoutBoard bzw. TH-Variante wäre noch praktisch fals ich keinen
> ähnlichen finde!
>
> Also danke für diesen Hinweis!
>
> EDIT: mit dem HT16K33 habe ich bereits sehr oft gearbeitet. Also komisch
> das ich da nicht auch drauf gekommen bin. Mal schauen, ob es für
> irgendeinen davon einen fertige Tasmota Treiber gibt.


Ich werde mal schauen, ob ich mich zwischen den Tagen mit dem SourceCode 
beschäftigen kann.

Habe erst mal 2 Feature-Requests für diese beiden Chips in GitHub auf 
gemacht. Vielleicht habe ich ja Glück und mir kommt jemand zuvor ;)
(Der HT16K33 wird als DisplayMatrix bereits supportes, nur KeyScan finde 
ich nicht)

LG und einen guten Start in die Woche

von Frank K. (fchk)


Lesenswert?

D a v i d K. schrieb:

> Ich betrachte jetzt Mal den "TCA8418 I2C Controlled Keypad Scan IC"
> genauer.
> BreakoutBoard bzw. TH-Variante wäre noch praktisch fals ich keinen
> ähnlichen finde!

Früher hätte man dafür einen Peripherial Interface Controller (PIC)(*) 
genommen und den entsprechend programmiert. Das geht heute immer noch. 
Und Microchip-typisch bekommst Du viele Typen auch noch als DIL.

(*) Das ist der Namensursprung. Die ersten PIC16C.. waren als 
IO-Controller gedacht.

fchk

von D a v i d K. (oekel) Benutzerseite


Lesenswert?

Frank K. schrieb:

> (*) Das ist der Namensursprung. Die ersten PIC16C.. waren als
> IO-Controller gedacht.

Man lernt nie aus. Hab erst ein mal in meinem Leben einen PIC 
programmiert.
(War glaube eine alternative DMX Software einen mini 
Par-LED-Scheinwerfers)
Gute 15 Jahre her.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.