C64 RetroPie Umbau

Mehr Sein als Schein 😉

Ein guter Freund kam mit einem Projekt um die Ecke, welches zumindest für mich nicht alltäglich erschien. Es ging darum einen Raspberry Pi gekonnt in ein Commodore C64 Gehäuse einzubauen um diesen später mit dem RetroPie System zu bespielen und in eine Multifunktions-Emulations Spielekonsole zu verwandeln.
Ohne den 3D Drucker wäre das ganze Unterfangen komplizierter geworden, so wurde es zwar nicht zu einem Kinderspiel aber dennoch zu einem anspruchsvollen Werk, was Maßgenauigkeit anbetraf.

Offcamera wurde erstmal obligatorisch die entsprechenden Öffnungen und Schraubenaufnahmen im Gehäuse vermessen und die Daten in Sketchup übernommen, in dem die einzelnen Teile entstanden sind:

Ein erster Test: die 2 großen Öffnungen auf der Rückseite des C64 ausfüllen für die spätere Steckerkonsole

(vom ersten Einpassen habe ich leider kein Bild gemacht)

Die komplette Anschlusskonsole für Die C64 Rückseite

Alle Kappen um die verbleibenden Öffnungen abzudecken

Ok, ran an den Slicer und ab zur Plastik-Schmelzmaschine…

IMG_3825
IMG_3824

IMG_3823

IMG_4146

Die Keyrah V2 Platine – USB zu C64 Tastaturwandler

Die gibts hier zu kaufen

IMG_3828

Die beiden USB Buchsen sind mit kurzen Leitungen versehen und so mit dem Pi verbunden.

IMG_3826 IMG_3827 IMG_3830

DC Buchse für 5 Volt Netzteil

Alles am Platz und passt exakt … gut gemessen 😉

IMG_4145IMG_4144

Finale – alle Kabel verlegt und gebunden. Gehäuse kann geschlossen werden.

Ein paar kleine Details:

  • am Raspberry Pi wurde eine Stiftleiste an den 2 unbestückten Pins für den Powertaster eingelötet und dort der rote Taster auf der Rückseite des Gehäuses angeschlossen
  • Da wir ein gerregeltes 5 Volt Netzteil verwendet haben wurde die DC Buchse direkt mit den Pins auf der GPIO Leiste des Raspberry Pi verbunden
  • Wir haben direkt eine USB Leitung an die Keyrah Platine gelötet

Was bleibt noch zu sagen? Alle Teile passten so ziemlich auf Anhieb ohne große Nachbearbeitung mit Feile und Schmiergelpapier, wie es sonst schon oft der Fall war. Es steht und fällt sehr viel mit der Komplexität der Teile und der Möglichkeit im Vorfeld alles genau auszumessen. Da das gut von der Hand ging, war auch das genaue Erstellen der Teile nicht so schwer.

Anbei noch ein paar weitere Impressionen:

IMG_4135 IMG_4139 IMG_4137 IMG_4138 IMG_4136 IMG_4142 IMG_4141 IMG_4149 IMG_4143 IMG_4147 IMG_4148 IMG_4150
<
>

Alles restlichen Bauteile wie USB Buchsen usw. wurden bei Pollin Elektronik gefunden.

Das Projekt ist hier zu finden. Über Nachbauten würde ich mich freuen (und gerne auch über Feedback!!)
Vielen Dank an Sebastian Scholten, dessen Idee die Sache hier war.

Nachtrag (17.07.2016):

Für die USB „Buchsen-Halteklammer“ habe ich M3 Schrauben verwendet, ca. 1 cm lang (mit Senkkopf). Die anderen Schrauben sind aus meinem „PC-Schrauben Fundus“, sollten aber glaub ich auch M3 gewesen sein, die sehr schön in die Montageaufnahmen im C64 Boden passten.

Nachtrag:

Ich freue mich immer wenn es Leute gibt, die Spaß an ähnlichen Dingen haben und auch mal etwas nachbauen, was hier zum Besten gegegeben wird: https://steffenweise.wordpress.com/2016/07/31/c314-neuer-wein-in-alten-schlaeuchen/

VN:F [1.9.22_1171]
Rating: 4.3/5 (4 votes cast)

Balkonbox2.0 – Neue Funktionen und Technik (Kanisterüberwachung inkl.)

… Balkonbox since 2008

Angefangen hat es mit einer Richtfunkverbindung um die Kabel-D Leitung von Bekannten mit zu nutzen, danach diente sie als erster Aussenposten, bestückt mit Sensoren, für die Haussteuerung mit dem Allnet-Funksteuercomputer, danach wurde sie lange Zeit nur als Gehäuse für die Parkplatz-Cam genutzt – jetzt soll in ihr wieder etwas mehr zur Sache gehen!

