Forum: Mikrocontroller und Digitale Elektronik Wie Audiosignal/Lautstärke via Microcontroller kontrollieren (digitaler potentiometer?)


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Maurice (mkay1610)


Lesenswert?

Hi,
ich bin Informatiker und habe Spaß an Elektronik, kenne mich mit 
Elektrotechnik aber kaum aus. Ich weiß, was Transistoren sind und dass 
man mit mosfets, pwm und so ströme steuern/lampen dimmen kann, etc. Aber 
mehr auch nicht.

Folgende Situation:
Ich möchte mittels einer Raspi Pi Pico ein altes, nicht 
Bluetooth-Fähiges Logitech-Radio (logitech pure fi express plus) so 
modden, dass ich das Display durch ein 128x64 OLED tausche und die 
Tasten und vorallem der Lautstärkeregler ihre Funktion behalten.

Folgendes bekomme ich alleine hin:
Anzeige auf dem Display, welcher Eingang (BT, Aux) gewählt ist und 
lesen, ob sich der Lautstärkeregler nach links oder rechts dreht, 
knopfdrücke erfassen.

Wobei ich hilfe brauche ist, ich werde ein externes Bluetooth-PCB 
verwenden, welchem ich dann per GPIO und mosfet die Stromzufuhr gebe 
oder nehme, auch das schalten des audio-inputs zum verstärker sollte 
kein problem sein.

Allerdings möchte ich zwischen audioquelle (bt-board oder aux-buchse) 
digital die lautstärke regeln. Wie mache ich das und was brauche ich 
dafür? Ich denke hier an einen (per spi?) digital ansprechbaren 
potentiometer. Kann ich den selber realisieren oder gibt es gute boards 
fertig?

