Archive for the 'hardware' Category

MAX7219

Friday, September 15th, 2017

Heute kam wieder Spielzeug aus China: 4 Stück 32×8 LED Matrix Displays mit je 4 x MAX7219 als Controller. Preis bei aliexpress: $3,75 für ein 4er Modul – entspricht $0,93 für 8×8 pixel. Ein 4-er Modul(32×8 pixel) hat die Abmessungen: 32mm x 128mm x 15mm. Module verschiedener Hersteller sind unterschiedlich verdrahtet. Es gibt mindestens 3 Varianten.

Die Arduino Library “LEDMatrixDriver.hpp” passte sofort zu meinem Modul – zumindest wenn man sie nur in X Richtung verbindet. Ein 32×16 habe ich damit noch nicht hingekrigt. Sie kann bitmaps in 4 Richtungen scrollen. Es gibt eine Laufschrift Demo mit einem Text-Font. Der Font ist aber nicht hübsch und hat keine Kleinbuchstaben.

Die Arduino Library “MD_MAX72XX” (geht auch mit ESP8266) passte erst, nachdem ich 2 Zeilen in libraries/MD_MAX72XX/src/MD_MAX72xx.h gändert habe:

#define USE_PAROLA_HW 0
#define USE_FC16_HW 1

Die “Daft Punk” Demo hat einige schöne Animationen:

(in dem Video sieht man 2 Stück 4er Module)

64x16 LED Display

16pixel font

64×8 rote LEDs

Thursday, June 15th, 2017

Anno 1993 habe ich aus 8 LED Boards ein 64×8 LED Display gebaut. Ein einzelnes Board sieht so aus:

LED Streifen

Ein LED Board ist ein horizontaler Streifen mit 64 LEDs, 8 x 74LS164N Schieberegister, einem 74LS14 und einem BD 244 Transistor (für Blank und LED Strom)

Damals wurde es mit dem (“Centronics” / Parallelport ) Duckerausgang eines Atari ST angesteuert: 8 Datenleitungen (für jede Zeile eine) eine Taktleitung und 1 x blank. Der Atari hat Buchstaben mit einstellbarer Geschwindigkeit scheibchenweise von rechts ‘rein geschoben. Der Atari ST war also der erste Controller für dieses LED Display.

Ungefähr 10 Jahre später habe ich das Display mit einem ATMEL ATmega32 und der “2D Borg” Software von www.das-labor.org angesteuert. Die Firmware hat Treiber für verschiedene Displays. Damit die Hardware besser zur Firmware passt, habe ich die 8 Taktleitungen aufgetrennt und die 8 Datenleitungen zu einer zusammengeführt. Das sah dann so aus:

Weitere >10 Jahre später (2017) habe ich die Schaltung wieder modifiziert, weil ich das Display mit einem ESP8266 steuern möchte. Diesmal verbinde ich 7 x Data out (Pin 13) des letzten Schieberegisters eines Streifens mit Data In des darunter liegenden Streifen. Dadurch benötige ich nur noch 3 IO Pins des Microcontrollers statt bisher 10. Ein erster Test mit einem Arduino war erfolgreich:



FN LED Baord 1000/1
Stecker1
1 -
2 GND
3 clear/reset: 1k Ohm pull up nach +5V
4 clock
5 blank (PWM)
6 -
7 Data In

Stecker2
8 Data Out
9 clock
10 clear/reset
11 +5V
12 +5V
13 GND
14 GND

feed flightradar24 and planefinder.net with one Raspberry Pi

Monday, May 23rd, 2016

First I installed fr24feed, which looks like a modified dump1090.


root@raspberrypi:/etc# cat fr24feed.ini
receiver="dvbt"
fr24key="XXXXXXXXXXXX"
path="/usr/lib/fr24/dump1090"
bs="yes"
raw="yes"
logmode="0"
mlat="yes"
mlat-without-gps="yes"

root@raspberrypi:/etc# service fr24feed status
[ ok ] FR24 Feeder/Decoder Process: running.
[ ok ] FR24 Stats Timestamp: 2016-05-22 22:52:07.
[ ok ] FR24 Link: connected [UDP].
[ ok ] FR24 Radar: T-XXXXX.
[ ok ] FR24 Tracked AC: 1.
[ ok ] Receiver: connected (1504210 MSGS/0 SYNC).
[ ok ] FR24 MLAT: ok [UDP].
[ ok ] FR24 MLAT AC seen: 0.

Then I installed pfclient

wget http://client.planefinder.net/pfclient_3.4.30_armhf.deb
dpkg -i pfclient_3.4.30_armhf.deb

…and configured it via the Web interface:
http://192.168.1.101:30053
Data Format: AVR-TCP
IP: localhost
port: 30002

Similar to dump1090 pfclient has a nice web-GUI with various views.

Then I installed piaware, which had some (tcl) dependencies:

wget http://de.flightaware.com/adsb/piaware/files/piaware_2.1-5_armhf.deb
dpkg -i piaware_2.1-5_armhf.deb
apt-get install -fy

I did not try piaware, because I don’t have a Flightaware accout yet.

