Hello, Guest the thread was viewed17k times and contains 39 replies

last post from ch1ller at the

THEC64 Mini modding: UART Schnittstelle für seriellen Root Zugriff

  • Hallo,


    brauch mal etwas Rat von den Bastel-Profis, da ich mich mit der dazu benötigten Hardware nicht wirklich auskenne.


    Würde gerne meinen C64mini modden, um über eine serielle Schnittstelle auf das Gerät zugreifen zu können.
    Abgesehen davon, dass man natürlich Spiele dann fest drauf kopieren kann, ist es z.B. auch möglich, die unterstützten Joysticks auszulesen bzw. selbst weitere hinzu zu fügen .


    Natürlich muss man das Gerät öffnen und daran rumbasteln, um am vorhandenen Platz eine UART Schnittstelle zu nutzen.


    Eine Anleitung wie man Root Zugriff bekommt gibt es bereits hier:
    http://linux-sunxi.org/Retro_Games_Ltd_RGL001


    Und weitere Infos dazu gibts auch in diesem Thread:
    https://community.thec64.com/d/338-modding-thec64-mini



    Da es aber verschiedene UART Dongles/Module gibt, würde mich natürlich interessieren, wo bei denen der Unterschied ist bzw. welche(s) das sinnvollste ist oder mit welchem sich besser arbeiten lässt, bzw welches vielleicht gar nicht geht oder welches auch für eine zukünftige Nutzung gut ist.



    Das sind mal welche, die ich jetzt gefunden hab:


    -Micro-USB zu UART TTL - CP2102 Seriell Adapter Modul Arduino 5V 3.3V
    -USB-TTL Serial Modul FT232RL FTDI 3,3V und 5V ISP USB Arduino Pro Mini Adapter (das hier hat zumindest einer beim thec64 mini forum gepostet)
    -PL2303HX Kabel FTDI USB to TTL Konverter Modul Adapter Arduino zu UART RS232




    CP2102-Modul.jpgFT232RLFTDI-Modul.jpgPL2303HX-Kabel.jpg



    Wie handhabt Ihr sowas generell? Baut Ihr die Dongels fest ein oder so, dass man sie bei Bedarf anstecken kann und so auch bei anderen Geräten nutzen kann?


    Für eine endgültige Lösung hab ich mich aber aktuell noch nicht entschieden, denn das setzt ja auch voraus, dass man natürlich das Gehäuse bearbeiten muss.
    (Was letztenendes natürlich am sinnvollsten ist, da man ja nid jedesmal das Gerät aufschrauben will, wenn man darauf zugreifen will)


    Gruß Marcel

  • ich denke ich warte bis es eine "custom firmware" gibt und fang jetzt (noch) nicht an zu basteln...

    Hast Du dann nicht das Problem, dass bei jedem Bugfix oder Firmware Update die Custom Firmware obsolet wird? Zumal ja noch div. Sachen angekündigt sind:

    Planned Changes for upcoming firmware includes:

    – Choose from a selection of disks on a USB memory stick
    – Allow multi-disk files/games to be easily accessed and switched between


    Davon sollte ja eig. schon was im "aktuellen/nächsten" FW Update kommen, kam aber erst ein 2-Player Joystick Fix
    (hatte selbst z.B. Probleme bei IK+, da haste dich gegenseitig gesteuert/blockiert LOL)

  • Hi ch1ller,


    Du musst darauf achten, daß Du die 3.3V Variante benutzt, bzw. (falls selektierbar - 3.3V einstellst) - ansonsten wirst Du höchstwahrscheinlich was kaputt machen.


    Ansonsten:


    CP2102 - Windoof kennt den Silicon Labs Treiber nicht von Haus aus (Zumindest 7 nicht) - den musst Du dann Installieren.
    FTDI - sollte sofort erkannt werden.


    Ansonsten tuen die deiden sich eigentlich gar nichts.
    Läuft halt!


    Das PL2303HX ist cool - brauchst Du aber nicht (es sei denn Du willst mit dem Pin Header Arbeiten) - ist halt teurer.
    Der wirkliche Vorteil: Du kannst bis 12MBit über die TTL jagen.... cool wenn Du selbst was machst - für eine serielle mit 115200 einfach Oversized.


    Also ob FTDI oder Silicon Labs ist egal - sind beide gut.
    Einen Prolific würde ich jetzt nicht unbedingt nehmen ... ja die gehen auch .... aber wenn ich Probs habe ist es ein Prolific ....
    ABER: 3.3V !!!!!

  • https://www.ebay.com/itm/252079820279 reicht vollkommen aus... :D
    die FTDI Jungs mag ich nicht mehr, seit dem sie diese Selbstzerstörung eingebaut hatten.
    Wobei ich die CH340G lieber habe.

  • Ah cool danke für die Info....


    Hi ch1ller,


    Du musst darauf achten, daß Du die 3.3V Variante benutzt, bzw. (falls selektierbar - 3.3V einstellst) - ansonsten wirst Du höchstwahrscheinlich was kaputt machen.

    Okay, ja, das FTDI Modul hat dafür ja nen Jumper... Sollte also gut gehen :)


    CP2102 - Windoof kennt den Silicon Labs Treiber nicht von Haus aus (Zumindest 7 nicht) - den musst Du dann Installieren.


    FTDI - sollte sofort erkannt werden

    Das spricht mal klar für den FTDI ... Nutze noch Windows 7 :) Hab aber inzwischen auch irgendwo noch gelesen dass der FTDI auch bei Linux weniger problematisch ist wegen Treiber weil auch überall mit drinnen. Und auch was das Löten angeht, soll es bei dem besser sein. Na dann hab ich ja jetzt meinen Kandidaten Auch wenn mir Micro USB lieber gewesen wäre als Mini-USB.. Ein Mini-USB Kabel muss ich inzwischen immer erst suchen... X/


    Das PL2303HX ist cool - brauchst Du aber nicht (es sei denn Du willst mit dem Pin Header Arbeiten) - ist halt teurer.


    Der wirkliche Vorteil: Du kannst bis 12MBit über die TTL jagen.... cool wenn Du selbst was machst - für eine serielle mit 115200 einfach Oversized.

    Das PL2303HX-Kabel dachte ich mir ggf. noch als Zusatz, man weiß ja dann nie, ob man sowas mal wieder auf die Schnelle brauch.. Wird wohl besser sein, das FTDI Modul auch fest im C64mini zu platzieren.. (dann gehts auch nicht verloren lol) :rolleyes:


    Einen Prolific würde ich jetzt nicht unbedingt nehmen ... ja die gehen auch .... aber wenn ich Probs habe ist es ein Prolific ....

    Stimmt den hatte ich zwischenzeitlich auch noch gesehen.... Aber gut zu wissen :)

  • Achtung, das C64 Mini Forum soll wohl Ende der Woche geschlossen werden. Vielleicht sollte man den Modding-Thread dort irgendwie sichern...

    Hat schon einer getan - zumindest mit dem ersten Post :)


    As the forum is about to close I've recreated the first post at Lemon64


    Hab mir zwar die Seite zu dem Thread mal gespeichert aber das ist nicht das gleiche..


    Gibt ja auch andere interessante Threads die dann weg fallen... z.B.


    - You can load D81 images,Well I can No Problem https://community.thec64.com/d…ges-well-i-can-no-problem
    - Which joysticks work with the C64 Mini? (my list) https://community.thec64.com/d…with-the-c64-mini-my-list
    - Joysticks/Pads that work on the C64 mini https://community.thec64.com/d…that-work-on-the-c64-mini
    - USB memory stick not detected https://community.thec64.com/d…memory-stick-not-detected
    (da wird z.B auf eine Step 4 Step Anleitung und Programm hin verwiesen, die einer eroiert hat, da nur fat32 nicht ausreichend ist was das formattieren des sticks für den c64 mini angeht.
    https://gurce.net/c64mini/doku…ormatting_your_usb_sticks)

  • https://www.ebay.com/itm/252079820279 reicht vollkommen aus... :D
    die FTDI Jungs mag ich nicht mehr, seit dem sie diese Selbstzerstörung eingebaut hatten.
    Wobei ich die CH340G lieber habe.

    Selbstzerstörung???


    Was mich bei dem (und den anderen ähnlichen) Adaptern interessieren würde. Sind ja 4 Leitungen , GND, RX, TX und 5V...
    Wie ist das dann bei den Geräten die 3.3V und nicht 5V haben? Sind die Adapter so schlau das selbst auszuwählen/zu erkennen oder darf man diese dort dann nicht verwenden?
    Im Fall vom C64mini brauchts ja 3.3V.. könnte ich diesen Adapter dann überhaupt nutzen?



    Aha.. und sie sind sich alle mal wieder (un)einig...
    Die einen sagen RX un TX müssen über Kreuz verbunden werden, die anderen sagen nee direkt RX->RX, TX->TX... ?( Aber wer hat nun Recht...
    Und "You must not connect 3.3V or VBUS, if the other (USB end is powered through the USB.)" ?(
    Dann müsste es mit dem Adapter gehen und man nutzt nur 3 Leitungen davon und lässt den 5V Strang ganz weg.


    Ach wie ich das liebe... :huh:

  • Kommt drauf an ob du dein Board extern mit Spannung versorgst.


    Hier wird das etwas beschrieben:
    https://codechief.wordpress.co…-serial-debug-connection/


    Normal brauchst du TX, RX und GND. Wenn das Board mit extra Spannungsversorgung arbeitet.

  • Selbstzerstörung???

    FTDI Windoof Treiber (durch automatisches Windows Update kam dieser mal rein) zerstörten Fake FTDI Chips. Das gab einen großen Aufschrei in der Community, weil diverse Development Board (mit Fakechips) einfach kaputt (gebrickt) wurden. Und Niemand wusste anfangs warum.
    Da vielen nicht bewusst war, dass in ihren Geräte Fake Chips verbaut waren, war das ganze umso schlimmer.
    FTDI nahm dann das zerstörerische Feature des Treibers wieder raus.


    Edit: https://hackaday.com/2014/10/2…ling-fake-chips/#comments

  • Kommt drauf an ob du dein Board extern mit Spannung versorgst

    Glaub ich steh da wohl generell etwas auf dem Schlauch.. LOL..


    Der C64mini wird doch sowieso über seinen USB-Anschluss mit Strom versorgt oder aaah.. Geht der Zugriff auf das Nand evtl auch ohne dass der C64mini selbst mit Strom versorgt wird/an ist, wenn man über die UART Schnittstelle das Ganze mit Strom versorgt? Das wäre jetzt das einzige, was mir dazu einfallen würde, denn das FTDI Modul wird ja über seinen eigenen USB Anschluss ebenfalls mit Strom versorgt (oder liegt evtl. hier mein Denkfehler?).

  • aber wie verhält sich das jetzt beim PL2303HX Kabel/Adapter ?


    Ich seh überall nur welche mit 5V am Ende, heisst das, dass der ganze Adapter auf 5V Basis arbeitet oder erkennt er das intern dass 3.3V zum Betrieb benötigt/genutzt wird?

    normal haben die PL2303HX (wie die FTDI und CH340G - die ich kenne) neben dem 5V Ausgang auch einen 3.3V Ausgang
    Meist verbinde ich nur RX,TX,GND - dann nimmt der TTL-Adapter seine 5V aus dem USB-Port und die Platine/das SBC/der Pi
    nutzt dann seinen TTL-Level. Ich gehe dann immer von aus, dass die 3.3V (evtl. auch mal vom Arduino oder NodeMCU) dann zur Kommunikation mit dem TTL-USB-Dongle langen.
    Bis jetzt hat es immer geklappt..... wenn ich mal 3.3v oder 5V verbunden habe, dann mit dem entsprechenden VCC-in der Platine - jeweils ob die 3.3v oder 5v brauch - aber nur solange die Platine nicht eh schon ueber einen anderen Connector (z.B. MicroUSB) Strom erhaelt.

  • normal haben die PL2303HX (wie die FTDI und CH340G - die ich kenne) neben dem 5V Ausgang auch einen 3.3V AusgangMeist verbinde ich nur RX,TX,GND - dann nimmt der TTL-Adapter seine 5V aus dem USB-Port und die Platine/das SBC/der Pi
    nutzt dann seinen TTL-Level. Ich gehe dann immer von aus, dass die 3.3V (evtl. auch mal vom Arduino oder NodeMCU) dann zur Kommunikation mit dem TTL-USB-Dongle langen. Bis jetzt hat es immer geklappt..... wenn ich mal 3.3v oder 5V verbunden habe, dann mit dem entsprechenden VCC-in der Platine - jeweils ob die 3.3v oder 5v brauch - aber nur solange die Platine nicht eh schon ueber einen anderen Connector (z.B. MicroUSB) Strom erhaelt.

    Ähm, ich glaube da hast Du mich nicht richtig verstanden *ggg* Was die offenen Module/Platinen angeht ist das ja kein Problem mit der gezielten Auswahl der 3.3 oder 5V was halt benötigt wird.


    Mit geht es hier um die Kabel-Variante, wo Du eben diese Auswahl nicht treffen kannst (die Platine iss ja fest im Stecker drinnen) und wie sich das dort bei/mit 3.3V Geräten dann verhält.


    PL2303HX-Kabel.jpg

  • Mit geht es hier um die Kabel-Variante, wo Du eben diese Auswahl nicht treffen kannst (die Platine iss ja fest im Stecker drinnen) und wie sich das dort bei/mit 3.3V Geräten dann verhält.

    Adapter in den USB-Port stecken und mit dem Multimeter die Spannung zwischen TxD und GND messen. Schon weisst du, wie deiner eingestellt ist.


    Ich habe einen der so aussieht wie deiner und der liefert auf TxD gemessene 3,3V Pegel. Nur der Pegel dort interessiert weil du die +5V vom Adapter nur dort verwenden kannst wo der Adapter auch gleich die ganze Schaltung mit Strom versorgen soll. Wird die Schaltung von woanders versorgt dürfen die +5V vom Adapter nicht benutzt werden. In diesem Falle werden nur TxD, RxD und GND verbunden.



    Die einen sagen RX un TX müssen über Kreuz verbunden werden, die anderen sagen nee direkt RX->RX, TX->TX... Aber wer hat nun Recht...

    Aus TxD fallen die Bits raus... Also muss TxD mit RxD auf der anderen Seite verbunden werden und umgekehrt.



    PL2303HX wuerde ich nicht mehr nehmen, da ich bei Windows 10 keinen Treiber mehr gefunden hatte.

    Kommt auf das OS an, unter Linux funktionieren sie problemlos. Von dem Chip gibt es allerdings auch eine Menge Fakes. Üblicherweise funktionieren die aber.