Samstag, 4. September 2010

[WIP] Talk to me - Ein kleines Arduino-Projekt.

(last edit : 28.10.2010)
(Anmerkung: Zur Zeit ist das wirklich nur eine sehr kurze Anleitung, die ich zu einem späteren Zeitpunkt hoffentlich noch ausbauen kann)

Vor kurzem habe ich ein Arduino-Board erworben. Da ich noch zusätzlich ein LCD hatte, wollte ich natürlich auch damit arbeiten.

Nach einiger Einarbeitung kam ich auch zum Beispiel "Texte per serieller Schnittstelle an das Arduino-Board senden". Da war auch schon die Idee da: Ich lasse mir übers Internet Nachrichten ans LCD schicken.


Neu ist die Idee nicht, ich hab das schon irgendwo mal gesehen. Dennoch wollte ich das mal probieren.

Da ich kein Ethernet-Shield habe, muss das Board per USB am PC bleiben, die Kommunikation erfolgt per serieller Schnittstelle. Das Board muss also die ganze Zeit am USB hängen.

Da ich eigentlich an meiner Belegarbeit arbeiten müsste, nur eine (ganz kurze) Projektvorstellung:

Was wird benötigt?

Hardware

Erstmal braucht man ein Board. Ich verwende das Arduino Duemilanove. Wer das ältere Diecimila benutzt, ist sogar besser dran - siehe weiter unten, warum.
Weiterhin braucht man ein LCD (jedes sollte funktionieren, sofern es sich per LiquidCrystal-Bibliothek ansteuern lässt), evtl. eine Diode (ich hab hier eine 1N4007).

Ein Potentiometer zur Kontrasteinstellung sollte auch vorhanden sein.

Wer ein Board mit Autoreset hat, braucht auch einen 110~120 Ohm Widerstand. (2x 220 Ohm parallel tun es natürlich auch).

(edit, 09.09.2010)

Fritzing sei dank kann ich euch meine Schaltung zur Verfügung stellen:



Für den Aufbau der Schaltung siehe obige Abbildung.
Weiterhin verweise ich hier  auf http://arduino.cc/en/Tutorial/LiquidCrystal und auf http://www.ladyada.net/learn/lcd/charlcd.html. Lest zur Pinbelegung des LCD auf jeden Fall das Datenblatt.

Meins LCD verträgt z.B. nur 4,2 Volt am Eingang des Backlight-Pins. Daher brauch ich die Diode, um die Spannung von 5V auf 4,3 V runterzubekommen. (Wenn Ihr wollt, könnt ihr auch einen Spannungsteiler mit einem 2. Poti aufbauen, damit ihr die Helligkeit regeln könnt).

Nochmal zum Autoreset: Wenn ihr per echo Daten an /dev/ttyUSB0 sendet, resettet sich das Board, Das führt dazu, dass die Nachricht am Ende nicht auf dem LCD angezeigt wird. Deshalb muss der Reset-Pin über einen 110 Ohm-Wiederstand mit 5V verbunden werden. Ist der Widerstand größer, resettet sich das Board trotzdem, ist er kleiner, zerschießt ihr evtl. euer Board (danke an die Leute vom arduino.cc Forum)

DAS führt natürlich dazu, dass Arduino(IDE) das Board beim Programmieren nicht automatisch resettet. Also den Wiederstand beim Programmieren entfernen oder manuell resetten. (Ich muss sowieso den 5V-Stecker beim Programmieren entfernen, da der Programmer sonst nicht erreichbar ist.)

Wie oben erwähnt: Die älteren  Diecimila haben kein Autoreset und brauchen das nicht.

Software

Ich gehe hier nur Auf Linux ein. Ich hab keine Ahnung, wie man unter Windows Daten direkt an nen COM-Port per Kommandozeile schickt. Vll. kann ja jemand was dazu beitragen.
Weiterhin solltet ihr auf eurem PC einen Webserver mit PHP-Unterstützung haben. Ich hab hier Lampp laufen.
Arduino-Entwicklungsumgebung sollte installiert sein, wenn ihr wisst wie, könnt ihr auch direkt in Emacs rumhacken, das ganze per avr-gcc kompilieren und dann mit avrdude brennen (Arduino-Entwicklungsumgebung macht nichts anderes).

