Schnup89 / LIVY_RING_G2-Tasmota

25 stars 4 forks source link

Mikrofon ansteuerung #3

Closed Schnup89 closed 3 years ago

Schnup89 commented 3 years ago

Ich mach mal ein neues Issue für das Mikrofon auf. Das Mikrofon ist identifiziert: https://www.mouser.de/datasheet/2/218/pk0641ht4h-1-rev-a-1519664.pdf Dieses hat keinen direkten i2c schnittstelle, von daher wird es wohl über einen chip realisiert. Es liegt nahe dass es der Chip in der nähe ist, ich kann diesen aber nicht identifizieren. Findet einer von euch was dazu? Siehe Bild. 1099-a40ag

greynoO commented 3 years ago

Leider bisher auch nichts dazu gefunden..

blautob commented 3 years ago

hab zwar absolut keine ahnung aber vlt ist das was??? https://www.ti.com/lit/ds/symlink/lmv1099.pdf

blautob commented 3 years ago

sorry wenns ganz daneben ist

Schnup89 commented 3 years ago

Besser zu viel als zu wenig ;) Der verlinkte Chip hat zu viele Pins, der ist es nicht. Ich bleib dran.

Schnup89 commented 3 years ago

Um einen defekt meines gebeutelten PCB's auszuschließen würde ich euch bitten die GPIOs im neuesten Release zu konfigurieren und durchzutesten. Mit "Relay" habt ihr einen Schalter (HIGH/LOW) Mit "ADC Inoput" seht ihr die anliegende Spannung, evtl. fällt euch was auf.

Screenshot_20210705-223953_Lupe

blautob commented 3 years ago

Kannst du hierzu nochmal schreiben was man ganz genau machen muss?

Schnup89 commented 3 years ago

Klar: Die neue .bin aus dem repo im webinterface unter firmwarea update aktualsieren. Nach dem update "konfiguration" auswählen und unter Vorlagen z.B. gpio13 als adc input (und die nächste freie zahl) konfigurieren, dann siehst du wie viel spannung da anliegt. Mit Glück bewegt sich die neue Anzeige auf der ersten Webseite mit der Geräuschkulisse. Alternativ dann GPIO 15 oder die anderen auf "Relay" Modus und prüfen ob da sich was tut.

Schnup89 commented 3 years ago

Der IC ist wohl ein DS1099 ein "Low-Frequency Dual EconOscillator". Der hat zwei Eingänge und zwei Ausgänge. Die beiden Eingänge hängen direkt am ESP PIN (gpio13, gpio15) Weiß einer von euch für was man einen Oscillator IC benötigen könnte?

greynoO commented 3 years ago

Klar: Die neue .bin aus dem repo im webinterface unter firmwarea update aktualsieren. Nach dem update "konfiguration" auswählen und unter Vorlagen z.B. gpio13 als adc input (und die nächste freie zahl) konfigurieren, dann siehst du wie viel spannung da anliegt. Mit Glück bewegt sich die neue Anzeige auf der ersten Webseite mit der Geräuschkulisse. Alternativ dann GPIO 15 oder die anderen auf "Relay" Modus und prüfen ob da sich was tut.

Also bei mir nicht, habe eigentlich alle mal als Relay und ADC Input gesetzt und alle Relays durchgeklickt, stand immer Output 0.

Schnup89 commented 3 years ago

Ok, danke. So wie ich den IC verstehe hat er zwei Inputs und zwei Outputs. Er lege ich den PIN OE1 high wird 3,3V an OUT1 angelegt. Evtl. moduliert, das kann ich nicht nachmessen mit meinem Multimeter. Ich versuche mal rauszufinden wo der OUT1 und OUT2 hingehen

blautob commented 3 years ago

Der IC ist wohl ein DS1099 ein "Low-Frequency Dual EconOscillator". Der hat zwei Eingänge und zwei Ausgänge. Die beiden Eingänge hängen direkt am ESP PIN (gpio13, gpio15) Weiß einer von euch für was man einen Oscillator IC benötigen könnte?

Das Teil hat ja eine Alarmfunktion. Vlt. das oder ist dafür der Piezo?

Schnup89 commented 3 years ago

Ok ich musste das Mikrofon öffnen.... sonst hätte ich nie die Pins nie herausgefunden... Habe gehofft dass ein IC verbaut wurde der einen AlarmPin auslöst wenn das Mikrofon laute Geräusche annimmt. Falsch gedacht, das Audio wird auf dem ESP ausgewertet, dafür muss ich wohl Code schreiben. Aber ich ab die Pins und deren Funktion 👍 gpio17 = clock gpio5 = data (PDM)

Schnup89 commented 3 years ago

Habe den ganzen versucht einen Ton vom Mikrofon per I2S und PDM einzulesen... Nichts... Ich teste morgen Mal ein Sketch ohne tasmota um herauszufinden ob es an tasmota liegt oder eine meinen rudimentären I2S Kenntnissen ;)

Schnup89 commented 3 years ago

Ich bekomme Daten vom Mikrofon! Ich hatte einen Fehler bei der PIN-Zuweisung den ich gestern nicht bemerkt hatte. Thema erledigt, noch etwas Code Verbesserung nötig, nichts großes :)

greynoO commented 3 years ago

Ich bekomme Daten vom Mikrofon! Ich hatte einen Fehler bei der PIN-Zuweisung den ich gestern nicht bemerkt hatte. Thema erledigt, noch etwas Code Verbesserung nötig, nichts großes :)

Super! Gibt es dann auch eine Möglichkeit, die Aufnahme anzuhören oder eher nur "lautes Geräusch erkannt"?

Habe mir heute auch noch einen Ring bei Ebay geschossen, ich glaube an dieses Projekt :D

Schnup89 commented 3 years ago

Aktuell wird nur die Lautstärke in db gemessen, sodass man einen Alarm oder sonstiges im HomeAutomatisierungssystem anlegen kann. Die Möglichkeit Sound-Dateien zu schreiben wir meiner Meinung nach gerade in Tasmota realisiert, da ich aber mit i2s keine Erfahrung habe müsste sich da jemand einarbeiten. Evtl. wird's auch eng mit den Ressourcen da der LivyRing schon mehr Sensoren hat als ein "Normales" Tasmota Gerät.

Schnup89 commented 3 years ago

Letzter Bug gefixed -> es werden jetzt 0db angezeigt wenn das Mikrofon keine Daten liefert. Weitere Bugs mit dem Mikrofon bitte per Issue melden.

greynoO commented 3 years ago

Bei mir wird immer nur 0db angezeigt, was muss ich tun?

blautob commented 3 years ago

Hast du relay 6 an (1)

greynoO commented 3 years ago

Hast du relay 6 an (1)

Ja. Wobei Relay 5 (1) den ADS1115 anscheinend aus schaltet, was ja eigentlich andersherum sein sollte? Aber habe beides getestet, also Relay 6 an und aus.

/Edit: ok nach erneutem Reset geht es!

Schnup89 commented 3 years ago

Added: Sensor JSON Push bei decibelängerun +-20db