Gestensteuerung APDS-9960

Begonnen von Klaus Heynen, 31 Juli 2017, 11:15:24

Vorheriges Thema - Nächstes Thema

Klaus Heynen

Ich bin auf der suche nach einem Sensor für die Gestenerkennung auf den Broadcom/Avago APDS-9960 gestoßen.
Leider gibt es dazu noch kein FHEM Modul und ich selber habe nicht die Fähigkeiten eins zu programmieren.
Wenn jemand diese Fähigkeiten sowie Interesse hat ein Modul zu programmieren dann würde ich 2 Platinen mit dem APDS-9960 zum basteln zur Verfügung stellen.
IC Spec.:   https://www.broadcom.com/products/optical-sensors/integrated-ambient-light-and-proximity-sensors/apds-9960

kaihs

Ich könnte mir vorstellen ein Modul dafür zu erstellen. Hast du einen Schaltplan deiner Hardware?
Hast du die Hinweise im Datenblatt bzgl. Spannungsversorgung und Abschirmung gegen Streulicht beachtet?

Gesendet von meinem SM-G935F mit Tapatalk

Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

JoWiemann

#2
Es gibt ein entsprechendes Plugin im EspEasy. Damit könnte ggf. schon die EspBridge - ein Standard Fhem Modul - eine Verbindung zum Fhem herstellen.

Es gibt auch ein Breakout von Sparkfun.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

Klaus Heynen

Hallo, ja es ist das Sparkfun break out das ich meine.
Die Mechanik das hat Kai recht ist enorm wichtig damit es funktioniert.
Die Idee ist eine IR - hochtransparente Scheibe zunehme. und den Sensor auf zu bonden dh. 0-Abstand zur Scheibe.

Klaus Heynen

So, das erste Sparkfun modul ist angekommen.
Aber leider musste ich es erst umbauen, da ein dicker Elko auf der selben Seite wie der Sensor ist.

Also wenn Du Kai möchtest, könnte ich Dir das zuschicken und eine IR Scheibe würde ich vorher auch noch besorgen.
Hier der Link zur Doku.

Was meinst Du?

Grüße

Klaus

kaihs

Beschreibe doch mal, was genau du damit vor hast.
Nur Gestensteuerung? Der Sensor kann ja noch mehr, Farberkennung und Nähe.
Woran soll er angeschlossen werden? Gestensteuerung macht eigentlich nur Sinn, wenn man auf Interrupts des Sensors reagieren kann. Dann ist mehr als nur die I2C Schnittstelle erforderlich.
Mglw. ist es am einfachsten einen Mikrocontroller für die eigentliche Auswertung vorzuschalten der dann bereits rechts, links, oben, unten ausgibt.
Das könnte ein arduino oder ein ESP8266 sein.
Dann wäre wahrscheinlich gar kein fhem Modul mehr nötig.

Gesendet von meinem SM-G935F mit Tapatalk

Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Klaus Heynen

Hallo Kai,

primär möchte ich die Gestensteuerung und Annäherung. Aber ich habe schon überlegt ob man die Farberkennung nutzen kann um unterschiedliche Aktionen auszulösen.

Angeschlossen wird das dann an einen Raspi3, dh. man könnte möglicherweise auch einen Interrupt auswerten.
(Vielleicht gibt es so was ja schon ein universales Interrupt Modul das, wenn ein bestimmter GPIO runtergezogen wird eine definierte Aktion auslöst zB. eine I²C Auswertung um die Details der Auslösung zu ermitteln oder einfach einen FHEM notify).

Klaus Heynen

Habe gerade gesehen das RPI_GPIO schon eine Interrupt Behandlung hat!

kaihs

Ja, über das RPIO_GPIO Modul kann man auf den Interrupt reagieren.

Ein fhem Modul für den Sensor würde im Prinzip darauf hinauslaufen, den C++ Code von Sparkfun in perl zu übersetzen.
Ich bin mir nicht sicher, ob es den Aufwand lohnt, wenn man für 2€ noch einen Arduino nano zusätzlich nehmen kann und dadurch schon eine Lösung hat die zu 90% fertig ist.