install linuxcnc on Linux Mint 17.1 Rebecca

Thursday, November 12th, 2015

install linuxcnc on Linux Mint 17.1 Rebecca
(without real time kernel)

http://linuxcnc.org/docs/2.7/html/getting-started/getting-linuxcnc.html#_installing_on_debian_wheezy_and_debian_jessie_with_preempt_rt_kernel

Add a new apt source that looks like this:

deb http://linuxcnc.org/ jessie base 2.7-uspace


then:

apt-get update
apt-get install linuxcnc-uspace

after installation you can start LinuxCNC:

linuxcnc

3D Drucker

Friday, June 13th, 2014

Gestern hatte ich nach 2 Wochen Pause mal wieder 4 Stunden Zeit für den 3D Drucker. Beim Druckbett habe ich die 4 Abstands-Klötze aus PLA gegen Stapel aus je 3 Metall-Muttern getauscht. Die 15x15cm Speigelfliese wurde durch eine 20x20cm ersetzt – Nun kann ich Maul-Klemmen benutzen um diese Platte zu befestigen. Die kleine Dauerdruckplatte im warmen Zustand mit Kapton darauf fixiert – keine Wölbung mehr zu sehen / zu spüren. Das kleine Ritzel im Extruder hat sich mal wieder gelockert – leider hatte ich kein Locktite dabei.
Folgende Temperaturen habe ich gemessen:

am Schraubenkopf des Heizblocks:
Software: 230° gemessen: 195°
Software: 210° gemessen: 175°

Druckplatte:
Software: 60° gemessen: 45°

Das Druck-Ergebnis vom Testobjekt war wie beim letzten Mal. Das kühlen des Werkstücks mit einem langsam laufendem Lüfter hatte keinen Effekt. nach 1cm Druckhöhe musste ich abbrechen weil der Extruder mal wieder versagte.

lockeres Ritzel ?
Verstopfung ?
Luft oder Feuchtigkeit im Material ?
Klemmt das Filament wegen der Kerben, die der Vorschub verursacht ?

Ich will demnächst probieren, ob ich das Filament heraus ziehen kann wenn der Extruder kalt ist. Angeblich soll es ja an dem Edelstahl nicht haften.
Den Lüfter, der den oberen Teil des Hotends kühlt, werde ich direkt an 12V anschließen – Es ist schon zu oft passiert, dass ich vergaß, ihn per Software einzuschalten.

3D Drucker druckt

Monday, May 19th, 2014

heute habe ich das erste Teil gedruckt! Der erste Druck fing gut an, aber dann kam kein Material mehr. Das Ritzel, welches nur mit einer Madenschraube befestigt war, saß nicht mehr fest auf der “Welle”. Die “Welle” ist aber keine richtige Welle sondern eine einseitig abgeflachte Schraube. Ich werde versuchen, dafür eine stabilere Lösung zu finden. Als Temperatur war 230° eingestellt. Mit dem Multimeter konnte ich aber nur 180° messen. Der zweite Druck hat von Anfang bis Ende funktioniert, nur die Seitenwände der Treppenstufen wurden nicht genau die 90° Winkel abgebildet sondern mit ca. 45° “abgekürzt”
die folgenden 2 Versuche waren erfolglos: Die erste Lage haftete nicht richtig. 10°C weniger war vielleicht keine gute Idee, oder der Abstand zwischen Düse und Platte war zu groß.

q-bert

3D Drucker

Thursday, May 15th, 2014

Prusa Mendel i2. Ich hätte den warscheinlich nicht gekauft, aber nun steht er hier im Unperfekthaus und die Jungs, die ihn gebaut haben, haben keine Lust mehr sich weiter damit zu beschäftigen. So… let’s give it a try…

Zuerst habe ich eine aktive Luftkühlung für den oberen Bereich der Nozzle gebaut – mit 30mm Lüfter und Kühltunnel aus Blech. Dann habe ich die Platform umgebaut: weg mit der krummen Alu-Platte. Jetzt nur noch das Hotbed mit einer Glasplatte drauf.
Als ich heute hier an kam war einer der 2 Z-Motoren falsch eingesteckt – Sabotage! Sehr ärgerlich. Mit richtig anschließen war es nicht getan. Der Motortreiber hat die Last der 2 Motoren nicht geschafft. Hab die Treiber für Y und Z getauscht – jetzt läuft’s wieder.
Weil ich überall gelesen habe, dass PLA einfacher zu benutzen ist als ABS hab ich bei 230°C mit dem PLA Filament den Rest ABS aus der Düse gedrückt. Für PLA war 185° eingestellt, das schmolz aber nicht. Jetzt hab ich PLA mit 230°C ein paar mal “in die Luft” extrudiert und das sah ganz ok aus.

to be continued…

USB 3.0

Monday, April 14th, 2014

Hab mir ein externes USB 3 2,5″ Festplattengehäuse besorgt und dort meine 500GB Platte eingebaut. hier die Ergebnisse von hdparm im Vergleich zu 2 internen SATA Festplatten:

Platz 1:
interne 3,5″ SATA 3TB Platte Western Digital WD30EFRX-68E

