welches USB to serial TTL kabel sollte ich kaufen für ein RaspPI 4b

make1234

Cadet 1st Year
Registriert
Feb. 2025
Beiträge
14
Hallo,

Ich nutze momentan ein Thinkpad E580 von 2017 mit Ubuntu 24.04. Ich will ein kleines OS von 0 auf schreiben für den RPI 4b und bin mir unsicher welchen USB to serial TTL Adapter ich kaufen sollte. Kann mir jemand sagen welchen? Danke! :)
 
Erstmal danke für deine Antwort.
Ich habe ein tutorial gefunden, was das alles erklärt mit code https://www.rpi4os.com/
Ich habe mir jetzt einen Pi4b gekauft, ein Netzteil, eine SD Karte und ein HDMI kabel damit man einen monitor anschließen kann.
In dem tutorial wird gesagt, dass man den TTL Adapter braucht, solange man keine printf äquivalente funktion hat, die ausgaben tätigen kann.
Ich weiß nur aus diesem Forum, dass man mit dem Kabel einen seriellen Port am PI erzeugen kann und damit den PI per Konsole ansprechen kann.
Kannst du mir das vielleicht etwas erläutern? Und wieso steht in der Beschreibung bei Amazon nichts von TTL?
 
würd auch erstmal kleiner anfangen mit nem ESP
und diesen dann
in einem iobriker/homeassistant etc
das am raspi läuft integrieren
 
Warum denn? Das tutorial hat sogar den source code und erklärt alles sehr detailliert.
Könnt Ihr mir denn gutes Material so wie das verlinkte tutorial empfehlen für einen Mikrocontroller? Ich habe zwar wenig ahnung von hardware aber ich habe zumindest die theorie schon gehört (digitaltechnik und rechnerorganisation). Ich habe vor das zu wiederholen bevor ich anfange.
 
Wenn Du den Source Code von irgendwo übernimmst, schreibst Du ja nichts "von 0 auf".
Willst Du also nur etwas vorhandenes selber kompilieren? Und wozu benötigst Du dann den Wandler auf seriell?
 
  • Gefällt mir
Reaktionen: ghecko
Nein, wenn du das Kabel angesehen hättest hättest du gelesen, dass es Windows unterstützt und ich geschrieben habe, dass ich Ubuntu 24.04 benutze :)
 
Kannst du mir erklären woher du das weißt? Ich will das gern lernen.
 
Bei dem hochwertigeren steht, dass es RPI5 kompatibel ist, ich habe aber 4b also geht das nicht oder?
 
make1234 schrieb:
dass das Kabel benutzt wird, um das Verhalten von dem Pi4b auf der dev machine anzuzeigen
Das Verhalten vom RPi kannst du aber nicht über RS-232 (seriell) anzeigen. Seriell ist eine alte und langsame Schnittstellenübertragung für Text bzw. ASCII Zeichen. Damit überträgt man im Normafall Kleinstkommandos und Daten für und aus kleinen Sensoren o.ä.
Was du evtl meinst ist damit einen Arduino o.ä. anzuschließen und die Ausgabe von Ihm irgendwo anzuzeigen. Der RPi bzw. der IOBroker kann dann mit dem Arduino kommunizieren und Daten austauschen.
Den RPi überwacht und steuert man dann üblicherweise über eine Netzwerk SSH Verbindung remote oder verbindet Ihn tatsächlich mit Bildschirm, Maus und Tastatur.
Es wäre günstiger, dein Projekt hier kurz vorzustellen und die Absicht, was damit gemacht werden soll. Dann kann man auch zielgerichtet helfen und stochert nicht im Nebel.
 
Okay danke für eure Hilfe.
Also ich bin auf dieses tutorial gestoßen, dass ich verlinkt habe. Ich habe mir die empfohlene Hardware gekauft - bisher: RPI 4B, netzteil, hdmi kabel, SD Karte. Es fehlt noch laut dem tutorial: Monitor, TTL Kabel.
Was ich vorhabe: Ich will das eigenständig programmieren aber wenn ich nicht weiter weiß nach dem recherchieren dann sehe ich mir den source code von dem tutorial an. Außerdem kann ich so mit dem OS rumspielen - also ausprobieren was passiert, wenn ich den code erweitere und ändere.
Ich kann z.B. andere Scheduler Algorithmen ausprobieren etc.

Und ja, das TTL Kabel wird benutzt, damit man "sehen kann, was das PI macht lange bevor wird etwas wie printf haben..."
 