Wo willst du das ganze denn einbauen? Hast du da Platzprobleme?

Ich habe übrigens noch dieses Breakout Board gefunden.
Das hat den Vorteil, dass der Sensor allein auf einer Seite sitzt und es anscheinend einen 662X Spannungsregler für eine stabile Stromversorgung hat.
Wofür das 6-Pin IC ist habe ich aber noch nicht ergründen können.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Klaus Heynen

#9
Ich hab auch mal versucht rauszufinden was der 6piner tut, keine Ahnung, er hängt wohl über 10K am INT.
Vielleicht kann man darüber einen LowPower St.-by machen?
So ohne Schaltbild ist das nix, wenn da ein LDPR drauf ist mag das mit 3.3V Versorgung gerade so eben noch funktionieren.

Mein Problem ist Platz, ich habe ein schönes, rundes Gehäuse in dem gerade genug Platz für einen Raspi, OLED und das Sensor Board ist.

Das andere Problem ist dass die Spannung mit über das Ethernetkabel zugeführt wird. WLAN geht nicht da das Gehäuse aus Edelstahl ist.

kaihs

Ich werde mir mal so einen Sensor bestellen.

Allerdings kämpfe ich gerade mit anderen Problemen in meiner Installation, kann also etwas dauern bis ich mich darum kümmern kann.
Kann auch nicht versprechen, ob dann ein Modul dabei herauskommt.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

kaihs

Das Breakout Board mit der Zusatzelektronik das ich oben verlinkt habe ist wahrscheinlich dieses: https://www.dfrobot.com/wiki/index.php/SEN0187_RGB_and_Gesture_Sensor. Und neben dem Voltageregulator sind dann wohl Levelshifter verbaut.
Damit wird es dann 5V kompatibel.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Klaus Heynen

Hallo Kai,

wie gesagt, ich hätte Dir die Sensoren auch gerne geschickt!
Wenn du möchtest dann, schicke ich dir den Sensor den ich schon habe. Bitte Adresse per PN!

Geduld habe ich, wenn's fertig ist , ist es fertig.

Grüße Klaus

kaihs

Hallo,

entschuldige, dass ich mich erst jetzt melde, ich war eine ganze Zeit außer Gefecht.

Ich habe die Sensoren aus China bekommen. Es sind die mit dem Levelshifter gemäß dem Design von DFRobot.
Zum Einstieg habe ich erst mal versucht, die mit dem Beispielcode von Sparkfun an einem Arduino zu testen.
Color und Proximity funktionieren auch, gerade der Gesture Sensor aber nicht.
Es wird einmal bei der Initialisierung ein Interrupt erzeugt und das war es dann, Gesten werden nicht erkannt.

Hast du deine Sensoren mal so getestet?
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Klaus Heynen

Hi Kai,

nee noch nicht, bin im Moment ziemlich eingespannt (Renovierung), daher auch meine späte Antwort. :-(

Grüße Klaus

Klaus Heynen

Hallo Kai,

habe folgendes probiert:
https://justinwoodman.wordpress.com/2014/11/15/using-the-apds-9960-rgb-proximity-and-gesture-sensor-with-the-raspberry-pi-2/
Ist C++ code für RPi2.
Funktioniert so weit, hat aber Optimierungspotential.

Vielleicht kannst Du Dir der Sache ja mal annehmen wenn Du Zeit hast.

Beste Grüße Klaus

kaihs

Danke für den Link, werde ich mir ansehen.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

kaihs

Ich habe die böse Vermutung, dass auf meinen Breakout-Boards nur ein APDS-9900 ist und der kann keine Gestenerkennung. Das würde einiges erklären.
Banana Pi, Add-On Board mit 1.8" TFT LCD und IR-Sender, CULFW V1.61, div. Homematic Komponenten, Pollin Funksteckdosen, Selbstbau CUL433 MHz, Jeelink Clone, EC3000
Selbstbau CUL868MHz für Wireless M-Bus, SIGNALduino mit Logilink Temp.-sensoren und Auriol Wetterstation

Klaus Heynen

wie gesagt wenn du einen brauchst dann schicke ich dir einen