Hier der Code von der Sketch: http://c.pastebin.com/niFH8DSC
Ich hab hier ein 16x2 LCD mit meiner Anschlussbelegung. Wie das LCD-Objekt initialisiert werden muss, steht auch auf der arduino.cc Seite.
Wenn ihr ein 4-zeiliges LCD habt, könnt ihr den Quelltext natürlich anpassen.

Bash-Skript: http://pastebin.com/aLSvEgEt
Das Bash Skript prüft die Text-Datei, in die per PHP die Nachrichten geschrieben werden.
Das Bash-Skript muss evtl noch ergänzt werden, sodass zu Beginn der /dev/ttyUSB-Port mit einer Baud von 9600 initialisiert wird. Dazu wird der Befehl

stty -F /dev/ttyUSB0  9600

als erstes ausgeführt werden. Falsche Baud führt jedenfalls zu falschen Zeichen auf dem Display

Zuletzt noch die Seiten für den Webserver:
Das Formular: http://pastebin.com/Lw1qv8bp
Und die Seite, die die Eingaben verarbeitet: http://pastebin.com/y84K80Zx

Es empfiehlt sich ggf, das Formular mit einem Captcha zu schützen oder andere Schutzmaßnahmen einzubauen. Ansonten kann es passieren, dass man zugespammt wird. Mit curl ist es z.B. möglich, Daten an Formulare (sowohl POST als auch GET) zu senden.

Sollte ich in meiner Eile was vergessen haben, sagt Bescheid ^^
Hier noch ein Bild vom Ergebnis. Hier kann man auch gleich etwas von der Verkabelung erkennen, der +Pin ist 5V, der -Pin logischerweise auf GND

ArduLCD


Stumble Upon Toolbar

Freitag, 31. Juli 2009

Firefox erreicht eine Milliarde Downloads! / Admins Day

Heute um 15:00 Uhr UTC (17:00 CEST) wurde eine Marke überschritten:

Der Browser Firefox wurde zum 1 Milliardsten mal heruntergeladen.

Glückwunsch!

Glückwunsch auch allen Admins auf der Welt, heute ist zusätzlich Admins Day.

Links

Tweets zu Firefox 1000 million


Stumble Upon Toolbar

Sonntag, 14. Juni 2009

WebNews: Petition gegen Internetsperren gestartet

Wie Pro-Linux.de und linux-community.de berichten, wurde eine Internetpetition gegen die geplante Sperrung der sogenannten "Kinderpornoseiten" auf der Bundestagsseite gestartet.
Die Begründung lautet, dass die Sperre durch das simple Ändern des DNS-Servers umgangen werden kann, und die Sperre somit ineffizient ist.
Es sind mindestens 50.000 Stimmen bis zum 16. Juni notwendig, damit sich der Bundestag mit der Petition beschäftigt.

Zurzeit 34.610 Mitzeichner. Zur Unterzeichnung der Petition muss ein Account angelegt werden.

UPDATE (8.5.):
Wie linux-community berichtet, wurde die 50,000er Grenze überschritten.
Tatsächlich haben bisher 55766 unterzeichnet.

[Update] 14.6.2009:

  • Die 121.000er Marke wurde überschritten!
  • Link zu 3sat/neues hinzugefügt
  • Die Mitzeichnungsfrist endet am 16.6.2009!
  • Aufgrund dessen wurde der Artikel auf heute umdatiert, damit er als 1. erscheint
[Update] 17.6.2009:
Die Mitzeichnungsfrist ist abgelaufen, 134.014 Bürger haben mitgezeichnet!

Links

Petition auf der Seite des Bundestages
Informationsseite über die Petition

Bericht auf pro-linux.de
Bericht auf linux-community.de
Bericht auf 3sat/neues

Anleitung zum Ändern des DNS-Servers


Stumble Upon Toolbar

Sonntag, 7. Juni 2009

Freies Magazin 06/2009 erschienen

Themen diesmal:

Linux allgemein

  • Mobiles Linux mit Moblin" von Thorsten Schmidt (Linux allgemein, Mobil)
  • "Debian 5.0-Installation mit einer Braillezeile" von Simon Bienlein (Barrierefreiheit, Debian)
  • "Die Vorgeschichte von Linux" von Dirk Geschke (Linux allgemein)
  • "Der Mai im Kernel-Rückblick" von Mathias Menzer (Linux allgemein)

Software

  • "Toribash - Kampf mit (der) Physik" von Dominik Wagenführ (Spiele)
  • "Erfahrungsbericht: OpenOffice.org 3.0" von Thomas Stehle (Office-Suite)
  • "Keine Angst vor awk - ein Schnelleinstieg" von Marcel Jakobs (Terminal)

