Archiv der Kategorie: Hardware

Meine kleinen Basteleien

Wie tief kann man mit PHP sinken

Sehr tief – wenn es um Systeminnereien geht. Mein kleiner Mikrocontroller ist inzwischen als LCD-Steuerung und für diverse Sensoren eingerichtet und beherrscht ein simples Übertragungsprotokoll per RS232.

Was jetzt noch fehlt ist ein PC-Pendant, welches die Daten weiterverarbeitet. Wie immer wird das bei mir PHP. Hardwarezugriff auf den RS232-Port ist dank *nix per fopen & co soweit problemlos möglich. Los geht die Geschichte aber, wenns um bidirektionale Kommunikation geht. Leider lockt PHP beim lesen vom COM-Port, sodass transfers anderer Programme an den IC nicht rechtzeitig durch kommen würden.

Aber getreu dem Motto „nichts ist unmöglich“ haben ein paar feine PHP-Funktionen inzwischen einzug gehalten – mittels Fork gibts jetzt zwei Childs, einen zum senden und einen zum empfangen. Über IPC (Interprozesscommunication – ich liebe dieses Wort) wird dann der konkurrierende Zugriff auf die serielle Schnittstelle koordiniert.

Jetzt muss nurnoch mein PHP langsam mal mit allen benötigten Features fertig Kompilieren, dann könnt ich das ganze auch mal testen…

Nach 64 Bit sieht man alles Doppelt

Nach dem Wortspiel und dem etwas ausgeweitetem Laptop-Artikel kurz und knapp mein neuer PC:

  • Neu
    • Intel Pentium D 930 (Presler, 2×3,00GHz, 2x2MB Cache, 64Bit, Vanderpool) – derzeit auf 2*3,6GHz
    • AsRock 4CORE-Dual-VSTA (Reicht fürs erste…)
  • Aus altm Übernommen

    • 1GB DDR-Ram
    • Geforce 6600GT
    • 120GB HDD
    • DVD-Brenner
    • CD-Brenner
    • Kleinkram

Und um die CPU direkt mal auszunutzen darf das System jetzt erst mal Gentoo x86_64 kompilieren…

Ein Laptop lernt laufen

Bild: http://adlersa.yotaweb.de/gallery2/gallery2/d/2038-2/IM000434.JPG

Endlich ist er zusammen…. Mein aktueller Laptop verrichtet zum ersten mal seinen Dienst in einem brauchbaren Zustand. Ein Grund endlich mal die Knoppix-DVD zu entnehmen und ein Linux zu installieren.

Technische Daten:

  • Hersteller: Compaq
  • Modell: Evo N620c
  • Höhe: 3,1cm
  • Gewicht: 2,5kg
  • CPU: Intel Pentium Mobile @ 1,5GHz -> Funktioniert incl. Speedstep – siehe ACPI
  • RAM: 512MB DDR @ 266MHz
  • HDD: 40GB @ 5200, IDE
  • LW: DVD-Laufwerk (Multiport – auch andere Geräte wie Floppy, HDD, Akku, … möglich)
  • GPU: ATI Mobility Radeon 7500 – siehe unten
  • Modem: Agere Systems LT WinModem – nicht getestet
  • Broadcom Corporation NetXtreme BCM5705M Gigabit Ethernet – TIGON 3, Modul tg3
  • Audio: Intel Corporation IHC4 (Boxen und Mikro integroert) – Modul snd_intel8x0, Boxen schlechte Quali
  • Anschlüsse:
    • 1*PS2 Keyboard/Mouse
    • 1*Seriell
    • 1*Paralell
    • 1*SVideo
    • 1*VGA
    • 1*LAN
    • 1*Modem
    • 1*IRDA – ungetestet
    • 1*Speaker
    • 1*Mikro
    • 2*Type II PC-Card
    • 2*USB 2.0

Installation:

Los gings mit der Debian Sarge DVD. Die Installation verlief ohne Probleme, lediglich das ACPI-Modul funktionierte nicht wie gewünscht und der Lüfter schaltete sich nicht ein.

Im Anschluss erfolgte ein Update auf Sid. Auch hier problemlos.

Hardware laut lspci

