Donnerstag, 27. Juli 2017

KiCad auf Ubuntu selbst kompilieren

Ich möchte einige Änderungen in KiCad einfügen und dazu will ich mir die aktuellste Version aus dem Sourcecode übersetzen. Das ganze werde ich mit Ubuntu 17.4 durchführen. Dazu benötigen wir aber erst mal ein paar zusätzliche Funktionen
sudo apt install build-essential libwxbase3.0-dev libwxgtk3.0-dev libglew-dev libglm-dev libcurl4-gnutls-dev libcairo2-dev libboost-all-dev swig python-wxgtk3.0-dev doxygen libssl-dev git cmake
Mit all diesen Bibliotheken können wir nun anfangen den Code herunterzuladen, für unser System zu konfigurieren und zu übersetzen. Dazu laden wir den aktuellsten Code vom Git Repository herunter:
git clone -b master https://git.launchpad.net/kicad
Danach legen wir einen Ordner an in dem wir die Übersetzung vornehmen möchten und konfigurieren unsere Umgebung:
cd kicad
mkdir -p build/debug
cd build/debug
cmake -DCMAKE_BUILD_TYPE=Debug \
 -DKICAD_SCRIPTING=ON \
 -DKICAD_SCRIPTING_MODULES=ON \
 -DKICAD_SCRIPTING_WXPYTHON=ON ../..
Wenn das dann durchgelaufen ist, können wir die eigentliche Übersetzung starten:
make
Der Prozess kann je nach Systemleistung einige Zeit dauern.  Bei mir waren es ca. 30 Minuten. Nach Fertigstellung der Programme stehen sie in dem aktuellen Ordner zur Verfügung. Installieren kann man dann KiCad mit dem Befehl
sudo make install
Das nächste mal schauen wir dann, wie wir den Quellcode bearbeiten können um ein weiteres Menüfenster hinzuzufügen.

Sonntag, 9. Juli 2017

Neues Familienmitglied: Wanhao D7 Desktop 3D Printer Teil 1

Ich habe mir (mal wieder) einen neuen 3D Drucker gekauft. Diesmal ist es kein FDM Drucker, wie die letzten, sondern ein SLA Drucker. Dieser druckt mit Licht in ein Harz. Es funktioniert also ganz anders als der Druck mit der Plastikschnur durch die CNC-Heisklebepistole.

Der Wanhao D7 (Amazon) ist der im Moment günstigste SLA Drucker und kostet zur Zeit ca. 550€ für die Version 1.3. Die neuste Asuführung, Version 1.4 ist für ca. 600€ bei Amazon zu bekommen. Direkt an die Haustür. 3 Tage Versand, Kein Zoll, kein Porto, keine Gebühren.


Im Set der Version 1.3 befindet sich folgendes: Oben links ist der lichtdichte Deckel, rechts daneben der eigentliche Drucker. Es sind 200ml Harz im Lieferumfang enthalten, ebenso wie ein lichtdichter Becher zum abwaschen des gedruckten Teils von überflüssigem Harz. Ein Schraubenzieher und Spatel gehören ebenso wie USB- und HDMI-Kabel zum Lieferumfang. Das externe Netzteil besitzt 60W und wird mit einem Stecker für britische Steckdosen geliefert. Hier passt aber jeder Kaltegeräte Netzstecker (Amazon). Zum Drucker gehört dann noch das Harzbecken und der Druckstempel. Zum Harzbecken gibt es noch eine Ersatzfolie. Der Stempel ist das Druckbett und misst 118x75mm.
Daneben sind noch zwei Latex Einweghandschuhe im Set, da das Harz alles andere als harmlos ist.

Aufbau

Der Aufbau gestaltet sich im Gegensatz zu anderen 3D Druckern, vor allem den Bausätzen, als sehr einfach. Der Drucker wird mit USB und HDMI an den Computer angeschlossen und das Program "Creation Workshop" gestartet. Das könnt ihr auf der Webseite von Wanhao bekommen. Der Drucker ist in der Software schon vorkonfiguriert und es müssen nur noch Kleinigkeiten angepasst werden. Weitere Dokumente findet man hier und hier. Jetzt noch Strom dran, Harz rein und ab geht die Post. 

Oder auch nicht. Denn zuerst habe ich die Funktion "trocken" testen wollen. Also ohne das Harz und siehe da. Das funktioniert nicht. Grund dafür war, dass der Endschalter nicht angeschlossen war. Da ist wohl das Kabel beim Transport abgefallen.
Also erst mal das Gehäuse aufschrauben. Der Deckel des Gehäuses ist mit 4 kleinen Schäubchen befestigt, für die ich keinen passenden Innenschskant-Schlüssel hatte, der 2mm war etwas zu klein und ist durchgerutscht. Aber ein T8 Torx tuts auch. Mit dem Deckel ab hab ich das lose Kabel auch schnell wieder auf den Endschalter stecken können. Strom dran und siehe da, die kleine LED auf dem Enschalter leuchtet rot. Das hat sie vorher nicht getan.
Das Streulicht der UV-LED ist ziemlich groß, deshalb ist es wichtig, dass das Gehäuse ebenso lichtdicht ist. Alles wieder zusammen bauen und erst mal einen Trockenlauf testen