Timing cached reads: 16656 MB in 2.00 seconds = 8334.49 MB/sec
Timing buffered disk reads: 440 MB in 3.01 seconds = 146.06 MB/sec

Platz 2:
interne 1TB Notebook Festplatte Seagate HTS541010A9

Timing cached reads: 3474 MB in 2.00 seconds = 1738.88 MB/sec
Timing buffered disk reads: 304 MB in 3.02 seconds = 100.67 MB/sec

auch Platz 2 (siehe cached reads):
externe USB 3 Festplatte Samsung HM500JI

Timing cached reads: 16464 MB in 2.00 seconds = 8238.33 MB/sec
Timing buffered disk reads: 214 MB in 3.01 seconds = 71.05 MB/sec

mein erstes Thinkpad

Thursday, April 3rd, 2014

Bei ebay habe ich mir für € 220.- ein gebrauchtes T500 ersteigert. Bezüglich der Display-Auflösung hatte der Verkäufer eine falsche Angebe gemacht: 1440×900. Eigentlich gibt es keine T500 mit dieser Auflösung. Das habe ich nach Auktionsende und vor dem bezahlen mit dem Verkäufer per e-mail geklärt. Das Display hat 1680×1050 – sehr erfreulich! :-)
Heute kam das Gerät bei mir an. Außen 2 Kratzer, die mich absolut nicht stören und innen (Display, Tastatur, Touchpad) sieht es aus wie neu. Der Akku ist auch noch gut. Er hält ca. 2 Stunden.
CPU ist ein Core2Duo P8600. Einen P9500 könnte ich später mal nachrüsten. Nach einem kurzen Test mit einer Knoppix 7 DVD (Knoppix zeigte zu wenig RAM an?! ) habe ich die mitgelieferte 160GB Festplatte aus- und meine eigene 1TB Festplatte eingebaut. Linux Mint bootete sofort.
In /etc/udev/rules.d/70-persistent-net.rules
habe ich die Netzwerk-Devices meines alten Noetbooks auskommentiert, damit die aktuellen Devices eth0 und wlan0 und nicht eth1 und wlan2 heißen.
Flightgear schafft 9 fps mit der Intel Grafik und belastet die CPU nur mit 30%. Die ATI Grafik-Einheit habe ich momentan im BIOS abgeschaltet und bisher noch nicht getestet.
Das Netzteil ist sehr kein: 10x4x3cm

Nachteile gegenüber meinem bisherigen Lenovo 3000 N500:
* nur 3 x USB
* statt HDMI nur DisplayPort
* 90g schwerer
* keine Webcam

Ein aktuelles (Consumer-, nicht Business-) Notebook mit i3 oder i5 hätte locker das doppelte gekostet und mein Umwelt-Gewissen belastet – Warum neu kaufen wenn das alte noch läuft ?
Ich bin sehr glücklich und zufrieden. Endlich kann ich KVM benutzen – Das war der größte Nachteil meines alten Gerätes. Mit dem neuen WSXGA Display kann ich nun auch meine 720p Videos in 1:1 mit Avidemux schneiden und web-surfen wird jetzt auch angenehmer.

UPDATE:
Für €20 habe ich mir eine passende Dockingstation und ein zusätzliches 90W Netzteil besorgt.
Bei Verwendung der Dockingstation habe ich nun insgesamt 7 x USB, parallel, serial und DVI.

Home Cockpit Baubericht (Teil 3)

Thursday, December 26th, 2013

Am 23.12. kamen endlich die Inkrementalgeber(rotary encoder). Seit dem weiß ich, wie groß ich die Löcher dafür bohren muss. Am gleichen Tag habe ich alle Taster und Schalter eingebaut und 2 von den insgesamt 6 Inkrementalgebern mit meinen C-Testprogramm auf den Atmega32 ausprobiert.

Am 24.12. habe ich mit der Tastaturmatrix angefangen. Zunächst nur 3×3 verkabelt und dann dafür ein Testprogramm geschrieben. 3 der Schalter hatte ich aus alten Walkera Sendern ausgeschlachtet – sie sehen schön aus – sind aber alle defekt. Ich musste alle wieder ausbauen. :-(

Den 25.12. habe ich damit verbracht, den Rest der 8×7 Matrix und die LEDs zu verkabeln. Die Taster von Rafi haben eine rote 3mm LED in der Ecke – ich hätte aber lieber eine flächige Beleuchtung in grün. Kurz vor dem verkabeln der LEDs habe ich mich entschlossen die roten LEDs nicht zu verwenden und stattdessen superhelle grüne LEDs von hinten an die Taster zu kleben. Mit einem 460 Ohm Vorwiederstand sind es nur 6mA pro LED – Das schafft der 74HC595 ohne zusätzlichen Treiber.

Bis auf Kleinigkeiten (Deckel, Rückwand, ..) ist die Hardware nun fertig. In der Software folgt demnächst:

* Entprellen der Taster
* Abfrage aller Inkrementalgeber
* serielle USB Kommunikation mit dem PC, bidirektional
* “Treiber” Software auf dem PC

pic

p2

p3

74HC595

p5