Ein Interview vom 16.03.2005…
Sonntag, 28.02.2010...habe ich gerade im Ordner meiner alten Websites wiedergefunden.
Ray war/ist(?) Mitglied im QB-Forum, ich habe mich damals noch "ICC" genannt. Enjoy!
Ray (13:38): das du noch lebst wundert mich ^^ deine Experimente sind genial ICC (13:39): danke![]()
Temperaturlogger
Samstag, 20.02.2010Diese Woche habe ich bei meiner Zivildienststelle Winterdienst--d.h. von 6:00 bis 22:00 muss ich dort wegen jeder Schneeflocke und jeder zugefrorenen Pfütze antanzen und schieben bzw. streuen. Da gerade Tauwetter herrscht und ich darauf hingewiesen wurde, besonderes Augenmerk auf am Tag aufgetaute und in der Nacht wieder angefrorene Wasserlachen zu legen, entstand folgender Temperatursensor.
Ein DS18S20+ ist im parasite-power mode verdrahtet (benötigt nur zwei Kabel, wirklich genial) über ein altes Instrumentenkabel (der Robustheit wegen) mit meinem Arduino Mega verbunden. Letzterer liest die aktuelle Temperatur kontinuierlich aus (in einem Intervall von ca. 750ms) und schickt sie per USB an meinen Laptop, auf dem ein kleines C-Programm läuft, welches die Daten empfängt und jeden 1000. Wert (entspricht einem zeitlichen Abstand von 12m50s) samt Uhrzeit in eine Logfile schreibt. Die Logfile habe ich mir am Abend per tail -f tempmon.txt in einem Konsolenfenster kontinuierlich ausgeben lassen. Am nächsten morgen (also heute) um 7:00 Uhr habe ich mich wecken lassen, um mir die Logfile anzuschauen und mich zu versichern, dass es nicht plötzlich wieder gefroren hat. Hat es glücklicherweise auch nicht.
Mal schauen, wie es diese Nacht aussieht.
Da ich praktischerweise ein Loch im Rahmen meiner Fensterfront habe, habe ich den Sensor durch dieses nach draußen geführt. Ein kleines Plastikröhrchen dient als Abstandshalter, da ich den Sensor nicht direkt an der Hauswand anliegen haben wollte.
Den Arduino-Sketch und den C-Sourcecode gibt es hier zum Download. Sollte es noch Fragen bzgl. der Verdrahtung des Temperatursensors geben, einfach nachfragen. Der Widerstand hat übrigens 4k7.
Der Stecker kommt an GND, 53, 51 am Arduino Mega. Der Arduino-Compiler braucht außerdem die Dallas Temperature Control Library (einfach in den libraries-Ordner der Arduino-IDE entpacken).
Download: tempmon.zip [4,9 kiB]
PQFP-64 Adapter
Mittwoch, 17.02.2010Vielleicht kann ja jemand das Layout für einen PQFP-64-auf-Lochraster-Adapter gebrauchen.
Download: dsp-adapter_pqfp-64.t3001.zip [7,9 kiB]
(Mit dem Kolophonium bloß nicht sparsam sein.
)
Baustelle Shisha
Dienstag, 02.02.2010Grillparty im Winter, natürlich mit Shisha. Leider wurde jedoch der Kopf vergessen, sodass ein wenig improvisiert werden musste. Die Kuhle am Boden einer Becks-Dose mit ein paar Löchern drin (angetrunken Bohren ist prima) hält den Tabak, die Aluhülle eine Teelichtes (ebenfalls mit Löchern drin) dient als Membran zwischen Kohle und Tabak. Abgedichtet wird mit massig Alufolie. Hat auch einigermaßen funktioniert, dennoch hat sich dann noch jemand erbarmt, schnell nochmal loszufahren und den Kopf zu holen. Mit dem ging es allerdings noch schlechter als mit der Eigenbaukonstruktion--weiß der Teufel warum. Naja, Spaß hatten wir trotzdem.
Den Grill haben wir übrigens mit Isoprop angeschmissen. xD
MSOP-10 Adapter
Mittwoch, 13.01.2010Für einen netten Kollegen aus Fingers Forum habe ich auf Anfrage diesen Adapter gebaut. Die Platine ist 13x11 mm groß und stellt einen Adapter von MSOP-10 auf DIP-10 dar.
Download: crappy-msop10-dip10-adapter.zip (Target 3001-Layoutdatei) [2,78 KiB]
Anmerkung: Mein Laserdrucker ist mit dem kleinen Pitch des MSOP-10-Packages zuerst nicht klargekommen, daher habe ich die Kupferpads händisch gezeichnet und die Layoutdatei sieht auf den ersten Blick vermutlich etwas seltsam aus.
)
Dies war übrigens mein erster Platinenherstellungsversuch mit der Tonertransfermethode. Was soll ich sagen--ich bin begeistert! Warum habe ich das nicht schon früher so gemacht? Das Belichten und Entwickeln hat mich schon immer angekotzt. Von nun an werde ich vermutlich nur noch mit Tonertransfer arbeiten. Laserdrucker Lexmark E310, Reicheltpapier, Bügeleisen volle Pulle 30 Sekunden -> perfektes Layout, auch mit sehr feinen Strukturen (siehe Foto).
Aufgelötet habe ich den IC übrigens, indem ich ihn auf der Platine positioniert und mit einem kleinen Schraubendreher durch Druck von oben fixiert habe, dann auf jede Seite ein paar Krümel Kolophonium gestreut, und die ganze Geschichte mit vorverzinnter Lötspitze für ein paar Sekunden von jeder Seite erhitzt habe.
TestDisk sei dank
Dienstag, 12.01.2010Gestern hat sich das Windows2k-Setup dazu entschlossen, die Partitionstabelle meiner Festplatte zu zerschießen, aber richtig. (Dass ich später den Bootloader hätte neu installieren müssen war mir natürlich klar, wenn ich Windows nach Linux installiere.) Und das, wo ich gerade ein prima ArchLinux-System auf meinem neuen Laptop aufgesetzt hatte. Die Windowsinstallation selbst funktionierte dann auch nicht und ich habe versucht, mithilfe einer Linux Live-CD nach dem Rechten zu schauen. cfdisk schmeißt mir einen Error an den Kopf, fdisk zeigt nur Müll an. Panik! Auf der Platte ist unter anderem meine gesamte Fotosammlung.
Nach ein bisschen Googlen bin ich dann auf die OpenSource-Software "TestDisk" gekommen, die u.a. auf der Live-CD "CAINE" vorinstalliert ist. Mit letzterer CD und besagtem Programm konnte ich meine beiden wichtigen Datenpartitionen im Bitchaos wiederfinden und kopiere gerade alle Dateien auf meine externe Platte.
Danke, lieber TestDisk-Entwickler. Dafür gibts eine kleine PayPal-Spende. xD
Falls jemand mal ein ähnliches Problem hat, auf diesen Blogeintrag stößt und ebenfalls TestDisk verwenden möchte: Blendet bloß die gelöschten Dateien aus! Die Wiederherstellung selbiger funktioniert nur bedingt. Bei mir hat sich die Software in einer Endlosschleife aufgehangen und einen riesigen Ordner hunderte von malen in sich selbst dupliziert. Das Löschen selbigen Kontruktes dauerte fast genau so lang wie das Backup meiner Dateien.
(Nein, es war kein Symlink vorhanden--das war wirklich die Software).
Einfaches XAMPP-Start|Stop-Script
Freitag, 08.01.2010Ich habe mir heute (bzw. gestern - wie spät es schon wieder geworden ist...
) ein kleines Script gebaut, mit dem ich unter Linux meinen XAMPP-Server toggeln (also beim ersten Aufruf einschalten, beim zweiten abschalten usw.) kann. Es wird über einen benutzerdefinierten Starter in das GNOME-Panel eingebunden. Ein sich änderndes Icon zeigt den Status des Servers an (gestartet oder nicht) und ein Popup benachrichtigt den Benutzer, wenn der Server gestartet oder gestoppt wird (benötigt libnotify).
Es wird zuerst ein Ordner ~/.scripts angelegt (~/ ist immer das home-Verzeichnis des gerade eingeloggten Users, also z.B. /home/paul/), dann wird darin die Datei xampp-toggle.sh angelegt und mit folgendem Code gefüllt:
#!/bin/sh # XAMPP-Toggle. Not beautiful, but gets the job done. # Comment out the last line if you don't like the restarting gnome-panel. # In that case it will take some time for the panel starter icon to update. cd /opt/lampp ps -A | grep httpd > ~/.xampp-toggle.sh.tmp if grep httpd ~/.xampp-toggle.sh.tmp then notify-send "XAMPP Stop..." gksu lampp stop rm ~/.icons/xampp.png ln ~/.icons/xampp-inactive.png ~/.icons/xampp.png else gksu /opt/lampp/ notify-send "XAMPP Start..." gksu lampp start rm ~/.icons/xampp.png ln ~/.icons/xampp-active.png ~/.icons/xampp.png fi rm ~/.xampp-toggle.sh.tmp killall gnome-panel
Mit # chmod +x xampp-toggle.shwird die Datei ausführbar gemacht.
Nun werden folgende beide Icons in den Ordner ~/.icons (der sollte per Default bereits vorhanden sein) kopiert (Dateinamen xampp-active.png und xampp-inactive.png):
![]()
![]()
Das Script muss nun einmal gestartet werden, damit ein Symlink namens ~/.icons/xampp.png erzeugt wird. # ~/.scripts/./xampp-toggle.sh
Nun wird im gewünschten GNOME-Panel mit Reche Maustaste -> Zum Panel hinzufügen... -> Benutzerdefinierter Anwendungsstarter ein Button für unser Script erstellt.
Typ: Anwendung
Name: XAMPP Starten/Stoppen (unwichtig)
Befehl: /home/paul/.scripts/xampp-toggle.sh (paul ersetzt ihr natürlich durch euren eigenen Usernamen)
Kommentar: (nix, egal)
Als Icon (Button links) wählt man nun das Verzeichnis ~/.icons/ und anschließend im Auswahldialog die Datei xampp.png (ihr erinnert euch, das ist der eben erzeugte Symlink).
Fertig! Über Feedback freue ich mich.
(Bekanntes Problem ist, dass die Holzhammermethode gnome-panel zu killen, nur um das Icon zu updaten, nicht sonderlich schön ist. Wem das nicht passt, darf im Script die letzte Zeile auskommentieren. Es dauert dann etwas, bis das Icon geupdatet wird.)
…hätte ja klappen können.
Montag, 28.12.2009Schon länger hatte ich die Idee eines ISP-Steckers in Form einer Klammer oder Zange. Gestern gebaut und getestet hat sich dies jedoch als Schnapsidee herausgestellt, die Kontakte sind nicht zuverlässig genug (eine Leitung will immer nicht, und jedes mal ist es eine andere
).
Die Fotos will ich dennoch niemandem vorbehalten.
Am Ende habe ich dann doch einfach eine Stiftleiste an die Platine gelötet.
Und so sieht es übrigens aus, wenn man den AVR verfused und die Clock Source versehentlich auf "externen RC-Oszillator" gestellt hat.
Charlieplexing
Samstag, 19.12.2009Bislang habe ich in meinen Projekten exzessiv Multiplexing verwendet, wenn es um die Ansteuerung von LEDs ging. Eine 7x5 Pixel große Matrix konnte man so mit 7+5=12 Pins ansteuern.
In den letzten Tagen habe ich nun meine ersten Erfahrungen mit Charlieplexing gemacht. Bei dieser Methode werden Paare von zwei antiparallel geschalteten LEDs in allen möglichen Kombinationen an eine feste Anzahl Pins gehängt. Dabei leuchtet dann jeweils nur eine einzige LED pro Zeiteinheit und zwei Pins werden so geschaltet, dass zwischen ihnen eine Spannung der richtigen Polarität anliegt. Alle anderen Pins müssen dabei hochohmig geschaltet werden. Charlieplexing funktioniert also nur mit Tristatefähigen Pins, wie ein AVR oder PIC sie z.B. hat. Mit n Pins können dabei n * (n -1) Pins angesteuert werden. Mit 7 Pins können also 42 LEDs angesteuert werden. Wohoo!
Da man bei all den möglichen LED-Kombinationen schnell durcheinander kommen kann, habe ich fix das Layout für eine Charlieplexing-Schablone mit 7 Leitungen (Pins) erstellt und mit meinem Arduino Mega getestet.