Außerdem: ich probiere grad mehrere bluetooth-empfänger-platinen und ein 
no-go ist die nervige Ansage (chinesische stimme mit akzent "bluetooth 
device has connected successfulleyyy").

Kennt jemand ein gutes Board/Chip, welches einfach nur simpel irgend 
einen kurzen ton von sich gibt, wenn ich mein handy verbinde? Die olle 
Stimme bei voller lautstärke ist mir jetzt schon bei 3 billig boards 
begegnet..

Es gibt Boards, die Schalter für Vol+/Vol-, Nächter/Vorheriger Track, 
Play/pause haben..
Ich hab noch ungefähr 6 verschiedene in Bestellung. Aber ich würd die 
Lautstärke schon echt gerne auf dem Display ausgeben, anstatt "blind" zu 
sein.

: Bearbeitet durch User
von Jonas B. (jibi)


Lesenswert?

Kauf dir halt ein neues Radio, das lohnt doch nicht bei dem Hobel. 
Ansonsten hab ich sowas mal hiermit gemacht:
https://www.amazon.de/gp/product/B08L97XNHZ/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

von Enrico E. (pussy_brauser)


Lesenswert?

Maurice schrieb:
> Die olle Stimme bei voller lautstärke ist mir jetzt schon bei 3 billig
> boards begegnet..

Die kleine Frau mit der Stimme sitzt nicht im Gerät drin, sondern sie 
wird von außen über das Internet zugeführt. Das hat den Vorteil, dass 
man bei einer Änderung des Textes keine großartige Rückrufaktion 
sämtlicher Geräte starten muss.

von Maurice (mkay1610)


Lesenswert?

Danke für den Tipp.

Das Radio hat allerdings sentimentalen wert, da ich das mit nem kumpel 
zusammen in Australien gekauft habe und es ihm gemodded zurückschenken 
möchte..

von Benjamin K. (bentschie)


Lesenswert?

Enrico E. schrieb:
> Die kleine Frau mit der Stimme sitzt nicht im Gerät drin, sondern sie
> wird von außen über das Internet zugeführt. Das hat den Vorteil, dass
> man bei einer Änderung des Textes keine großartige Rückrufaktion
> sämtlicher Geräte starten muss.

Sicher? Zugegeben er sagt jetzt nicht genau welche Platine.
Aber so ein Bluetooth-Modul hat gar keine Internetverbindung.

So ähnlich machen das auch einige Köpfhörer die ich kenne.

Oder meinst du man kann in dem BT-Modul die Sprachausgabe anpassen?

von Maurice (mkay1610)


Lesenswert?

ne, die is definitiv teil der firmware des bt-chips..

meine sennheiser-kopfhörer machen z.B. nur ein ganz kurzes, 
nicht-störendes "connected!". meine soundcore-bt-lautsprecher machen 
lediglich ein kurzes geräusch, auch nicht störend.

aber diese billigen china-chips haben ne nervige frauenstimme, die 
locker 5 sekunden bei voller lautstärke sagt "the bluetooth device is 
ready to pair" oder "the bluetooth device has connected successfully" - 
das nervt schon hart.

: Bearbeitet durch User
von Vanye R. (vanye_rijan)


Angehängte Dateien:

Lesenswert?

https://de.aliexpress.com/i/32802067364.html

Probier mal mit dem PT2257. Der sieht mir ziemlich Idiotensicher aus, 
damit sollten sogar Softwerker klar kommen. :-D

Es davon frueher auch mal mehr ICs, teilweise auch mit Equlizer drin. 
Sind aber heute unmodern geworden weil man alles in Software vor dem DAC 
machen kann.

Vanye

von Michael B. (laberkopp)


Lesenswert?

Maurice schrieb:
> Allerdings möchte ich zwischen audioquelle (bt-board oder aux-buchse)
> digital die lautstärke regeln. Wie mache ich das und was brauche ich
> dafür? Ich denke hier an einen (per spi?) digital ansprechbaren
> potentiometer.

digitale Lautstärkeregler: CS3310 (Cirrus/Crystal +/-5V +31.5..-95.5dB + 
Mute, 0.001 THD+N clickless) PGA2310/2311/2320 (TI, +/-15V +32..-95dB 
0.0003 THD+N, 20 EUR) TC9153=PT2253 (dual 7 bit dual 6 bit Audio up/down 
Inputs, TC9154=PT2254=shift register inputs) BH3532 (Rohm) WM8816 
(Wolfson) TC9235=PT2256 (Toshiba/Princeton 0.3Vrms Stereo -78dB 0.01% 
Loudness VU-Meter) M62429 (Mitsubishi 5V 83dB 0.01% THD) DS1882 (Stereo 
+/-7V 63dB 1.50 EUR) MUSES72320 (Stereo +/-18V 120dB Digikey 12 EUR) 
PT2257 (Princeton Stereo -79dB 0.02% 2Vrms 0.005% 200mVrms) NJU72341 
(Stereo -95dB..+9dB, 4.5-14V, 0.002% SSOP14 2Vrms 7uVnoise) M62429 
(Stereo DIP8) KA2250/S5A2250 SJ2258 (6+Klang) CXA1646/CXA1746/CXA1846 
LC7520/LC7535/LC7536/LC75343 M5241L M51523L M61539/M62446 (6+Klang) 
LV75366 (Stereo) SJ2258 (6 Kanal) R2A15218FP (+Klang)
der Standard für Audio 4 Stereo Eingänge mit Klang und Volume: 
TDA7314=ST2314=DET2314=AT7314=AX2314=CD2314=SC2314F=FL2314FS28=HD2314=HX 
J2314=IT2314=OBL2314=SC2314=SC7314=TM2314=AP2314=AP2600=BT2314=CD3314=CS 
3703=DT2314=ET2314=HL2314=HR2314=HY2314=JR2314=LS2314=LX2314=MC2314=MS67 
14=PM2314=RD2314=RSM2314=SM9614=SSC2314=SV8314=TT7314=TX2314=UE2314=XHF2 
314=YD2314=ZD2314=ADS2314=ZL2314=HBS2314=HYK2314=MXT9114=OC2314 
https://datasheetspdf.com/pdf-file/1077469/SilanMicroelectronics/SC7314S/1
Mischer: SSM2163 (Analog) 
http://www.princeton.com.tw/Portals/0/Product/PT2258.pdf (3 x Stereo 
Lautstärke 0..-79dB, -95dB mute 0.05% THD)

https://www.ebay.de/itm/226223009344
https://www.ebay.de/itm/135408929769

> Kann ich den selber realisieren

Woher sollen wir das wissen was du kannst ? Schaltung passend für den 
Einsatzzweck entwickeln, Platine layouten, Platine hetstellen (lassen), 
Bauteile bestücken, testen  Fehler finden und beheben, nachmessen ob es 
die gewünschten Qualitätsparameter auch erreicht.

> oder gibt es gute boards fertig

Handelsüblich sind LM1036 boards die nicht über SPI/I2C sondern 
Gleichspannung gesteuert werden.


Ganze DSP gibt es: https://www.ebay.de/itm/305726068337

von Maurice (mkay1610)


Lesenswert?

Vanye R. schrieb:
> https://de.aliexpress.com/i/32802067364.html
>
> Probier mal mit dem PT2257. Der sieht mir ziemlich Idiotensicher aus,
> damit sollten sogar Softwerker klar kommen. :-D
>
> Es davon frueher auch mal mehr ICs, teilweise auch mit Equlizer drin.
> Sind aber heute unmodern geworden weil man alles in Software vor dem DAC
> machen kann.
>
> Vanye

@Vanye sieht nach dem aus, wonach ich suche danke.

an die anderen:
Boards mit der nervigen stimme:
https://www.amazon.de/dp/B0B3TJ61M5
https://www.amazon.de/dp/B08T1CY5L6
https://www.amazon.de/dp/B0CQFKFJ92