00:00.0 Host bridge: Intel Corporation 82855PM Processor to I/O Controller (rev 03)
00:01.0 PCI bridge: Intel Corporation 82855PM Processor to AGP Controller (rev 03)
00:1d.0 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #1 (rev 03)
00:1d.1 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #2 (rev 03)
00:1d.2 USB Controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) USB UHCI Controller #3 (rev 03)
00:1d.7 USB Controller: Intel Corporation 82801DB/DBM (ICH4/ICH4-M) USB2 EHCI Controller (rev 03)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 83)
00:1f.0 ISA bridge: Intel Corporation 82801DBM (ICH4-M) LPC Interface Bridge (rev 03)
00:1f.1 IDE interface: Intel Corporation 82801DBM (ICH4-M) IDE Controller (rev 03)
00:1f.5 Multimedia audio controller: Intel Corporation 82801DB/DBL/DBM (ICH4/ICH4-L/ICH4-M) AC'97 Audio Controller (rev 03)
01:00.0 VGA compatible controller: ATI Technologies Inc Radeon Mobility M7 LW [Radeon Mobility 7500]
02:04.0 Communication controller: Agere Systems LT WinModem (rev 02)
02:06.0 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus Controller (rev 01)
02:06.1 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus Controller (rev 01)
02:0e.0 Ethernet controller: Broadcom Corporation NetXtreme BCM5705M Gigabit Ethernet (rev 01)

Grafikkarte

Im Laptop steckt eine Radeon Mobility 7500. Unter Sarge konnte ich mit dem ati-treiber nur 800×600 erreichen, mit XOrg unter Sid funktioniert die Karte jedoch problemlos. Inzwischen habe ich in der /etc/X11/xorg.conf den ati-Treiber durch den Radeon-Treiber getauscht. Angeblich soll dieser eine bessere 3D-Unterstützung haben. Hinweis: Laut einigen Seiten wird die Karte nicht durch den ATI-Binary-Treiber (fglrx) unterstützt. Die Leistung ist ganz passabel – sogar Beryl läuft flüssig (konnts mir nicht verkneifen). Spiele habe ich noch nicht getestet.

ACPI

Dank Speedstep lässt sich die CPU-Frequenz dynamisch regeln. Mit cpufreqd und dem speedstep-centrino-Modul sollte alles nötige vorhanden sein. Über ACPI lassen sich zudem die Temperaturen sowie der Akkuzustand auslesen.

Hotkeys

Die Hotkeys über der Tastatur lassen sich direkt in Gnome nutzen, leider habe ich noch keine Möglichkeit für die Fn+*-Tasten gefunden.

Der Deckel

Unter der Abdeckung des Deckels finden sich kleine Kontakte. Dort kann im Normalfall ein kleiner Chip für WLAN oder Bluetooth eingelegt werden. Diese sind aber recht teuer, daher der Hinweis: Die Kontakte beinhalten einen normalen USB-Anschluss – wer also etwas Bastellaune hat kann sich sein WLAN selber bauen. Die passende Belegung:

With the laptop facing you, the pins are numbered as such:

4321
8765

Pins 1 and 5 are even marked to help you, in case the above diagram isn’t good enough.

If you were to chop up a USB cable, you’ll find four cables – Red, Green, White, and Black. You may also have an outer wirey mesh or sheath, which serves as interferance shielding and also doubles as ground (which is also the black wire’s job too).

Pin 2 = Red
Pin 5 = Green
Pin 6 = White
Pin 1 or 8 (either one is fine) = Black/Ground

Photos ahoi

Eigentlich bin ich mit meiner Eigenbaugallery ganz zufrieden, da es aber Momentan ein paar Funktionsdefizite gibt, die einen anständigen Betrieb verhindern habe ich vorübergehend auf die „Gallery 2.0“ umgestellt. Übertragen sind schon alle Freakhouse-Fotos sowie eine Kategorie mit diversem PC-Zeugs. Wer also mal Langeweile hat kann sich ja mal umschauen…

Zur Gallery…

Bastelzeit! IR2USB

Und mal wieder ist es bastelzeit – ein großes Paket mit jede Menge Kleinkram ist Gestern angekommen. Unter anderem dabei: Eine kleine Sammlung zur Erstellung eines USBtiny IR-Empfängers. Inzwischen ist er zusammen und funktioniert wie ein Quantencomputer – mal klappts, mal nicht. Aber wenn er einmal läuft klappt alles.