Hardware

  • "AVR-Mikrocontroller unter Linux" von Marcel Jakobs (Hardware, Linux allgemein)
Community
  • "ECDL/ICDL wagt sich an OpenOffice.org" von Maik Uhlig (Community, Office-Suite)
  • "Rezension: Just for Fun - The Story of an Accidental Revolutionary" von Dominik Wagenführ (Buch, Linux allgemein, Rezension)
Magazin
  • "Das Ende des Programmierwettbewerbs" (Magazin)
(Quelle)

Die Ausgabe kann hier heruntergeladen werden.

Links

Homepage des Freien Magazins


Stumble Upon Toolbar

Sonntag, 17. Mai 2009

Yalm 05/2009 erschienen

Die Maiausgabe des Linux-Maganzins yalm ist erschienen.
Themen diesmal:

  • Linux-Support – hier ist guter Rat kostenlos
  • BitTorrent - Der Datenfluss des Internets
  • Suchen und Ersetzen mit AltSearch
  • Tipps und Tricks für die Shell (V): awk
  • MIRO - Freies Internet Fernsehen
  • Schlussbemerkungen
[Q: http://yalmagazine.org]


Stumble Upon Toolbar

Sonntag, 3. Mai 2009

Freies Magazin 05/2009 erschienen

Vor 1 Stunde ist die Maiausgabe des "Freien Magazins" erschienen.

Themen diesmal:

Linux allgemein

  • "Debian GNU/Linux 5.0 „Lenny“ - Der Zustand der Distribution" von Hans-Joachim Baader (Debian)
  • "Ausgeflasht: Ein Versuch mit Gnash und Swfdec" von Thorsten Schmidt (Multimedia)
  • "RSS-Feeds: Technik und Nutzen kurz vorgestellt" von Martin Thoma (Internet, RSS)
  • "Der April im Kernel-Rückblick" von Mathias Menzer (Linux allgemein)
  • "GPL-Lizenzenzschwierigkeiten" von Dominik Wagenführ (Lizenz, Programmierung)

Software

  • "Virtualisierung im Allgemeinen und KVM unter Proxmox VE im Speziellen" von Udo Lembke (Virtualisierung)
  • "Geh spielen! - GoPlay zur Suche nach Software einsetzen" von Hans-Joachim Baader (Debian, Paketverwaltung)
  • "Kennwortgedächtnis auslagern mit KeePassX" von Mathias Menzer (Sicherheit)
  • "Kurztest: Bespin" von Moritz Lüdecke (Editor, Internet)
  • "Kurztipp: Splitscreens mit Vim" von Marcel Jakobs (Editor, Konsole)

Hardware

  • "Das Netbook-Touchpad: Ein ergonomisches Disaster" von Thorsten Schmidt (Hardware, Mobil)
(Quelle)

Die Ausgabe kann hier heruntergeladen werden.

Links

Homepage des Freien Magazins


Stumble Upon Toolbar

Donnerstag, 30. April 2009

WebNews: Tschüss last.fm - 3rd party clients ausgedient

Nun ist es passiert: Ich kann mit meinem Lieblings-Client - Vagalume - kein last.fm mehr hören,
Es erscheint nur die Meldung "Ungültige Radio-URL oder Zugriff nur Abonnenten erlaubt" (sinngemäß)

Nun, der einzige Client, der jetzt für Nicht-Abonnenten noch funktioniert ist der last.fm - Player -- und der hat Qt4-Abhängigkeiten.
last.fm scheint auch nicht daran interessiert zu sein, eine gtk-Variante zu erstellen, ein Forumsbeitrag von mit blieb unbeantwortet.

Schade, dass last.fm dem Geld verfallen ist. Damit vergrauen sie viele Mitglieder.
Andererseits kann ich es ja auch verstehen, schließlich muss last.fm ja Lizenzgebühren an die großen Musikfirmen zahlen (??)

pandora.com funktioniert ja leider nicht in Deutschland...

[Update] 14.6.2009:
Anscheinend hat last.fm den 3rd-party clients mit alter API noch eine Gnadenfrist gewährt, noch funktionieren sie.
Dass Vagalume nicht funktionierte, lag daran, dass ich die SVN-Version genutzt habe - diese lief schon mit neuer API, und da ich last.fm nicht abonniert habe, funktionierte es nicht.


Stumble Upon Toolbar