Forum: Platinen Bitte um Review meiner erweiterten ONYU-Schaltpläne (Bluetooth-Erweiterung mit CSR8635)


von Martin L. (tempusertempuser)


Angehängte Dateien:

Lesenswert?

Hallo zusammen,

ich arbeite gerade an einem Open-Source-Projekt, bei dem ich die 
ursprüngliche ONYU-Hardware erweitert habe. Ziel war es, einen 
Bluetooth-Audio-Chip (CSR8635) zu integrieren, sodass ich Audio per 
Bluetooth übertragen kann, während die ursprüngliche 
Voice-Assistant-Funktionalität der ONYU erhalten bleibt.

Zur Übersicht habe ich zwei Seiten erstellt:

Seite 1: Original-Schaltplan der ONYU

Seite 2: Meine Erweiterung mit dem CSR8635-Modul und den zusätzlichen 
Anpassungen


Ich würde mich sehr freuen, wenn jemand einen Blick darauf werfen könnte 
und Feedback zu möglichen Fehlern, Verbesserungen oder allgemeinen 
Design-Fragen geben kann.

Vielen Dank im Voraus!

von H. H. (hhinz)


Lesenswert?

Nicht klug, ein Y für ein J vorzumachen.

Und weil sicher nicht jeder das Teil kennt:

https://github.com/justLV/onju-voice




Und das Ausgangsfilter ist schonmal falsch angeschlossen.

: Bearbeitet durch User
von N. M. (mani)


Lesenswert?

Nur kurz drüber geschaut...

* allgemein stellt sich mir die Frage warum man einen Bluetooth Chip 
(v4.0) braucht, wenn da bereits ein ESP32-S3 (v5.0) drauf ist. Wegen den 
Audio Codecs?
* VDD_PADS_1 ist auf 1V8. Darauf beziehen sich dann fast alle digitalen 
Pins. VDD_PADS_2 ist aber auch auf 1V8, also alle digitalen Pins. Die 
SPI Pins hast du aber direkt an den ESP32 oder an die 3V3 gepullt. Ich 
glaube nicht dass das gut ist.
* Die 3 Pins die du für die Taster ausgesucht hast ist 1 mit internem 
pullup, die anderen 2 mit pulldown. Sicher dass das gut ist?
*Auf PIO1 liegt Default beim Einschalten UART_Tx. Sicher dass das gut 
ist einen User Taster gegen 1V8 drauf zu legen?
Wenn der Taster gedrückt und der Chip beim Hochfahren Daten ausgibt dann 
würde der gegen die 1V8 treiben.

Kosmetische Dinge:
* Es fehlen noch einige Bezeichnungen von Bauteilen (Typ, Werte, Namen).
* Am CSR8635 Chip heißen sehr viele Pins PI0. Die Labels der Leitungen 
heißen dann auf einmal PIO_1 o.ä. das ist schlecht weil man jedesmal das 
Datenblatt öffnen muss und dann über die Pin Nummer den richtigen PI0 
suchen muss.
* Allgemein würde ich vielleicht einige der Pins auf Testpunkte legen 
damit du im Notfall dran kommst.


Zu den SPI Registern habe ich keine Doku gefunden. Sicher dass die 
öffentlich sind? Die sprechen immer von einer PC Software über die man 
über einen FTDI (SPI) die Kiste programmieren kann. Du willst das aber 
vermutlich über den ESP.

: Bearbeitet durch User
von Martin L. (tempusertempuser)


Lesenswert?

Hey ja es geht der s3 kann zwar Sprachkommandos aber er kann keine 
a2dp...

Danke für dein review was bedeutet dies?

VDD_PADS_1 ist auf 1V8. Darauf beziehen sich dann fast alle digitalen 
Pins. VDD_PADS_2 ist aber auch auf 1V8, also alle digitalen Pins. Die 
SPI Pins hast du aber direkt an den ESP32 oder an die 3V3 gepullt. Ich 
glaube nicht dass das gut ist.

Ich brauche die spi ja nur um den Bluetooth chip evtl. programmieren zu 
können oder halt über USB ist es ja auch möglich

: Bearbeitet durch User
von N. M. (mani)


Lesenswert?

Martin L. schrieb:
> Danke für dein review was bedeutet dies?
> VDD_PADS_1 ist auf 1V8

Die Pins VDD_PADS_1/2 werden im Datenblatt folgendermaßen beschrieben:
1
S.18:
2
Positive supply input for input/output ports

Sie sind also die Versorgungsspannung der digitalen Inputs/Outputs des 
CSR8635.
Es gibt davon 2 Stück. Je nach PIO muss man also schauen welche der 
Versorgungsspannung für den Pin gilt.
Bei deinen PIO1 ist es VDD_PADS_2 und für PIO2+3 VDD_PADS_1 (S.16).

In deinem Schaltplan sind beide auf 1V8 gelegt.

Du schließt nun allerdings an die 1V8 Pins des CSR8635, 3V3 Pins (z.B. 
SPI) des ESP32 an. Vermutlich mag der CSR8635 das aber garnicht und die 
Pins sterben.

Ich hätte die VDD_PADS auf 3V3 gelegt damit die Pegel zusammenpassen.

Recommended Operating Conditions auf S.71 sagt zumindest das geht.

Martin L. schrieb:
> Ich brauche die spi ja nur um den Bluetooth chip evtl. programmieren zu
> können

Hast du die Registerbeschreibungen dazu?

Martin L. schrieb:
> oder halt über USB ist es ja auch möglich

Hast du in deinem Schaltplan nicht nach außen geführt. Kommst du da 
dran?
Außerdem bin ich mir nicht sicher ob du bei USB Programmierung nicht 
noch einen externen Speicher anschließen müsstest. Zumindest ist es 
vorgesehen einen anzuschließen. Und vermutlich nehmen sie den um evtl 
Einstellungen persistent zu speichern.

: Bearbeitet durch User
von Martin L. (tempusertempuser)


Lesenswert?

Wenn ich die Spi schnittstelle nicht verwende dann passiert aber 
prinzipiell nichts?

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.