ich denke noch in ganz einfachen sphären..
könnte ich zB. hingehen und das audio-ground mittels 10 GPIO-Pins und 10 
transistoren über 10 verschiedene fixe widerstände durchschalten, damit 
ich 10 (oder gemischt noch mehr) abstufungen an lautstärke habe?
zB leite ich bei voller lautstärke ground einfach direkt zu ground.
bei 50% lautstärke über einen berechneten wert (25kO) widerstand zu 
ground.
somit müsste ich nicht den widerstand beider signale steuern, sondern 
nur den zu ground. bin ich im gedanken richtig, dass es egal ist, wo in 
einer schaltung der widerstand ist?

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Maurice schrieb:
> könnte ich zB. hingehen und das audio-ground mittels 10 GPIO-Pins und 10
> transistoren über 10 verschiedene fixe widerstände durchschalten, damit
> ich 10 (oder gemischt noch mehr) abstufungen an lautstärke habe?
Wenn man mal die Verzerrungen durch die Sättigung in den Transistoren 
und sonstige Nichtlienaritäten ausser Acht lässt. Das sind nämlich keine 
idealen Schalter. Und schon gar keine für Wechselspannungen.

Ich würde dir dann eher einen Spannungsteiler mit einem LDR empfehlen. 
Und den LDR beleuchtest du mit einer LED, die mit einer (brauchbar 
gefilterten) PWM angesteuert wird. Die LED und den LEDR zusammen in 
einen schwarzen Schrumpfschlauch und die Lautstärkeeinstellung ist mit 5 
Bauteilen erledigt.

von Peter D. (peda)


Lesenswert?

Maurice schrieb:
> somit müsste ich nicht den widerstand beider signale steuern, sondern
> nur den zu ground. bin ich im gedanken richtig, dass es egal ist, wo in
> einer schaltung der widerstand ist?

Wenn Du Mono hören willst, ja.
Aber wozu der riesen Aufwand, der PT2257 ist Dir wohl zu einfach.
Lautstärke will man logarithmisch stellen und das können entsprechende 
ICs nunmal am besten.

von Harald W. (wilhelms)


Lesenswert?

Maurice schrieb:

> aber diese billigen china-chips haben ne nervige frauenstimme, die
> locker 5 sekunden bei voller lautstärke sagt "the bluetooth device is
> ready to pair" oder "the bluetooth device has connected successfully" -
> das nervt schon hart.

Freu Dich doch, das sie das nicht auf Chinesisch sagt. :-)

von Motopick (motopick)


Angehängte Dateien:

Lesenswert?

Maurice schrieb:

> ich denke noch in ganz einfachen sphären..
> könnte ich zB. hingehen und das audio-ground mittels 10 GPIO-Pins und 10
> transistoren über 10 verschiedene fixe widerstände durchschalten, damit
> ich 10 (oder gemischt noch mehr) abstufungen an lautstärke habe?
> zB leite ich bei voller lautstärke ground einfach direkt zu ground.
> bei 50% lautstärke über einen berechneten wert (25kO) widerstand zu
> ground.
> somit müsste ich nicht den widerstand beider signale steuern, sondern
> nur den zu ground. bin ich im gedanken richtig, dass es egal ist, wo in
> einer schaltung der widerstand ist?

So viele Pins musst du dafuer gar nicht verschwenden.
Mit 4 Pins und einem 4066 kannst du schon 16 Lautstaerkestufen schalten.
Damit das ganze eine dem "logarithmischen Poti" angelehnte Kennlinie
bekommt, muss der Spannungsteiler dann noch "geschert" werden.
In der Grafik mal ein Beispiel fuer ein 10 k Poti, dass mit einem
2 k Widerstend belastet, und dadurch die Einstellkennlinie
"geschert" wird.
Fuer Stereo musst du das ganze zwei mal aufbauen. Die Steuersignale
braucht es natuerlich nur einmal. Fuer beide...

Viel Spass dabei!

von Michi S. (mista_s)


Lesenswert?

Maurice schrieb:
> ein no-go ist die nervige Ansage
> (chinesische stimme mit akzent "bluetooth
> device has connected successfulleyyy").

Ja, kann ich nachvollziehen. Wenn Du kein passendes Board mit dezentem 
Ping o.ä. findest, könntest Du, falls das Board die bestehende 
Verbindung auch anders (z.B. per LED) anzeigt, könntest Du diese als 
Trigger verwenden, um die Lautsprecher kurz zu muten, dann bist Du die 
Ansage auch los.

von Wolf17 (wolf17)


Lesenswert?

Maurice schrieb:
> ein no-go ist die nervige Ansage

Datenblatt besorgen und die zuständigen bits in der Ansteuerung ändern.
Bzw keine BT Chips nehmen, wo das nicht dokumentiert ist.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.