Hi Stephan,
danke für die Antwort.
Also so (korrigierte Version):
Grüße
Die Platine kann über einen Pin (JD, Jack Detect) den Status (Kopfhörer eingesteckt / nicht eingesteckt) an den Arduino weitergeben. Darüber kann man dann ggf. die Lautstärke absenken etc. Ist aber momentan nicht in der FW implementiert.
Ich habe die zwei wichtigen Infos aus dem anderen Thread hier her geholt und den Thread dann geschlossen.
Um einen kleinen Beitrag beizusteuern, habe ich den folgenden Code geschrieben, den man so in die aktuelle Version übernehmen könnte. Der wird nur aktiviert wenn man das JACKDETECT rauskommentiert. Habe mich da an dem FIVEBUTTON Mode orientiert.
Wenn Kopfhörer eingesteckt werden, wird eine Initiale Lautstärke für Kopfhörer aktiviert. Gleichzeitig kann im Kopfhörermodus nicht über eine festgelegte Lautstärke erhöht werden. Wenn man die Kopfhörer rausgesteckt wird alles wieder zurückgesetzt.
Bei mir funktioniert es aber ich würde mich freuen, wenn jemand den Code testen könnte.
Edit: Ein Jumperkabel geht vom JD der Kopfhörerbuchsenplatine zu einem offenen Digitalen Pin an Thorsten’s Platine, in meinem Fall Pin 8.
/* -------------------------> Vor dem Setup <---------------------------- */
// uncomment the below line to enable jack detected max volume support
// #define JACKDETECT
#ifdef JACKDETECT
// Definition des Jackdetect Pins
#define jdPin 8
#endif
#ifdef JACKDETECT
// Variablen für Prüfung des Kopfhöreranschlusses
int jdMaxVolume = 15 ; // Maximale Lautstärke wenn Kopfhörer angeschlossen ist
int jdInitVolume = 10 ; // Initiale Lautstärke wenn Kopfhörer angeschlossen ist
int jackDetectState = HIGH ; // aktueller Status - ob Kopfhörer angeschlossen ist
int lastJackDetectState = HIGH; // vorhergehender Status - ob Kopfhörer angeschlossen ist
int beforeJackdetectVolume = 10; // Lautstärke bevor Kopfhörer angeschlossen wurden
int beforeJackdetectMaxVolume = 10; // Maximale Lautstärke bevor Kopfhörer angeschlossen wurden
#endif
/* -------------------------> Im Setup <---------------------------- */
#ifdef JACKDETECT
// JackDetect Pin
pinMode(jdPin, INPUT_PULLUP);
#endif
/* -------------------------> Im Loop <---------------------------- */
#ifdef JACKDETECT
// Prüfung und Aktualisierung des Köpfhöreranschlusses
// Aktuellen jackdetect Status einlesen
jackDetectState = digitalRead(jdPin);
// Vergleich zwischen aktuellem und vorhergehendem Status
if (jackDetectState != lastJackDetectState) {
// Wenn Status sich geändert hat
if (jackDetectState == LOW) {
// Wenn aktueller Stauts LOW, dann ist der Kopfhörer angeschlossen
beforeJackdetectVolume = volume; // Speichern der Lautstärke bevor Kopfhörer angeschlossen wurden
beforeJackdetectMaxVolume = mySettings.maxVolume; // Speichern der aktuellen Maximalen Lautstärke - bevor Kopfhörer angeschlossen sind
mySettings.maxVolume = jdMaxVolume; // Maximale Lautstärke auf Kopfhörermodus geändert
volume = jdInitVolume; // Aktivieren der Initialen Lautstärke bei Anschluss der Kopfhörer - wenn rauskommentiert, wird die maximale Lautstärke im Kopfhörermodus gesetzt
Serial.println(F("Köpfhörer angeschlossen"));
} else {
// Wenn aktueller Stauts HIGH, dann ist der Kopfhörer ausgesteckt
mySettings.maxVolume = beforeJackdetectMaxVolume; // Maximale Lautstärke zurücksetzen
volume = beforeJackdetectVolume;
// volume = mySettings.initVolume; // Alternativ kann man die Initiale Lautstärke beim entfernen des Kopfhörers einstellen lassen
Serial.println(F("Köpfhörer ausgesteckt"));
}
}
// Speichern des akuellen Status als letzten Status für den nächsten Loop
lastJackDetectState = jackDetectState;
#endif
Hallo Thorsten, ich würde gerne eine Deiner Kopfhörerbuchsenplatinen kaufen. Geht das über Paypal? Viele Grüße Michael
Hallo Michi,
schreib dem Thorsten eine mail mit der Bitte.
Erni
Darf man fragen, was das genau für eine Buchse ist? Bzw wo ich diese einzeln beziehen kann? Ich habe vor mir eine eigene Grundplatine zu entwerfen und alle Funktionen, die ich interresant finde einzubauen
Kann jemand was zur Verfügbarkeit sagen?
Ich habe 2 mal bei Thorsten per Mail angefragt, aber leider keine Antwort erhalten. Vielleicht ist er ja im Urlaub oder sowas?
Könntete man auch die Maße und Position der beiden Stiftleisten auf der Kopfhörerbaugruppe haben?
Mein Platine wird mit Kopfhörerbuchse doch zu groß und die Huckepackidee kostet mich kaum Platz.
Als ich Thorsten vor ca 2 Wochen gefragt hane, waren gerade keine Verfügbar.
Ich habe dir jedes mal geantwortet - schau bitte mal in deinem Spam Ordner nach
Neue Buchsen sind jedenfalls da und können verschickt werden.
Hallo,
ist mein Versuch die Kopfhörerverdratung nachzuvollziehen so richtig?
Nur einen kurzen Blick drauf geworfen, Würd sagen des passt.
Hab ich direkt bei Thorsten angefragt - gibt es bei ihm noch mehr als die Tonuino Platine und die Kopfhörerbuchse?
Hat jemand noch eine rumliegen? Ich müsste mein Gehäuse darauf anpassen (3D Druck) und bekomme leider keine Antwort - vemrutlich viel zu tun.
Wäre super wenn sich jemand meldet.
Danke
vor 2 Wochen per Mail und PN hier aber habs gerade noch mal per Mail gesendet - vielen Dank!
Hi zusammen,
großartig, dass es diese Platine gibt!
Leider will das bei mir noch nicht wir gewünscht. Wenn ich den Kopfhörer einstecke, höre ich aus Kopfhörer und Lautsprecher. Stecke ich den Kopfhörer nicht ein, höre ich nichts. Es liegt bestimmt an den Lötstellen, aber vielleicht könnt ihr mir einen Tipp geben, wo ich nachlöten muss. Ich habe alles schon nachgelötet, aber ohne Erfolg. Daher würde mir helfen, wenn ihr mir sagt, welche Pins bei o.g. Problem die wahrscheinlichsten Fehlerquellen sind.
Viele Grüße
Chris
Das Verhalten ist nicht normal, klar. Poste mal bitte ein Foto der Platinenunterseite.
Klar, hier das Bild (und ja, ich weiß… auch beim 5. Tonuino ist noch kein Lötexperte aus mir geworden :/):
Ich muss dir leider sagen, du hast die Komponenten auf die falsche Platinenseite gelötet. Die Seite mit dem Logo ist oben. Da gehören auch die Komponenten hin. Bei den Steckerleisten ist das prinzipiell zu verschmerzen wenn man im Nachhinein auf die Belegung achtet, aber bei der Buchse nicht. Daher rühren deine Probleme. Vergleiche mal dein Bild mit diesem hier:
PS: Die Lötstellen sehen gar nicht sooooo schlecht aus. Du verwendest nur etwas zu viel Lötzinn.
Ha, darüber habe ich tatsächlich null komma gar nicht nachgedacht. Allerdings hatte ich schon vorsorglich eine Platine mehr bestellt, falls ich was zerschieße. Muss ich also nochmal ran morgen. Danke dir
aus Fernost natürlich:
lG