Bild: http://adlersa.yotaweb.de/blog/wp-content/uploads/2007/02/im000409.thumbnail.JPG

Weitere Bilder: PaketBrennen des AVR

Totenstille am Hörer

Sontag früh am Morgen, 11:50. Ein dumpfes Klopfen an der Tür beendet aprupt den Schlaf. Schon wieder Essenszeit. Der Lichtschalter ist zu weit weg, aber ich kann das ja auch per Telefon neben dem Bett erledigen, also Hörer abheben und wäh – Moment. Kein Freizeichen?! Also doch die 1,5m bis zum Lichtschalter bewegen.

Kurze Analyse: Alle ISDN-Anschlüsse tod. Inzwischen weiß ich auch warum: Meine schöne ISDN-Karte ist verreckt und hat den kompletten Bus lahmgelegt. Dumm – das war nämlich eine HFPCI, welche unter Bastlern einen sehr guten Ruf hat. Nunja, muss ich wohl erst mal auf meinen kleinen Asterisk am ISDN verzichten 🙁

Pixelgrube

Der Laptop bastelt einen neuen Kernel, der Spielerechner ist ebenfalls voll und ganz mit Updates beschäftigt und der Server – naja, ich bin einfach nur zu faul da jetzt ein KVM-Kabel zu verlegen. Was macht man dann? Richtig – man sucht nach Dingen, die man schon lange mal machen wollte. Aufräufen steht da bei mir seit Jahren auf der Liste. Ganz so weit bin ich dann doch nicht gekommen. In einer alten Elektrokiste fand ich noch ein schönes 16x4er LCD. Verdammt – das ist jetzt schon das Zweite… Naja, also direkt mal neu verdrahtet und an meinen AVR gehangen – siehe da, es tuts noch. Dummerweise passen momentan nur 2 LCDs simultan an den Controller, aber mit einer anderen Verkabelung kann ich (zumindest nach meinem Wissensstand) bis zu 13 Displays ohne Anpassungen an den Fuse-Bits dranhängen. Ich geh dann mal weiter LCDs such…. ähh… Aufräumen.

Bild: http://adlersa.yotaweb.de/blog/wp-content/uploads/2007/01/im000366_small.thumbnail.JPG

Mikro-Mitstreiter

Beim durchstöbern der Videos des 23C3 ist mir ein sehr interessantes Projekt begegnet: Etherrape. Hierbei handelt es sich um ein Projekt, welches einen Mikrokontroller aus der Serie, welche auch ich nutze mit einer Netzwerkkarte ausstatten möchte. Für mich nicht so interessant, da ich ohnehin alles über meinen Server steuern kann. Sehr interessant jedoch das „Drumrum“. Die Platine soll so ziemlich alles an Steuersystemen können, was man sich nur denken kann:

  • RS232
  • RS485/422 (half- /fullduplex)
  • Dalls 1wire bus
  • Infrared Receiver and Transmitter
  • MCA-25 Handy-Camera with VGA resolution
  • I2C
  • SPI

Hört sich alles sehr gut an. Vorallem den 1-Wire-Bus wollte ich mir ohnehin anschauen – so ein Paar Temperatursensoren an nur einem Pin sing immer gut. Leider ist die Software in C, aber ich denke die Protokolle lassen sich recht einfach nach ASM portieren. Irgendwann mal – erst mal werde ich mal meine eigene RS232-to-HD44780-Schnittstelle fertig basteln.

Ein AVR lernt Linux

Wie ich schon geschrieben habe kann ich ein kleines Bastlerset für AVR-Mikrocontroller mein Eigen nennen. Inzwischen habe ich das Ding auch dank avra und avrdude unter Linux am laufen und kann schön meine Assembler-Basteleien auf den Chip brennen. Nach der üblichen Testreihe mit LED-Blinken, Tasterspielereien und Co hab ich nun meine erste brauchbare Anwendung. Der Chip holt sich über die serielle Schnittstelle Systeminfos von meinem Server und verteilts passend auf 2 HD44780-LCDs. Schon mal ein Anfang – als nächstes werde ich mal versuchen mir einen kleines Bussystem zu bauen um mehrere Controller zu vernetzen. CAN hört sich da recht brauchbar an.

Bild: http://adlersa.yotaweb.de/blog/wp-content/uploads/2007/01/im000361_small.thumbnail.JPG