Ausschlaggebend für das Hardwareupdate ist die Aktion mit der Bewässerungsanlage und dem Wunsch, den Füllstand des Wasserkanisters zu überwachen.

Also nehme man:

  • einen Raspberry Pi + Kameramodul als neues Gehirn und Ersatz für die China-VGA IP-Kamera (Aviosys)
  • einen Arduino Nano für den Anschluss der Sensorik für Kanisterüberwachung und weitere Dinge
  • Drucksensor für die Füllstandsmessung – den Günstigsten von Reichelt, der leider allerdings nicht so empfindlich ist – aber ausreichend (wird gleich erklärt)
  • Nebenbei einen Tageslichtsensor (Licht-Spannungswandler, noch vorhanden – lag jahrelang im Keller rum) als besseren Lichtsensor für die Homematic-Installation
  • Teile aus einem alten Blutdruckmessgerät (1 € Ebay) – unteranderem Mini-Luftpumpe (nur die Ruhe erzähle ich gleich was zu)
  • Schlauch, übrig geblieben von Blumatset + T-Stücke

Ziel des Ganzen ist es die Messwerte der Sensoren in Homematic Systemvariablen zu speichern. Das habe ich mit folgendem Weg realisiert:

Sensor –> Arduino Nano <-USB-> Python-CGI Server auf RasPi <-LAN-> Homematic-Skript welches CGI-Skript pollt und Wert in Systemvariable speichert

Die Methode klappt sehr zuverlässig und nun jetzt schon seit 2 Woche ungebrochen. Sourcen möchte ich diesmal auch Teilen…

Kanister-Pegelmessung Hintergrundinfo zur Steigerung der allegemeinen Verwirrung:
Als Messmethode für den Füllstand des Kanisters wollte ich nicht sowas schnödes wie einen einfachen Pegelsensor verwenden 😉 Damit es spannend bleibt, habe ich mich für die Messung per Differenzdruck entschieden – deswegen auch die Miniluftpumpe und als Sensor einen Drucksensor am Arduino.
Die Methode ansich ist relativ schlüssig und auch so gesehen sehr simpel: Am Deckel des Kanisters wird ein Innenrohr (braunes Fallrohr aus dem Baumarkt) angeklebt (mit Silikon). Der Kanisterdeckel bekommt mittig einen Schlauanschluss für den Druckschlauch und im Aussenbereich (neben dem Innenrohr) noch einige kleinere Bohrungen zum Druckausgeleich für das entnommene Wasser der Bewässerungsanlage, damit kein Unterdruck im Kanister entstehen kann. Wichtig ist, dass diese Konstruktion sehr dicht ist, da der spätere Systemdruck im Rohr relativ hoch ist und die Klebestellen gerne nachgeben nach einiger Zeit. (Habe beim Schlauchanschluss mit Heißkleber diesmal schlechte Erfahrungen gemacht). Kanister wird normal befüllt und der Deckel samt Innenrohr aufgeschraubt. Praktischerweise denke ich gerade aber noch über eine separate Befüllungsöffnung nach, damit man nicht den ganzen Klumpatsch (Sensorkabel, Schlauch,…) immer wieder beim Aufschrauben des Kanisters strapaziert. Durch einen im Innenrohr befestigten Pegelsensor (selbstgebaut aber noch nicht perfekt) kann erkannt werden ob die Röhre frei von Wasser ist, was wichtig ist um den korrekten Druck zu messen. Vor einer Druckmessung pumpt die Minipumpe nun solange Luft in die Innenröhre, bis das gesamte Wasser aus ihr verdränkt wurde, was vom Pegelsensor erkannt wird, der die Pumpe abschaltet. Sollte vor der nächsten Messung die Röhre noch leer sein, bleibt dann logischerweise die Pumpe aus und es wird direkt gemessen. Der Druck, bei leerer Röhre, repräsentiert die Kraft des Wassers was auf die Luftsäule in der Röhre drückt. Je leerer der Kanister desto geringer der Gegendruck, je voller desto höher der Druck.
Der Arduino übernimmt die Steuerung dieser Aufgabe, schaltet die Pumpe entsprechend  und liest die Sensoren. Der Drucksensor repräsentiert seine Messwerte mit einer Spannung von 0-5 Volt die über einen Analog (ADC) Port aufgenommen werden, genauso wie beim Tageslichtsensor (Licht-Spannungswandler) der ebenfalls linear zu gemessenen Helligkeit eine Spannung ausgibt.

Jetzt erstmal ein paar Eindrücke vom Umbau der Balkonbox:


Der Arduino-Nano auf einer Lochrasterplatine aus einem verworfenen anderen Projekt…


Der Licht-Spannungswandler, provisorisch angeschlossen


Rückseite der Platine mit dem Drucksensor


Kanisterdeckel mit angeklebtem Innenrohr


