Hallo Besucher, der Thread wurde 2,6k mal aufgerufen und enthält 10 Antworten

letzter Beitrag von Aut0mat3d am

[Projektvorstellung] BMC64 Adapterboard

  • Grüß Euch!

    Vor gut einem Jahr bin ich auf das BMC64 von Randy Rossi gestoßen und war hin und weg.

    Nach einiger Rücksprache mit Randy ist über die Zeit ein kleines Hardware-Projekt gewachsen, und ich bin kurz vor der Bestellung der (hoffentlich) finalen Prototypen.


    Es gibt ja schon mindestens zwei Adapterboards um einen Raspberry Pi in einem original C64 Gehäuse mit klassischen Joysticks und original Tastatur zu betreiben.

    Leider ist da kein Schutz der Ports des Raspberry vorgesehen, es gibt keine einfache Möglichkeit Paddles zu nutzen und ich wollte die Spannungsregelung für die 5V auch mit auf der Platine haben.


    Working Proto1 Top View.jpegBoard-Render_Top.png


    Unterschiede/Neuerungen zu bekannten Boards:

    • Die Joysticks werden über geschützte Porttreiber geführt, Joysticks mit bspw. Dauerfeuer (QuickShot II Turbo) funktionieren
    • Die Analogpins PotX und PotY der Joystickports sind auf einen eigenen Pinheader geführt (hier will ich über ein Sideboard mit Pro Micro einen USB Joystick für VICE bereitstellen - ungetestet)
    • Raspberry Pi kann direkt auf das Board mit 5-8mm Distanzen montiert werden (bei 8mm hat unter dem Pi noch eine Micro-SD Verlängerung Platz)
    • HDMI- Port ist schön von aussen zugängig
    • Später will ich noch ein USB Breakout Board machen um die USB Ports des Pi nach aussen zu führen
    • Versorgung über externes 12V Netzteil und Rundbuchse, Step-Down Wandler für 5.1V onboard (noch ungetestet, am Prototypen ist noch ein Linearregler verbaut)
    • Als Schalter kann ein T80-R (fast wie Original) oder ein billig Schiebeschalter verbaut werden
    • Step Down Wandler für 5.1V und max. 2,5A onboard und max. 15V Eingangsspannung (ungetestet)

    Die Versorgung des Raspberry kann über mehrere Arten erfolgen:

    1. über USB am Raspberry, das Adapterboard wird dann über den Pi versorgt - hier könnte man dann auf Step Down Wandler, Schalter usw verzichten (Minimallösung)
    2. über eine optionale USB-Buchse am Adapterboard oder über eine Platinenklemme
    3. über die GPIO-Pins (hier hab ich eine Brücke vorgesehen), hier ist zu beachten dass dadurch die Sicherung am Raspberry Pi ausser Funktion gesetzt wird.


    Ich hänge euch hier mal ein paar Bilder und das Schematic an und bin gespannt was ihr zu dem Konzept meint.

    ps: an einem der Bilder sieht man den (inzwischen korrigierten) Versatz der Joyports des aktuellen Prototypen - ist ja erst der zweite Lauf ;)

    lg, Rainer

  • Gestern hab ich mal 5 Boards mit dem neuen korrigierten Design bestellt.

    Dazu auch noch Platinen für das Sideboard, das soll folgendes können:


    • 3 USB-A Buchsen über kurze USB Kabel am Pi angeschlossen, am Sideboard über Lötverbindungen
    • 5 Tasten (USB Joystick) welche am BMC64 dann frei konfigurierbar sind - hier will ich Reset, Warp, Cartridge Taste usw nutzen, zusätzlich hab ich Lötanschlüsse für extene/eigene Tasten vorgesehen
    • 4x Analogeingang (die Pins von den DB9 Buchsen) - aktuell sieht das nocht nicht gerade gut in BMC64 aus seitens Skalierung und Werten - kann sein dass ich hier noch Änderungen von Randy bekomme - mal auf seine Antwort warten, im Moment also ohne Funktion
    • Spannungsteiler Analogeingänge ist über Widerstände parametrierbar: 470k (original) oder 10k (alternative) - vieleicht für Eigenbauten von Nutzen
    • Ein Pinheader für Leds, mit Vorwiderstand 440 oder 220 Ohm (über Jumper parametrierbar) - da sollte viel an LEDs mit funktionieren, bspw. rot, grün, blau
    • Für die beiden mir bekannten Varianten des Arduino Pro-Micro hab ich die entsprechenden Footprints berücksichtigt, die lassen sich also einfach 1:1 auflöten
    • Firmware (keine Raketentechnik) wird dann open Source

    Das Ganze wird im linken Bereich des original Gehäuses mit zwei Schrauben befestigt, die Taster und Buchsen nutzen dann den Userport und Cassette-Port


    Sideboard_Board-Render1.png


    Ich hoffe ich hab mich nicht vermessen - hier hab ich halt nur einen C64C zur Verfügung, ein Brotkasten hat es leider nie bis zu mir geschaft, auf den durfte ich mit 15 Lenzen immer nur neidisch hin gucken ;)



    Seitens DB9 Male Buchsen bin ich am Überlegen ob ich nicht eine Alternative zu den aktuell gewählten in Betracht ziehe:

    Ich hab hier viele Buchsen rumliegen die relativ günstig waren aber die Metallführung nicht vernietet haben (also die std. Type mit den klassischen DB9-Verschraubungen).

    Hier werde ich mir wohl Senkkopfschrauben m2,5x8 samt Muttern bestellen und damit das Metall befestigen - ich hoffe das passt auch mit der Blende beim Brotkasten, hier beim C64C kein Problem.


    Platinen und Material bestelle ich bei PCBWay, Komponenten bei LCSC, RS Components, und Conrad, ein paar Dinge dann noch über Ebay und Amazon - ich komme hier auf 6-7 Lieferanten wenn ich ganze Kits weitergeben will.


    Anbei noch die Schaltpläne, Schaltplan Adapterboard wurde noch etwas abgeändert.

  • Ja, das Adapterboard lasse ich vorbestücken und ich könnte sonst den Spannungswandler nicht implementieren.

    Alles verdrahtet wäre ein viel zu großer Aufwand.


    Beim Sideboard ginge es, die paar Widerstände löte ich bei den ersten Boards händisch,sollte die Nachfrage groß genug sein (denke mal nicht), dann lass ich auch vorbestücken.


    Die DIL Komponenten (Pinheader, Schalter, Arduino) sind dann im Kit eh selbst zu Löten.


    Platinen sind schon in Fertigung, Kann sich nur noch um Wochen handeln ;)

  • Gibt es schon eine Preisvorstellung?

    Ich hab mal drüber kalkuliert - hänge das als Excel an:

    Platinen kommen von PCBway, Material von RS Components, Conrad, einem Amazon-Händler und drei Ebay-Händlern.

    Mit eingerechnet hab ich einen Aufschlag um die Prototypen (Extension Board ist jetzt ja schon der dritte Anlauf), im besten Fall komme ich auf eine schwarze Null und hab ein Set hier für mich.


    Bei den DB9 Buchsen kann es eventuell noch etwas günstiger werden, hier muß ich noch ausprobieren ob ich günstige (mit verschraubtem Blech) nehmen kann - hier will ich die std. Schrauben durch M2,5*8mm Senkkopf ersetzen - das sollte sich eigentich ausgehen und formschön bleiben. Mal sehen.


    Sobald ich hier alles habe und auch alles geprüft ist kalkuliere ich nochmal drüber.

    -Soll ja fair bleiben - lieber am Ende etwas günstiger als von Haus aus in der Miese..


    Adapterboard:

    Sideboard:

    Preise Teilesatz: US$ EUR
    Alternativer Schalter 75,00 63,00
    99% Original Schalter 81,00 68,00




    Preise Teilesatz: US$ EUR
    Ohne Arduino 49,00 41,00
    Mit Arduino 58,00 49,00



    Versandkosten/Shipping: US$ EUR

    Österreich
    5,00 Hermes
    Deutschland
    10,00 Hermes
    Europe (Non-EU)
    15,00 Post (Paket, versichert)
  • Es geht voran, habe heute Nacht Bilder der ersten bestückten Platine zur Freigabe erhalten.

    Die Spannung steigt meinerseits (ob ich den Step Down für die 5V richtig dimensioniert habe) ;)

    -hatte mich vor einigen Jahren mal mit Step Down Wandlern beschäftigt und ich bin verblüfft was sich da in der Zwischenzeit seitens Effizienz getan hat (Bauteile werden kleiner, Übertragungsfrequenzen und Anforderungen an die Induktivität + Kapazitäten höher,....)


    Alles an SMD ist also vorbestückt, bleibt nur noch alles an DIL zu löten. Hier hab ich mich bemüht möglichst viel an Freiraum zu den umliegenden Leiterbahnen/Masseflächen zu schaffen, bzw wo es ging die Leiterbahnen an der Oberseite zu führen wo man mit dem Lötkolben gar nicht ran kann.


    Falls sich jemand wundert:

    die gefrästen Slots sind ein Versuch etwas an Wärme von den Kondensatoren weg zu bekommen - keine Ahnung ob das irgendwas bringt, aber die Hardware soll ja so lange wie möglich laufen ;)


    Anbei zwei Bilder von der ersten Platine:

    Adapterboard_TOP_Pre-Run.jpg    Adapterboard_BOT_Pre-Run.jpg

  • Das sieht sehr gut aus. Die Preise sind wohl gerechtfertigt, jedoch frage ich mich, ob man auf die Summe der Einzelteile (RP3B+, Adapterboard, Sideboard, Zubehör) nicht lieber noch ein paar Euro drauflegt und sich gleich ein Ulitmate64 kauft. Für mich fühlt sich das so an als ob das Drumherum aus Buchsen und Logikbausteinen ein Vielfaches des "Kerns" (VICE auf Raspi) kosten würde.

  • Das mag schon sein, wenn ich fertig bin (und Teilesätze rausgeben sollte) kalkuliere ich so und so nochmal durch. Soll fair bleiben und im besten Fall bleibt hier ein Adapter- und Sideboard hier für mich mit einer schwarzen Null.

    -ohne die Zeit für Entwicklung und Programmierung einzurechnen - ist ja ein Spaßprojekt.


    Update:

    Die Platinen sind nun endlich angekommen und ich bin etwas zum Testen gekommen:

    Das BMC Adapterboard funkioniert, scheint also fertig zu sein.

    Der verbaute Step Down Regler arbeitet wirklich gut und hocheffizient. Nach einem Burn-in Test mit ca. 1.9A für 14 Stunden traue ich dem Ding.

    Kurzschluss tue ich dem Ding aber nicht an ;)


    Das Sideboard hab ich mal aufgebaut, Maße stimmen und die Taster sowie Buchsen sind so wie gedacht erreichbar.

    Zwei Kleinigkeiten hab ich korrigiert, sollte ich mal welche nachbestellen wird das mit geändert:

    Typo Top Silkscreen für POT-AX (Schönheitsfehler)

    Jumperreihen hab ich etwas zusammengerückt (bei Verwendung eines Pro Micros in der kleinen Bauform wird aktuell ein gewinkeltes USB Kabel benötigt oder man biegt die DIL-Header etwas)


    Nächste Schritte:

    Firmware für das Sideboard schreiben:

    Die fünf (Userport) Tasten via USB Gamepad an BMC64 weitergeben

    Die vier Achsen als analoge Achsen an BMC64 weitergeben


    Seitens analoger Achsen benötige ich Hilfe, die werden aktuell von BMC64 nicht gehandled/sind nicht konfigurierbar.

    Ein entsprechender Feature Request (Github) sowie Anfragen per Mail blieben bis jetzt unbeantwortet, hier mache ich mir aber noch nicht all zu viel Sorgen - Randy ist oft busy und das kann dauern ;)


    Anbei noch ein Bild vom aktuellen Prototypen, verbaut ist ein Raspberry Pi 3+, das TFT wird über USB versorgt und zieht zusätzliche 600mA, alles Happy.

    Oberhalb des Netzschalters ist ein Flachbandkabel erkennbar: Das ist eine Verlängerung um die SD-Karte auch von aussen zu erreichen (Passt genau zwischen Platine Adapterboard und Raspberry)


    Working Proto2 in Action.jpeg