Tastendruck für 10 Sek. simulieren, um Staubsaugerroboter auszuschalten

Begonnen von mark79, 24 Januar 2018, 00:14:03

Vorheriges Thema - Nächstes Thema

mark79

Hallo,

ich benötige Hilfe für ein kleines Projekt. :)

Ich habe vor den Xiaomi Staubsaugroboter mittels Mysensors aus und einzuschalten. Da dieser in der Ladestation ständig an ist und ziemlich viel Strom verbraucht.
Wenn man die Ladestation vom Strom abklemmt, bleibt der Robi immer noch für 12 Stunden an und der Akkustand sinkt in der Zeit von 100% auf 80%, bis er dann automatisch herunterfährt.
Dazu erzeugt er auch noch sehr viele Logs, was bestimmt für den Speicher nicht so gut ist.

Der Robi hat zum Ausschalten einen Taster, den man 10 Sekunden lang gedrückt halten muss, bis er herunterfährt. Das einschalten geht genau so.
Der Taster ist hier zu sehen (KEY11): https://raw.githubusercontent.com/dgiese/dustcloud-documentation/master/xiaomi.vacuum.gen1/photos/pcb/pcb-frontside-with-descriptions.jpg

Meine Idee war jetzt was mit MySensors zu basteln und den Taster an den Arduino anzuschließen. Jedoch weiß ich nicht, wie ich am besten den Tastendruck simulieren kann.

Am einfachsten würde das mit einem Relay gehen. Aber das ist ein bisschen Old School und wahrscheinlich zu groß.

Ich habe im Robotor Forum gefragt, ob der Taster active low oder active high ist.
Als Antwort bekam ich:
ZitatAlso gemessen scheint die obere Seite auf Masse zu hängen.
Müsste also im Betrieb an den unteren Pin´s ein PullUp zu messen sein. Musst mal die Spannung messen, denke aber musst Arduino auf 3V3 laufen lassen.

Von Elektronik habe ich nicht so viel Ahnung, ich bin nur gut in nachbauen, aber selber was entwickeln, da hapert es noch...
Kennt sich hier jemand damit aus und würde das nur mit einem Arduino funktionieren? Oder benötigt man dazu ein Mosfet oder Optokoppler?

Ich habe mir gerade mal ein Mysensor NodeMCU Gateway mit einem NRF24 zusammengebaut.
Dazu ein Arduino Pro mini Node mit einem Relay dran und dem RelayActuator.ino Sketch. Das in Fhem eingebunden und das funktioniert schon mal.

Mit unteren Befehlen kann ich das Relay schalten:
set MYSENSOR_11 status1 on
set MYSENSOR_11 status1 off

Das würde ja schon mal funktionieren, aber die Hardware würde ich noch gerne verkleinern, damit es in den Robi passt...
Den Strom würde ich vom Robi irgendwo abzwacken.


Viele Grüße
Mark
Rock64 4GB mit Debian Strech, FHEM im LXC, Sonoff Switches/Touch, HM Thermostate, HMUART/Zigbee2MQTT@MapleCUN, ESP RGBWW Wifi Controller, ESP8266 Door Sensor/Briefkastenwächter, BT CSL Stick, BT iTags, Alexa, FireTV, RPi2 mit Kodi, Xiaomi Vacuum v1/Smarthome Komponenten

mark79

Ich habe im Netz nach ähnlichen Projekten geschaut und viele verwenden ein 4n35 Optokoppler.
Ich habe mit Fritzing ein Schaltbild erstellt.

Würde das so funktionieren?
Rock64 4GB mit Debian Strech, FHEM im LXC, Sonoff Switches/Touch, HM Thermostate, HMUART/Zigbee2MQTT@MapleCUN, ESP RGBWW Wifi Controller, ESP8266 Door Sensor/Briefkastenwächter, BT CSL Stick, BT iTags, Alexa, FireTV, RPi2 mit Kodi, Xiaomi Vacuum v1/Smarthome Komponenten