Doch bevor es ans Drucken geht benötigt man noch einige Betriebsmittel. Um das gedruckte Objekt später von Resten des Harzes befreien zu können muss es mit Alkohol abgewaschen werden. Dazu braucht man Reinigungsalkohol (Amazon) in größeren Mengen. Auch sind immer Handschuhe zu tragen, daher gleich mal ein paar mehr und am Besten welche die nicht aus Latex sind. Latex ist nicht sonderlich resistent gegen Alkohol und das Harz. Daher lieber welche aus Nitril (Amazon), die sind etwas beständiger.

Das Harz wird in die Schale gegeben und der Druckstempel darin versenkt. Dann kann es auch schon los gehen. Der Arbeitsplatz muss unbedingt gut gelüftet sein, während dem Drucken entstehen Dämpfe, die alles andere als angenehm sind. Außerdem sind die Dämpfe nicht gesund.


Der Arbeitsplatz für den ersten Druck ist vorbereitet und der Drucker läuft. Nach 3 Stunden das Ergebnis. Von der Druckplatte gelöst und in Alkohol gereinigt. Dann 10 Minuten im Alkohol in die Sonne gestellt, dadurch härtet das Harz noch weiter aus und schlussendlich An der Luft getrocknet. Das Becken, den Stempel und alles andere, das mit dem Harz in Berührung gekommen ist, habe ich mit Alkohol und Zewa gründlich abgewischt. Die Harzreste können in die lichtundurchlässige Flasche zurückgegossen werden.


Die Detailtiefe ist überragend. Der Prozess ist ziemlich Zeitaufwändig, kostet viel Geld und Unmengen an Zewa, aber es lohnt sich. Demnächst dann mit einer anderen Software (nanoDLP) und einem größeren Objekt und besserer Luftabsaugung. Der Gestank ist sehr unangenehm.

Freitag, 30. Juni 2017

Nokia 3210 Retro Fit Board Teil 4

Ich versuche gerade ein Android Image für den i.MX7 auf meinem Nokia Retro Fit Board zu bauen. Das Buildsystem für Android ist gigantisch. Es besteht aus über 100 Git repositories, die mit Hilfe eine Tools heruntergeladen werden. Dazu benötigt man über 90GB Festplattenspeicher! Zusätzlich zu Android benötigt man auch noch den Linux Kernel und die passenden Patches um das originale Android und Kernel auf die CPU anzupassen auf der das System später laufen soll. Das alles dauert eine ganze Zeit, bis es einmal steht. Anschließend muss das System aus dem Quellcode kompiliert werden. Damit man nicht jede einzelne Datei selbst kompilieren muss, gibt es auch hierfür ein Tool, dass den Prozess automatisiert. Dieses Tool, mit dem Namen 'lunch' geht durch die Verzeichnisstruktur und sammelt alle Informationen, welche Dateien für welches System wann kompiliert werden sollen. Danach wird noch ermittelt, welche Dateien zum System Image hinzugefügt werden sollen und zum Schluss in welchem Format das System Image erzeugt werden soll. Wenn das alles fertig ist, dann kann der Prozess starten, der aus dem Android Open Source Project ein Firmware Image erstellt, dass auf einem Embedded System lauffähig ist.

Ich habe den Prozess, wie man zu der passenden Buildsystem kommt hier dokumentiert:
https://github.com/DasBasti/NokiaRetrofitAplications

Jetzt bin ich dabei herauszufinden, wie man das Android anpasst, sodass es nicht für das Sabre Board baut, sondern für meine Hardware mit meinen Treibern und meiner Boot Konfiguration. Danach werde ich versuchen, das System auf Android Wear umzustellen, da das für so kleine Bildschirme wie ich ihn verwenden möchte optimiert ist. Wie das geht weiß ich noch nicht. Aber ich werde es versuchen.


Hardware

Ich bin im Schaltplan ein wenig weiter gekommen, auch wenn ich noch kein Update in das Repository übertragen habe. Ich bin im Moment dabei die Ladeschaltung für den originalen NiMH Akku zu zeichnen. Zusätzlich wird ein LiPo Akku anschließbar sein. Ich weiß noch nicht, wie viel Strom der i.MX7 benötigt und wie lange dann der original Akku hält. Er ist mit 1200mAh angegeben. Das ist einiges, wenn man bedenkt, dass das kleine Display nur 30mA benötigt, wenn es an ist. Eine detaillierte Stromverbrauchsrechnung ist auch in Arbeit, die wird zeigen, ob die Verwendung der originalen Batterie überhaupt ein gangbarer Weg ist.