make1234 schrieb:
Nur noch als Info, es gibt keine 'TTL Kabel'. TTL ist Transistor-Transistor-Logik und heisst nichts anderes, die Daten liegen zwischen 0 und 5 V und können von gängigen TTL Schaltkreisen weiterverarbeitet werden. An die 3,3V eines Arduino dürftest du damit z.B. nicht direkt, die 5V würden die Eingänge des 3,3V Gerätes zerstören.
Serielle Datenübertragung erfolgt nach Standard mit den Spannungen (-15V)-(-12V) low, (-12V)-(12V) nicht definiert und (12V)-(15V) high.
Du möchtest scheinbar irgendwas auf dem RPi progrrammieren und dann seriell ausgeben lassen. Welches Gerät soll denn das anzeigen? Das BS des RPi jedenfalls eher nicht, denn dafür gibt es meines Wissens nach keine fertigen Tutorials, weil viel zu komplex.
 
Samurai76 schrieb:
Das Verhalten vom RPi kannst du aber nicht über RS-232 (seriell) anzeigen. Seriell ist eine alte und langsame Schnittstellenübertragung für Text bzw. ASCII Zeichen. Damit überträgt man im Normafall Kleinstkommandos und Daten für und aus kleinen Sensoren o.ä.
Das Beispiel was er verlinkt hat, implementiert ein einfaches "Bare Matel" System auf dem RP, dass anstatt des üblichen Linux gebootet wird. Genau solche einfachen Systeme nutzen gerne die serielle Schnittstelle als Konsole, weil die extrem einfach zu bedienen ist. Darum haben auch fast alles SoC noch eine UART (die Hardware zum Ansteuern der seriellen Schnittstelle) an Board.
Auch wenn man ein Embedded Linux mit Tools wie buildroot aufbaut, ist in der Regel die serielle Konsole der Einstieg. Auch verbreitete Bootloader/Monitore wie U-Boot nutzen die serielle Konsole. Das was der TE will, macht absolut Sinn.

Ich würde zwar für solche Experimente auch eher eine MCU wie einen Raspberry Pico empfehlen, aber nur, weil der Pi5 dafür Overkill ist. Aber man kann auch einen Cortex A76 Kern als MCU missbrauchen....

Samurai76 schrieb:
Nur noch als Info, es gibt keine 'TTL Kabel'. TTL ist Transistor-Transistor-Logik und heisst nichts anderes, die Daten liegen zwischen 0 und 5 V und können von gängigen TTL Schaltkreisen weiterverarbeitet werden. An die 3,3V eines Arduino dürftest du damit z.B. nicht direkt, die 5V würden die Eingänge des 3,3V Gerätes zerstören.
Serielle Datenübertragung erfolgt nach Standard mit den Spannungen (-15V)-(-12V) low, (-12V)-(12V) nicht definiert und (12V)-(15V) high.
"TTL Serial Wandler" o.ä ist eine gängige Bezeichnung für solche USB "Dongles" die keine klassischen RS232 Pegel haben, sondern mit TTL (5V) bzw. LV-TTL (3.3V) Pegeln arbeiten. Die meisten dieser Teile kann man zwischen 5V und 3.3V umschalten.
Wer im Bereich Embedded/MCU/ usw. unterwegs ist, weiß sofort was mit "TTL Serial Wandler" gemeint ist...

make1234 schrieb:
Also ich bin auf dieses tutorial gestoßen, dass ich verlinkt habe.
Viel Erfolg damit.

ghecko schrieb:
Für Windows gibt es Treiber, unter Linux läuft es einfach so...
Typische Pauschalaussage. Diese Dongles unterstützen das USB-CDC Protokoll. Beide Systeme brauchen dafür einen Treiber, den sie aber von Hause aus mitbringen.

Ältere Versionen von Windows hatten nur das Problem, das Microsoft den Treiber nur installierte, wenn es die USB VID/PID in seiner Datenbank hatte. Daher musste man entweder eine INF Datei bereitstellen oder Tools wie Zadic benutzen. Das ist aber seit Windows 10 nicht mehr der Fall. Es lädt USB Treiber für jedes Gerät, dass die richtige USB Klassifikation ausgibt , das gilt nicht nur für Serial Dongles, sondern auch z.B. für USB Netzwerktreiber die dem USB-NCM Protokoll folgen.

Ich habe jedenfalls seit Jahren kein Gerät mehr gehabt, dass nicht sofort von beiden Systemen (Linux und Windows) erkannt wurde, das gilt auch z.B. für Boards mit integrierter USB-CDC Emulation, wie etwa dem Raspberry Pico Boards mit MicroPython.

make1234 schrieb:
Nein, wenn du das Kabel angesehen hättest hättest du gelesen, dass es Windows unterstützt und ich geschrieben habe, dass ich Ubuntu 24.04 benutze
Wie eben schon gesagt, geht so ziemlich jedes dieser Kabel, außer man erwischt mal ein "Dead-on-Arrival" Exemplar, was bei dieser ganzen China-Ware schon mal passieren kann.
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: make1234
Zurück
Oben