[ESP32] Audio

little.yoda
Site Admin
Beiträge: 407
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 9 Mal
Danksagung erhalten: 20 Mal

Re: [ESP32] Audio

Beitrag von little.yoda » 14.07.2019, 10:07

Du lädst die Dateien genauso hoch, wie das Config-File.
Die Dateien müssen halt nur durchnummeriert sein. 1.mp3 oder 1.wav, 2.mp3,....

SD-Card sollte ohne große Probleme gehen. Muss ich mir nochmal anschauen. Ich hatte etwas in den Bugreports zu der Audio-Libary gelesen.


Ich nutze zur Zeit hauptsächliches dieses ESP32-Model.

Norbert
Beiträge: 154
Registriert: 31.12.2018, 08:07
Danksagung erhalten: 15 Mal

Re: [ESP32] Audio

Beitrag von Norbert » 21.09.2019, 11:22

Hallo Sven,
könntest du das Projekt irgendwie so modifizieren,
dass ich das/die Geräusch(e) über einen Kontakt(e) (Taster, Optokoppler o.ä.) auslösen kann?
Hintergrund:
Meine Schiebebühne soll bimmeln, wenn sie in Fahrt ist, und nur dann.
Also habe ich mir gedacht, ich montiere am Getriebe des Schrittmotors einen "Kontakt",
der immer wieder schaltet, solange sich der Schrittmotor dreht... (Mikroschalter über Nocke oder Lochscheibe mit Optokoppler z.B.)
Ich würde dann nur eine kleine Sounddatei mit einmaligem Glockenschlag speichern.
Damit erreiche ich, dass das Geräusch immer nur dann ertönt, wenn sich die Bühne auch wirklich bewegt.
Ob sie nun lange oder nur kurze Wege zurücklegt, wäre dann wurscht, Sound nur bei Fahrt.
Eine Aufgabe für den Programmierer, einen Kontakteingang zur Auslösung abzufragen...
Allerdings müsste das Ganze nach Ablauf der Sounds wieder in "Bereitschaft" gehen, um beim nächsten Auslösen des Sounds (Kontakt) erneut zu starten.
Eine andere Möglichkeit wäre, das Geräusch im Loop abzuspielen, so lange, bis der Auslösekontakt wieder "öffnet", auf Low geht. Dann könnte ich die Motorspannung zur Steuerung nutzen...

Wat meinste?

VG Norbert

Benutzeravatar
Zoltan
Beiträge: 299
Registriert: 18.09.2018, 11:34
Hat sich bedankt: 9 Mal
Danksagung erhalten: 1 Mal

Re: [ESP32] Audio

Beitrag von Zoltan » 21.09.2019, 13:29

Für diesen speziellen Fall würde ich eher eine mechanische Glocke mit echtem "Sound" verwenden, und nicht programmatisch simulieren... Just my 2 Cents.

Die Idee ist nichtsdestotrotz gut, und es wäre eine Erweiterung des Programms... was man dann auch anderwertig verwenden könnte (zB Radsynchronisation zum Auspuffschlag usw.)

LG Zoltan

little.yoda
Site Admin
Beiträge: 407
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 9 Mal
Danksagung erhalten: 20 Mal

Re: [ESP32] Audio

Beitrag von little.yoda » 21.09.2019, 13:41

Hi

Ist machbar.

Ich müsste dafür die ConnectorGPIO Klasse, die schon für die Taster des Gleisstellwerk genutzt ist, ein wenig aufbohren und die MP3-Klasse mit einer Loop-Funktion erweitern.

Meld dich einfach, wenn du die Sache umsetzen willst, dann schaue ich, dass ich es kurzfristig einbaue.

Gruß,
Sven

Norbert
Beiträge: 154
Registriert: 31.12.2018, 08:07
Danksagung erhalten: 15 Mal

Re: [ESP32] Audio

Beitrag von Norbert » 21.09.2019, 13:59

Oh!

@ Zoltan: Hatte ich schon. Gefällt mir nicht im Ton, nicht in der Örtlichkeit und auch nicht in der Lautstärke.
Elektr. lässt sich alles anpassen, der entscheidende Vorteil.
Aber wie du, dachte ich auch eine eine zukünftige Universalität mit dem ESP32, und da fiel mir dieses Projekt hier wieder ein.

@ Sven:
Eigentlich bin ich schon so weit, warte nur noch auf die neue ESP-Lieferung.
Die Tage kommen ein paar aktuelle Bilder im entsprechenden Thread.
Also, wenn du mal zwischendurch Luft hast, freue mich jedenfalls! :D
Der Auslösung des Sounds wird dann entsprechend deiner Arbeit gestaltet, das ist keine Hürde.

VG N.

little.yoda
Site Admin
Beiträge: 407
Registriert: 14.09.2018, 19:05
Hat sich bedankt: 9 Mal
Danksagung erhalten: 20 Mal

Re: [ESP32] Audio

Beitrag von little.yoda » 22.09.2019, 10:07

Hi

hier schon mal ein Ausblick auf das Konfigfile:

Code: Alles auswählen

    
    "version":"3",
    "cfg":[
        {
            "m":"ap",
            "ssid":"Z21_9053",
            "kanal":"6",
            "pwd":"XXXXXXXXXXXXXXXXX"
        },
        {
            "m":"simulateZ21"
        },
        {
            "m":"webservicewifiscanner"
        },
        {
            "m":"webservicelog"
        },
        {
            "m":"cmdlogger"
        }
    ],
"in": 
	[
		{
			"m": "gpio",
			"gpio":"D4",
			"out": 
			[
				"audio1"
			],
                        "high": "0",
                        "low": "2"
		}
	],


	"out": 
	[
		{
			"id": "audio1", 
			"m":"audioi2s"
		}
		
	],    
    "connector":[
    ]
}

Zur Erklärung:
Das GPIO-Modul aktiviert am Eingangspin einen PULL-UP[1]. Der Taster muss also gegen GND geschalten werden


Code: Alles auswählen

		{
			"m": "gpio",
			"gpio":"D4",
			"out": 
			[
				"audio1"
			],
                        "high": "0",
                        "low": "2"
		}
Übersetzt:
- Wenn sich der Zustand an Pin D4 auf low ändern (Taster gedrückt), sende eine 2 an das Modul audio1
- Wenn sich der Zustand an Pin D4 auf high ändern (Taster nicht mehr gedrückt), sende eine 0 an das Modul audio1


Das Audio Modul (Audio1) interpretiert die Zahlen, die es erhält, als wav oder mp3 Dateiennamen.

Wenn er also eine 2 bekommt (Taster gedruckt), versucht es 2.mp3 oder 2.wav abzuspielen.
Wenn er danach eine 0 bekommt (Taster nicht mehr gedruckt), versucht es 0.mp3 oder 0.wav abzuspielen. Wenn diese Datei nicht existiert, schaltet er sich ab und wartet bis zum nächsten Dateinamen


[1] Todo: Für den ESP32 auch die Möglichkeit Pull-Down einbauen.

Norbert
Beiträge: 154
Registriert: 31.12.2018, 08:07
Danksagung erhalten: 15 Mal

Re: [ESP32] Audio

Beitrag von Norbert » 23.09.2019, 07:29

Prima!

thumbs-up-4007573_640.png
thumbs-up-4007573_640.png (22.76 KiB) 125 mal betrachtet
VG N.

Antworten