Bau „Luft“ Pegelsensor, unter dem Silikonring befindet sich ein Reedkontakt…


Der Schwimmer des Sensors: eine ehemalige IC-Transportverpackung, unten ein Stück Ferrit-Magnet aus einem alten PC Lüfter. Schwimmer wurde oben zugebrutzelt mitm Feuerzeug…


Kurzer Test des Pegelschalters…


Pegelschalter Test-Geraffel


Sensor wurde nun unten in das Innenrohr geklebt (vorerst mit Heißkleber, da ich momentan noch nicht 100 % überzeugt bin von meinem Pegelsensor – so bekommt man ihn im Gegensatz zu einer Silikonklebung nochmal ab…). Es gibt schon die Überlegeung den Wasserstand einfach mit 2 Elektroden zu messen – aber momentan noch keine Zeit gehabt es umzusetzen…

Jetzt geht es an das Innenleben der Balkonbox:


Die alte IP-Kamera ist schon rausgeflogen – hat jetzt seit 2008 einwandfrei funktioniert. Zweites Flachbandkabel hatte ich noch im Keller, so kann man noch was anderes mit der Kamera anfangen…


Pi wurde schonmal testweise angeschlossen – das alte Kamera Flachbandkabel war etwas zu breit für den Kamerasensor und wurde entsprechend aufgetrent. Die übrigen Kontakte dienen später dem Tageslichtsensor als Verbindungsleitung, der auch im kleinen Nebengehäuse bei der Kamera untergebracht wird…


Eine neue Unterlage schaffen…


Die Raspberry-Pi Kamera … im kleinen Nebengehäuse…


… daneben der Lichtsensor


Das Ende der Flachleitung mit angelöteten Leitungen für den Lichtsensor
Oben links die kleine Pegelwandlerplatine von Sparkfun für den TTY Port des Pi’s (momentan nicht genutzt) und rechts die Pi-Coupler Platine an der der alte 1-Wire Temperatursensor angechlossen wurde, der auch noch in der Balkonbox vorhanden war (wird auch von der Homematic ausgelesen)


Erste Übersicht der Komponenten, unten links die Mini-Luftpumpe


Test der Kamera

So, nun ist alles soweit vorbereitet: die Sachen können wieder raus in die Wildnis!


Alles verbinden…

Erstmal provisorisch verlegt…


Alles wieder zu…

So, der Hardwareteil ist ersmal erledigt – speziell die Sache mit dem Eigenbau-Pegelsensor im Kanister muss sich noch bewähren (bis jetzt siehts nicht gut aus für den Sensor: er neigt zum festhaken und schaltet somit nicht zuverlässig die Pumpe ab). Die Druckmessung liefert aber ansich schon klare Werte die sich gut abgrenzen lassen, so dass ich wenn demnächst mal wieder Zeit übrig ist, einen weiteren Beitrag mit der softwaretechnischen Ansteuerung veröffentlichen werde. (es wird nur mit „einfachstem Wasser gekocht“, da ich ja bekannterweise ja eher programmierfaul bin).

Hier ein Screenprint der Testseite auf der Dash-UI zur Anzeige der Messwerte:


Beim Lichtsensor werde ich auf eine Umrechnung der Skala in Lux verzichten, da es sowieso nicht sonderlich genau ist und nur der Schaltung von Lichtern dient. Bei der Skala des Kanisterdrucks möchte ich das gerne mal in Liter oder zumindest in Prozent umrechnen, damit es greifbarer wird.

Bis dahin, gute Nacht 😉

VN:F [1.9.22_1171]
Rating: 5.0/5 (2 votes cast)

Das Jahr ist wiedermal zu Ende…

Guten Abend – wollte mal meine letzten Worte für dieses Jahr >>bloggen<<

Das Jahr neigt sich mal wieder dem Ende zu und ich habe meiner Meinung nach viel zu wenig zum Besten gegeben hier :-/ Dank zu viel Arbeit und zu wenig Motivation zum Basteln…
Ich hoffe, dass ich mich nächstes Jahr etwas bessern werde und hier wieder ein paar mehr neue Artikel entstehen werden.

Ein paar Vorsätze die mir die Tage durch den Kopf gegangen sind: den Roomba entstauben und evtl. doch mal einen Raspberry Pi draufsetzen?
Bin guter Dinge, dass ich das im nächsten Jahr mal angehen werde – soll in Verbindung mit der Homematic zu einer kleinen Wohnungsdrone werden. Gabs ja schön öfters aber manchmal muss man für den Spass mal das Rad neu erfinden. Die Raspberry Pi Kamera habe ich jedenfalls schon hier und auch erfolgreich getestet. Mal sehen was draus wird 🙂

Bis dahin wünsche ich allen Lesern und Interessenten ein schönes Silvester und einen guten Rutsch nach 2014 !

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)