http://old.ethersex.de/api.php?action=feedcontributions&user=192168.0&feedformat=atomEthersex_Wiki - Benutzerbeiträge [de-at]2024-03-28T19:03:52ZBenutzerbeiträgeMediaWiki 1.30.0http://old.ethersex.de/index.php?title=Porterweiterung&diff=3988Porterweiterung2010-04-30T10:03:02Z<p>192168.0: /* D/A-Wandler mit LTC1257 */ Schaltbild eingefügt</p>
<hr />
<div>==Porterweiterungen==<br />
<br />
Wenn am AVR schon viele Erweiterungen angeschlossen sind und die freien Ports langsam zur Neige gehen, kann man mit Schieberegistern arbeiten. Zwei dieser Bausteine sind bereits in der SW vorgesehen und können per menuconfig freigeschaltet werden.<br />
<br />
=== 74HC165 als Eingangserweiterung ===<br />
<br />
Der 74HC165 ist ein 8-bit Parallel-in/Seriell-out Schieberegister. Das kann man z.B. dazu benutzen um mehrere Schalteingänge seriell abzufragen. So könnte man z.B. 8 Taster mit nur 3 Leitungen abfragen und spart in diesem Fall 5 Portleitungen. Diese Schaltung ist kaskadierbar, so daß weitere Eingänge abgefragt werden können ohne mehr Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Eing.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== 74HC595 als Ausgangserweiterung ===<br />
<br />
Der 74HC595 ist ein 8-bit Seriell-in/Parallel-out Schieberegister mit Latch. Das Latch braucht man, damit beim seriellen reinschieben der Bits diese nicht nacheinander an den Ausgängen erscheinen, sondern erst wenn das ganze Datenwort reingeschoben ist.<br />
Der 74HC595 ist sogar kaskadierbar, d.h. man kann theoretisch beliebig viele Ausgänge realisieren, ohne weitere Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Ausg.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== 74HC164 als Ausgangserweiterung ===<br />
<br />
Der 74HC164 ist ein 8-bit Seriell-in/Parallel-out Schieberegister. Das kann man z.B. dazu benutzen um ein handelsübliches LCD mit HD44780-Controller mit nur 3 Leitungen anzusteuern (bei direkter Ansteuerung würden 7 Portleitungen benötigt), so wird das bei U. Radig's Webserver gemacht.<br><br />
In diesem Fall wird kein Latch benötigt, da das LCD erst beim Schalten seiner "E"-Leitung (enable) die Daten aus dem Schieberegister übernimmt.<br />
<br />
Schaltbild siehe bei [http://www.ulrichradig.de/home/index.php/software/avr-webserver-software AVR Webserver Software]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
==D/A-Wandler mit LTC1257==<br />
<br />
Der LTC1257 ist ein 12bit Digital-Analog-Wandler mit seriellem Eingang und interner Referenzspannung. Zur Steuerung benötigt er lediglich 3 Portleitungen. Da er laut [http://cds.linear.com/docs/Datasheet/1257fb.pdf Datenblatt] mindestens 4,75 Volt Versorgungsspannung braucht, ist er nicht in Systemen mit 3,3 Volt einsetzbar. Die einfachste Form der Anbindung könnte so aussehen:<br />
<br />
[[Bild:LTC1257.png]]<br />
<br />
Das nötige Pinning ist für AVR-NET-IO bereits vorhanden, in der Zuordnung<br />
*PA0 = LOAD<br />
*PA1 = DATA<br />
*PA2 = CLK<br />
<br />
Mit <code>ltc1257_init</code> werden die Portleitungen passend initialisiert (lt. Datenblatt).<br />
<br />
Mit <code>ltc1257_delay</code> kann die interne Wartezeit in µs gesetzt werden, die zum Erkennen des Flankenwechsels durch den DAC beim Schreiben eines Bits gewartet wird (ist vor allem hilfreich, wenn der LTC1257 über Optopkoppler (z.B. CNY17) entkoppelt ist).<br />
<br />
Mit <code>ltc1257_set</code> werden die tatsächlichen Werte gesetzt, die der LTC1257 dann als Analogsignal ausgibt. Bei der Verwendung von mehreren LTC1257 im Daisy Chain muss die Reihenfolge der Werte für <code>ltc1257_set</code> in der <b>umgekehrten</b> Reihenfolge der DACs gesendet werden (d.h. das erste Argument ist für den letzten DAC).<br />
<br />
[[Category:Ethersex]]<br />
[[Category:Hardware]]</div>192168.0http://old.ethersex.de/index.php?title=Datei:LTC1257.png&diff=3987Datei:LTC1257.png2010-04-30T10:00:59Z<p>192168.0: hat eine neue Version von „Bild:LTC1257.png“ hochgeladen</p>
<hr />
<div>Einfachste DAC-Schaltung mit LTC1257, eagle-export</div>192168.0http://old.ethersex.de/index.php?title=Datei:LTC1257.png&diff=3986Datei:LTC1257.png2010-04-30T09:57:38Z<p>192168.0: Einfachste DAC-Schaltung mit LTC1257, eagle-export</p>
<hr />
<div>Einfachste DAC-Schaltung mit LTC1257, eagle-export</div>192168.0http://old.ethersex.de/index.php?title=SD-Karte&diff=3800SD-Karte2010-03-06T17:39:57Z<p>192168.0: Typos</p>
<hr />
<div>== SD-Karten einbinden ==<br />
<br />
<br />
<br />
<br />
=== Anschlussbelegung der SD-Karte ===<br />
<br />
[[Bild:SD.jpg]] <br />
<br />
* 1 Chip Select = CS<br />
* 2 CMD/DI = MOSI<br />
* 3 GND<br />
* 4 VCC (2,9 - 3,6V)<br />
* 5 CLK/SCLK = SCK<br />
* 6 GND<br />
* 7 DAT/DO = MISO<br />
* 8 NC<br />
* 9 NC<br />
<br />
=== Steckverbinder ===<br />
<br />
Eine günstige Art der Kontaktierung ist wohl das Ausschlachten eines billigen Cardreaders, wenn man keine Kabel direkt an die Karte löten will. Einzeln gekaufte Steckverbinder sind meist erheblich teuerer. <br><br />
Man kann auch alte Floppy-Kabel als günstigen Steckverbinder benutzen. Beispiel: [http://uanr.com/sdfloppy/ Link]<br><br />
Teile von AT-Slots oder Verbinder von 5,25-Zoll-Floppys gehen auch. Notfalls kann man die Karte zwischen 2 Reihen Stiftleiste einklemmen (oder anlöten).<br><br />
Noch günstiger geht's wenn man Mikro- oder Mini-SD-Karten benutzt und den meist beigelegten Adapter anlötet.<br />
<br />
Wer jedoch auf einen Selbstbau verzichten will, kann alternativ für relativ schmales Geld einen fertig aufgebauten SD-Adapter zum Anschließen an den µC unter folgender Adresse beziehen:<br><br />
[http://www.shop.display3000.com/wichtiges-zubehoer/experimentierplatinen/sd-speicherkartenplatine.html Link]<br><br />
Bei diesem Adapter ist bereits eine bidirektionale Pegelanpassung zwischen den 5V-Pegeln der Steuerleitungen des µC's und den 3,3V-Pegel der SD-Karte an Bord. <br />
(es geht auch mit den 5V aber nicht auf Dauer, da sonst die Karte irgendwann hinüber ist!)<br />
<br />
Ich hatte anfangs selbst eine Platine mit einem MAX3378 entworfen, welche auch heute noch super funktioniert, der Aufwand hierfür war jedoch gegenüber dem Anschaffungspreis des Fertigteils enorm ;-)<br />
<br />
Ein weiteres Problem bei den SD Karten ist die Initialisierung. Schafft man es nicht das ethersex in einer bestimmten Zeit zu syncen, so fällt die Karte in den normalen (nicht den SD) Betriebsmodus und kann vom esex nicht mehr angesprochen werden. Eine Lösung dafür ist, dass man der Karte eine Steuerbare Stromversorgung gibt, damit das esex die Karte selbst du einem Neustart überreden kann. Dazu definiert man im Pinning nur den Pin <br />
<br />
pin(SD_READER_POWERON, PB3, OUTPUT)<br />
<br />
Und steuert damit die Stromversorgung der Karte. Zum Beispiel indem man die GND Leitung der Karte mittels eines N-Kanal Mosfets, dessen Gate am PB3 (im Beispiel) hängt. Das resetten macht natürlich nur Sinn, wenn Read Timeout und SD Ping Read eingeschaltet ist.<br />
Dann mault er im debug log zwar erstmal dass die Karte ne MMC ist und er überhaupt nit mit ihr mag, aber nach ein paar Versuchen geht's dann doch.<br />
<br />
=== Welcher Port ===<br />
<br />
Angeschlossen wird die Karte an das SPI interface. Für ethersex muss dann nur das Chipselect eingestellt werden:<br />
<br />
Hier dazu mal das Beispiel aus der '''pinning/hardware/radig_web.m4'''<br />
/* port the sd-reader CS is attached to */<br />
pin(SPI_CS_SD_READER, PB1, OUTPUT)<br />
<br />
=== Ethersex Einstellung ===<br />
<br />
In der menuconfig folgendes einstellen<br />
General<br />
=> VFS<br />
=> SD/MMC-Card Access<br />
<br />
=== Dateisystem auf der SD-Karte ===<br />
<br />
FAT16<br />
<br />
Um ein FAT16 auf eine SD-Karte zu bringen ist folgender Befehl, natuerlich auf das richtige Device in /dev nötig<br />
<br />
mkfs -t msdos /dev/sdd1<br />
<br />
== SD-Karte Schaltplan ==<br />
<br />
Hier findet man einen Schaltplan und Software zur weiterentwicklung.<br />
<br />
http://www.roland-riegel.de/sd-reader/index.html<br />
<br />
[[bild:sd-adapter.jpg|400px]] [[bild:sd-avr-net-io.jpg|400px]]<br />
<br />
SD-mini-Adapter auf lochraster.<br />
<br />
SD-Karte (mini-SD) am AVR-NET-IO wie beschrieben in obenstehendem URL.<br />
<br />
Am J11 liegt in mitten PB1. Am ISP Buchse ist Pin 3 frei.<br />
<br />
Draht loeten zwischen J11 (mitten) und pin3 ISP-Buchse. (siehe Bild)<br />
<br />
In pinning/hardware/netio.m4 sollte folgendes stehen.<br />
<br />
/* port the sd-reader CS is attached to */<br />
pin(SPI_CS_SD_READER, PB1, OUTPUT)<br />
<br />
(PB1 statt PB2)<br />
<br />
Vorsicht - Ein Adapter leidet schnell an Wackelkontakten. Und er ist mechanisch weniger stabil. <br />
<br />
<br />
== SD Karte und Control6 ==<br />
Um zum Beispiel eine Logging Funktion (Z.B für Temperaturen) mittels Control6 zu implementieren, reicht folgendes<br />
<br />
<pre><br />
THREAD(logging)<br />
static counter = 0;<br />
VFS_LOG("log", "data: %d\n", counter++;<br />
WAIT(5);<br />
THREAD_END(logging)<br />
<br />
ON STARTUP DO<br />
THREAD_START(logging);<br />
END<br />
</pre><br />
<br />
Dies inkrementiert alle 5 Sekunden einen Counter und hängt eine Zeile an die Datei "log" an.<br />
<br />
[[Category:Ethersex]]<br />
[[Category:Hardware]]<br />
[[Category:SD-Karte]]<br />
[[Category:Control6]]</div>192168.0http://old.ethersex.de/index.php?title=SD-Karte&diff=3464SD-Karte2010-01-13T13:32:40Z<p>192168.0: Steckverbinder aufgeräumt.</p>
<hr />
<div>== SD-Karten einbinden ==<br />
<br />
<br />
<br />
<br />
=== Anschlussbelegung der SD-Karte ===<br />
<br />
[[Bild:SD.jpg]] <br />
<br />
* 1 Chip Select = CS<br />
* 2 CMD/DI = MOSI<br />
* 3 GND<br />
* 4 VCC (2,9 - 3,6V)<br />
* 5 CLK/SCLK = SCK<br />
* 6 GND<br />
* 7 DAT/DO = MISO<br />
* 8 NC<br />
* 9 NC<br />
<br />
=== Steckverbinder ===<br />
<br />
Eine günstige Art der Kontaktierung ist wohl das Ausschlachten eines billigen Cardreaders, wenn man keine Kabel direkt an die Karte löten will. Einzeln gekaufte Steckverbinder sind meist erheblich teuerer. <br><br />
Man kann auch alte Floppy-Kabel als günstigen Steckverbinder benutzen. Beispiel: [http://uanr.com/sdfloppy/ Link]<br><br />
Teile von AT-Slots oder Verbinder von 5,25-Zoll-Floppys gehen auch. Notfalls kann man die Karte zwischen 2 Reihen Stiftleiste einklemmen (oder anlöten).<br><br />
Noch günstiger geht's wenn man Mikro- oder Mini-SD-Karten benutzt und den meist beigelegten Adapter anlötet.<br />
<br />
Wer jedoch auf einen Selbstbau verzichten will, kann alternativ für relativ schmales Geld einen fertig aufgebauten SD-Adapter zum Anschließen an den µC unter folgender Adresse beziehen:<br><br />
[http://www.shop.display3000.com/wichtiges-zubehoer/experimentierplatinen/sd-speicherkartenplatine.html Link]<br><br />
Bei diesem Adapter ist bereits eine bidirektionale Pegelanpassung zwischen den 5V-Pegeln der Steuerleitungen des µC's und den 3,3V-Pegel der SD-Karte an Bord. <br />
(es geht auch mit den 5V aber nicht auf Dauer, da sonst die Karte irgendwann hinüber ist !)<br />
<br />
Ich hatte anfangs selbst eine Platine mit einem MAX3378 entworfen, welche auch heute noch super funktioniert, der Aufwand hierfür war jedoch gegenüber dem Anschaffungspreis des Fertigteils enorm ;-)<br />
<br />
=== Welcher Port ===<br />
<br />
Angeschlossen wird die Karte an das SPI interface. Für ethersex muss dann nur das Chipselect eingestellt werden:<br />
<br />
Hier dazu mal das Beispiel aus der '''pinning/hardware/radig_web.m4'''<br />
/* port the sd-reader CS is attached to */<br />
pin(SPI_CS_SD_READER, PB1, OUTPUT)<br />
<br />
=== Ethersex Einstellung ===<br />
<br />
In der menuconfig folgendes einstellen<br />
General<br />
=> VFS<br />
=> SD/MMC-Card Access<br />
<br />
=== Dateisystem auf der SD-Karte ===<br />
<br />
FAT16<br />
<br />
<br />
<br />
[[Category:Ethersex]]<br />
[[Category:Hardware]]<br />
[[Category:SD-Karte]]</div>192168.0http://old.ethersex.de/index.php?title=LCD&diff=3015LCD2009-11-19T12:56:58Z<p>192168.0: Typos, EMCD</p>
<hr />
<div>Diese Seite beschäftigt sich damit ein LCD an die Platine anzuschliessen und zu betreiben.<br />
==HD44780==<br />
Die folgenden Displays wurden gestestet:<br />
* Pollin, SC1604A, Bstnr. 120 572 (gestestet von #OR)<br />
* Pollin, YL162-90, Bstnr. 120 060 (getestet von SuperRiggi)<br />
* Pollin, TC1602E-01, Bstnr. 120 420 (getestet von Bitfehler)<br />
* Solomon, LM1180SYL (getestet von Doozer)<br />
* Conrad, AV2040, Bstnr. 181657-62, - Controller Type ks0067b auswählen - (getestet von punktl)<br />
* Bürklin, Peaktech P204A, Bstnr. 72S1170, - Controller ks0067b (getestet von michi)<br />
* Reichelt, Displaytech 162<br />
* weitere?<br />
<br />
=== Pollin AVR-NET-IO ===<br />
Da ich ein Pollin Board verwende, hier also die Beschreibung für ein AVR-NET-IO (:biggrin:). Den Anschluss des LCD habe ich von http://www.sprut.de/electronic/lcd/lcd.gif übernommen. Die folgende Grafik zeigt den Anschluss an den Controller:<br />
<br />
[[Bild:ethersex_LCD.png]]<br />
<br />
Wer ein bißchen besser löten kann, benötigt keine Anschlussplatine und kann das Ganze auch direkt auf einen SUB-D Stecker löten, die Stiftnummern stehen in der Grafik dabei.<br />
<br />
Bei dem YL162-90 ist zu beachten, dass Vo (Kontrast) nicht mit positiver Spannung anzusteuern ist. Die negative Spannung ist am besten über ein 10kOhm-Potentiometer vom Pin 6 des RS232-Bausteines (Pollin AVR Board) abzugreifen. Bei ca. 5kOhm ist das Display gut zu erkennen.<br />
<br />
Danach muss nochmal compiliert werden:<br />
<br />
* make menuconfig<br />
* Untermenu &quot;I/O support&quot;<br />
* den Punkt &quot;HD44780 Module Driver&quot; aktivieren<br />
* in selbiges Untermenu abtauchen und noch &quot;Readback Support&quot; und &quot;Use Port C&quot; aktivieren<br />
* danach rausgehen, speichern, compilieren, laden <br />
<br />
'''&quot;Use Port C&quot; nicht mehr im Menü vorhanden (Nov. 2009) -> das gibt Compilerfehler. Also manuell pinnen:'''<br />
<br />
ifdef(`conf_HD44780', `<br />
pin(HD44780_RS, PC0)<br />
pin(HD44780_RW, PC1)<br />
pin(HD44780_EN, PC2)<br />
pin(HD44780_D4, PC3)<br />
pin(HD44780_D5, PC4)<br />
pin(HD44780_D6, PC5)<br />
pin(HD44780_D7, PC6)<br />
')<br />
<br />
Mehr Info dazu auch unter [[Pins_in_Ethersex_definieren]] und [[Ethersex_Hardware_hinzufügen]].<br />
<br />
Das LCD macht nach dem Einschalten erstmal gar nix. Zum Testen geht am besten der ECMD.<br />
* ''netcat 192.168.0.90 2701'' aufrufen<br />
* dann ''lcd write Hallo'' eingeben<br />
<br />
Man sollte jetzt etwas auf dem LCD lesen können.<br />
<br />
=== Weitere Spielereien mit dem LCD ===<br />
Leider habe ich noch nicht rausbekommen, wie man zb. die 1wire Temperatursensoren oder die ADC oder die Ports möglichst elegant auf das LCD bekommt :-). Aber vielleicht hat ja von Euch einer eine Idee.<br />
* Unter [[Dallas 1-wire Bus#Einbindung in Control6]] findet sich ein kleines [[Control6]]-Skript, mit dem man die Messwerte von 1-wire Temperatursensoren mit Hilfe des TTY-Layers auf's Display zaubern kann. --[[Benutzer:Stella|Stella]] 15:19, 26. Jun. 2009 (UTC)<br />
<br />
<br />
==S1D15G10==<br />
Diesen LCDisplay Controller findet man in diversen Mobiltelefonen. Ich habe das LCDisplay aus einem Nokia6610 ausgebaut.<br />
<br />
Einige Online Portale/Händler bieten es auch incl. Anschlussplatine an.<br />
<br />
Die folgenden Displays wurden getestet:<br />
* Epson, S1D15G10, ausgebaut aus Nokia6610 (getestet von veyron)<br />
* weitere?<br />
<br />
Das 130x130 1.5" FarbLCD mit dem integrierten Controller S1D15G10 wird zB. so angeschlossen:<br />
<br />
RESET, PB0<br />
DATA, SPI_MOSI<br />
CLK, SPI_SCK<br />
CS, PD7<br />
<br />
Beispiel für Atmega644: pinning/hardware/etherrape.m4<br />
<br />
ifdef(`conf_S1D15G10', `dnl<br />
/* port config for s1d15g10 lcd */<br />
pin(S1D15G10_CS, PA3, OUTPUT)<br />
pin(S1D15G10_RESET, PA1, OUTPUT)<br />
')<br />
<br />
Da die Daten via SPI generiert werden, können nur die Pins für RESET und ChipSelect frei gewählt werden.<br />
<br />
Die Stromversorgung für den LCDController sollte '''nicht''' über 4V liefern! Die Pins sollten 3.6V '''nicht''' übersteigen! Die Hintergrundbeleuchtung braucht 6V - 7V.<br />
<br />
Da der AVR meines etherrapes mit 5V läuft, hab ich jeweils eine 3V6 Zenerdiode und einen 1k5Ohm Pullup zwischen AVR und LCD gehangen.<br />
<br />
In menuconfig:<br />
│ │ Load a Default Configuration ---><br />
│ │ General Setup ---><br />
│ │ Network protocols ---><br />
│ │ I/O support ---><br />
...<br />
│ │ [*] S1D15G10 module driver (130x130-R/G/B-LCD)<br />
<br />
Auf dem LCD wird dann ein bisschen farbiger Text auf schwarzem Hintergrund und das E-Sex Logo angezeigt.<br />
<br />
Ist Debug und ECMD via UART aktiv, wird dies auch auf dem LCD ausgeben.<br />
<br />
Das sieht dann so aus:<br />
<br />
[[Bild:veyrons_ethersex_S1D15G10.jpg]]<br />
<br />
=== Bezugsquellen ===<br />
<br />
* [http://www.sparkfun.com/commerce/product_info.php?products_id=569 Sparkfun] vertreibt das LCD incl. Anschlussplatine<br />
* In folgenden Nokia Handys wurden diese LCDs verbaut:<br />
**6100, 6610, 7210, 7250, und 5100<br />
<br />
<br />
==Ansteuerung per ECMD==<br />
<br />
Folgende Befehle sind für's LCD vorhanden:<br />
{| border=1 cellspacing=0 padding=4 class=wikitable<br />
! Kommando !! Funktion <br />
|- <br />
|lcd char N D1 D2 D3 D4 D5 D6 D7 D8 || Benutzer-definierbares Zeichen N erstellen mit den Daten D1..D8 (in Hex) <br />
|- <br />
|lcd clear ZEILE || Lösche ZEILE (0..3) oder das ganze Display (wenn ohne Parameter) <br />
|- <br />
|lcd goto ZEILE SPALTE || Setze den Cursor auf ZEILE und SPALTE (Ursprung ist 0/0) <br />
|- <br />
|lcd reinit CURSOR BLINK || Reinitialisiere das Display, schalte CURSOR aus oder ein (0 oder 1) und ob der Cursor BLINKen soll <br />
|- <br />
|lcd shift RICHTUNG || Schiebe die ganze Anzeige in RICHTUNG (entweder 'left' oder 'right') <br />
|- <br />
|lcd write TEXT || Schreibe TEXT an die momentane Cursorposition <br />
|}<br />
<br />
Diese Tabelle wurde von [[Ecmd_Reference | Ecmd Reference]] übernommen und übersetzt.<br />
<br />
Anmerkung: Das Zeichen-definieren scheint zu funktionieren, jedenfalls wird "OK" zurückgegeben. Aber wie rufe ich das Zeichen auf, d.h. wie übergebe ich 'lcd write <hex00>'?<br />
<br />
<br />
[[Category:Ethersex]]<br />
[[Category:StepByStep]]<br />
[[Category:LCD]]</div>192168.0http://old.ethersex.de/index.php?title=SD-Karte&diff=3013SD-Karte2009-11-18T22:11:52Z<p>192168.0: /* SD-Karten einbinden */ Bild eingefügt</p>
<hr />
<div>== SD-Karten einbinden ==<br />
<br />
<br />
'''''Kann hier bitte mal jemand helfen?'''''<br />
<br />
<br />
<br />
Anschlussbelegung der SD-Karte<br />
<br />
[[Bild:SD.jpg]] <br />
<br />
Die günstigste Art der Kontaktierung ist wohl das Ausschlachten eines billigen Cardreaders, wenn man keine Kabel direkt an die Karte löten will. Einzeln gekaufte Steckverbinder sind meist erheblich teuerer.<br />
<br />
- welcher Port?<br />
<br />
- Steckverbinder<br />
<br />
- SW<br />
<br />
- was sonst noch?</div>192168.0http://old.ethersex.de/index.php?title=Datei:SD.jpg&diff=3012Datei:SD.jpg2009-11-18T22:04:54Z<p>192168.0: Kontaktbelegung SD-Karte, Eigenbild</p>
<hr />
<div>Kontaktbelegung SD-Karte, Eigenbild</div>192168.0http://old.ethersex.de/index.php?title=Feature_Liste&diff=3011Feature Liste2009-11-18T21:32:48Z<p>192168.0: /* Verschiedenes */ Link zu SD-Karte</p>
<hr />
<div>== Die (wichtigsten) Features von Ethersex ... ==<br />
<br />
=== Netzwerkanbindung ===<br />
Die Ethersex-Firmware erlaubt es IP über diverse Schnittstellen zu sprechen. Die Möglichkeiten können flexibel miteinander kombiniert werden, das heißt, man kann die Firmware auch auf Hardware einsetzen, die sowohl an Ethernet als auch an [[RFM12]] (Funkübertragung) anbindet.<br />
<br />
* Ethernet ([[ENC28J60]]) inkl. IEEE 802.1q (VLANs)<br />
* [[USB]]<br />
* [[RFM12]] (Funkübertragung auf dem 433 MHz ISM-Band)<br />
* [[ZBUS]]<br />
<br />
Ebenfalls wird die verschlüsselte und authentifizierte Kommunikation per [[OpenVPN]] unterstützt.<br />
<br />
=== Interaktion mit dem Anwender ===<br />
Ethersex kann zur Laufzeit per ECMD (Ethernet Command) gesteuert werden. Der Name ist eher historisch, solche Befehle können selbstverständlich auch per Funk übertragen werden. Mittels ECMD können zum Beispiel die einzelnen Ports angesteuert und die IP-Adressen abgeändert werden, uvm.<br />
<br />
* [[HTTPD|HTTP-Server]] (mit Zugriff auf Dateien und [[ECMD]])<br />
* text-basiert (Telnet-ähnlich, wahlweise per TCP/IP oder UDP/IP)<br />
* über serielle Schnittstelle<br />
* über [[I2C]]<br />
* via Jabber/XMPP<br />
* via IRC<br />
<br />
Eine (leider noch unvollständige) Liste der unterstützen Befehle findet sich unter [[Ecmd Reference]].<br />
<br />
Der Webserver ist in der Lage Dateien auszuliefern, die beim Kompilieren an das Firmwareimage angehängt wurden. Zusammen mit verstärkten Einsatz von JavaScript können so mit einfachen Mitteln relativ leistungsfähige Webseiten erstellt werden. Details siehe [[HTTPD]]<br />
<br />
=== Unterstützte Netzwerkprotokolle ===<br />
* TCP/IP, UDP/IP und ICMP<br />
* BOOTP (einfacherer, besser geeigneterer, Vorgänger von DHCP, der jedoch von allen gängigen DHCP-Servern unterstützt wird)<br />
* TFTP (Upload von Firmwaredateien bzw. in den Data Flash Baustein)<br />
* SYSLOG<br />
* SNMP<br />
* SMTP (E-Mail-Versand)<br />
* NTP (Client und Server)<br />
* DNS<br />
* mDNS (Avahi)<br />
* DynDNS<br />
* MySQL (Client)<br />
* IRC (Client)<br />
* MPD (Music Player Daemon; einfache Steuerungsaufgaben)<br />
* [[SOAP]]/XMLRPC<br />
* [[UPnP]]<br />
<br />
=== Kontakt zur Außenwelt ===<br />
* RS232 und RS485<br />
* Infrarotsender und -empfänger (RC5 Fernbedienungen!)<br />
* [[I2C]] (Master und Slave)<br />
* Steuerung von [[FS20]]-Modulen (Funkmodule von ELV bzw. Conrad, u.a. Steckdosen, Dimmer und Temperatursensoren)<br />
* Modbus<br />
* [[YPort]] (Serial over LAN (SOL) im Handel auch als XPort bekannt)<br />
* [[Blinkenlights MCUF]]<br />
* [[Porterweiterung | Porterweiterungen]] sind durch HC595 und HC165 möglich<br />
* [[Porterweiterung#D.2FA-Wandler_mit_LTC1257 | Digital/Analogwandler]] mit LTC1257<br />
* [[Servo_Ansteuerung]]<br />
* Dateneingabe mittels [[PS/2 Tastatur]]<br />
* [[Dallas 1-wire Bus]]<br />
* [[LCD]] (HD44780 und Kompatible)<br />
* Philips [[dc3840 camera]] und [[MCA25]]-Handycam<br />
* [[Stella Light]] (PWM für bis zu 8 Kanäle)<br />
* Senertec [[Dachs MSR1 auslesen]]<br />
* [[SMS]]<br />
<br />
=== Verschiedenes ===<br />
* Fernsteuern von vielen Funksteckdosen mit [[RFM12 ASK]]<br />
* Atmel [[DataFlash]] (das auf dem Etherrape verbaute [[SPI]] Flash)<br />
* [[SD-Karte|MMC/SD-Kartenleser]]<br />
* [[Sound]]<br />
* [[PAM|PAM Schicht]] zur Authentifizierung (z.b. ECMD-TCP)<br />
* Systemuhr<br />
* [[CRON-Dienst]] (analog dem crond auf Unix-Systemen)<br />
* einzelne Pins können mit symbolischen Namen versehen werden<br />
* [[Control6]]<br />
* [[AliasCmd|Alias Namen]] für Befehle<br />
* [[ECMDScript|ECMD Scripting]]<br />
* Virtuelles Dateisystem für [[DataFlash]], MMC/SD-Karten und EEPROMs<br />
* [[Netstat|Online Statistik]]<br />
<br />
=== Feature requests ===<br />
<br />
* Nutze unseren [http://bugs.ethersex.de Bugtracker]<br />
<br />
[[Category:Ethersex]]</div>192168.0http://old.ethersex.de/index.php?title=SD-Karte&diff=3010SD-Karte2009-11-18T21:32:05Z<p>192168.0: Neuerstellung</p>
<hr />
<div>== SD-Karten einbinden ==<br />
<br />
'''''Kann hier bitte mal jemand helfen?'''''<br />
<br />
- Anschlussbelegung<br />
<br />
- welcher Port?<br />
<br />
- Steckverbinder<br />
<br />
- SW<br />
<br />
- was sonst noch?</div>192168.0http://old.ethersex.de/index.php?title=Porterweiterung&diff=3009Porterweiterung2009-11-18T19:03:14Z<p>192168.0: </p>
<hr />
<div>==Porterweiterungen==<br />
<br />
Wenn am AVR schon viele Erweiterungen angeschlossen sind und die freien Ports langsam zur Neige gehen, kann man mit Schieberegistern arbeiten. Zwei dieser Bausteine sind bereits in der SW vorgesehen und können per menuconfig freigeschaltet werden.<br />
<br />
=== 74HC165 als Eingangserweiterung ===<br />
<br />
Der 74HC165 ist ein 8-bit Parallel-in/Seriell-out Schieberegister. Das kann man z.B. dazu benutzen um mehrere Schalteingänge seriell abzufragen. So könnte man z.B. 8 Taster mit nur 3 Leitungen abfragen und spart in diesem Fall 5 Portleitungen. Diese Schaltung ist kaskadierbar, so daß weitere Eingänge abgefragt werden können ohne mehr Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Eing.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== 74HC595 als Ausgangserweiterung ===<br />
<br />
Der 74HC595 ist ein 8-bit Seriell-in/Parallel-out Schieberegister mit Latch. Das Latch braucht man, damit beim seriellen reinschieben der Bits diese nicht nacheinander an den Ausgängen erscheinen, sondern erst wenn das ganze Datenwort reingeschoben ist.<br />
Der 74HC595 ist sogar kaskadierbar, d.h. man kann theoretisch beliebig viele Ausgänge realisieren, ohne weitere Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Ausg.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== 74HC164 als Ausgangserweiterung ===<br />
<br />
Der 74HC164 ist ein 8-bit Seriell-in/Parallel-out Schieberegister. Das kann man z.B. dazu benutzen um ein handelsübliches LCD mit HD44780-Controller mit nur 3 Leitungen anzusteuern (bei direkter Ansteuerung würden 7 Portleitungen benötigt), so wird das bei U. Radig's Webserver gemacht.<br><br />
In diesem Fall wird kein Latch benötigt, da das LCD erst beim Schalten seiner "E"-Leitung (enable) die Daten aus dem Schieberegister übernimmt.<br />
<br />
Schaltbild siehe bei [http://www.ulrichradig.de/home/index.php/software/avr-webserver-software AVR Webserver Software]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
==D/A-Wandler mit LTC1257==<br />
<br />
Der LTC1257 ist ein 12bit Digital-Analog-Wandler mit seriellem Eingang und interner Referenzspannung. Zur Steuerung benötigt er lediglich 3 Portleitungen. Da er laut [http://cds.linear.com/docs/Datasheet/1257fb.pdf Datenblatt] mindestens 4,75 Volt Versorgungsspannung braucht, ist er nicht in Systemen mit 3,3 Volt einsetzbar.<br />
<br />
{'' Schaltbild todo'' }<br />
<br />
Das nötige Pinning ist für AVR-NET-IO bereits vorhanden, in der Zuordnung<br />
*PA0 = LOAD<br />
*PA1 = DATA<br />
*PA2 = CLK</div>192168.0http://old.ethersex.de/index.php?title=Porterweiterung&diff=3008Porterweiterung2009-11-18T19:01:54Z<p>192168.0: LTC1257 dazu</p>
<hr />
<div>==Porterweiterungen==<br />
<br />
Wenn am AVR schon viele Erweiterungen angeschlossen sind und die freien Ports langsam zur Neige gehen, kann man mit Schieberegistern arbeiten. Zwei dieser Bausteine sind bereits in der SW vorgesehen und können per menuconfig freigeschaltet werden.<br />
<br />
=== 74HC165 als Eingangserweiterung ===<br />
<br />
Der 74HC165 ist ein 8-bit Parallel-in/Seriell-out Schieberegister. Das kann man z.B. dazu benutzen um mehrere Schalteingänge seriell abzufragen. So könnte man z.B. 8 Taster mit nur 3 Leitungen abfragen und spart in diesem Fall 5 Portleitungen. Diese Schaltung ist kaskadierbar, so daß weitere Eingänge abgefragt werden können ohne mehr Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Eing.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== 74HC595 als Ausgangserweiterung ===<br />
<br />
Der 74HC595 ist ein 8-bit Seriell-in/Parallel-out Schieberegister mit Latch. Das Latch braucht man, damit beim seriellen reinschieben der Bits diese nicht nacheinander an den Ausgängen erscheinen, sondern erst wenn das ganze Datenwort reingeschoben ist.<br />
Der 74HC595 ist sogar kaskadierbar, d.h. man kann theoretisch beliebig viele Ausgänge realisieren, ohne weitere Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Ausg.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== 74HC164 als Ausgangserweiterung ===<br />
<br />
Der 74HC164 ist ein 8-bit Seriell-in/Parallel-out Schieberegister. Das kann man z.B. dazu benutzen um ein handelsübliches LCD mit HD44780-Controller mit nur 3 Leitungen anzusteuern (bei direkter Ansteuerung würden 7 Portleitungen benötigt), so wird das bei U. Radig's Webserver gemacht.<br><br />
In diesem Fall wird kein Latch benötigt, da das LCD erst beim Schalten seiner "E"-Leitung (enable) die Daten aus dem Schieberegister übernimmt.<br />
<br />
Schaltbild siehe bei [http://www.ulrichradig.de/home/index.php/software/avr-webserver-software AVR Webserver Software]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== D/A-Wandler mit LTC1257 ===<br />
<br />
Der LTC1257 ist ein 12bit Digital-Analog-Wandler mit seriellem Eingang und interner Referenzspannung. Zur Steuerung benötigt er lediglich 3 Portleitungen. Da er laut [http://cds.linear.com/docs/Datasheet/1257fb.pdf Datenblatt] mindestens 4,75 Volt Versorgungsspannung braucht, ist er nicht in Systemen mit 3,3 Volt einsetzbar.<br />
<br />
{'' Schaltbild todo'' }<br />
<br />
Das nötige Pinning ist für AVR-NET-IO bereits vorhanden, in der Zuordnung<br />
*PA0 = LOAD<br />
*PA1 = DATA<br />
*PA2 = CLK</div>192168.0http://old.ethersex.de/index.php?title=Feature_Liste&diff=3007Feature Liste2009-11-18T18:05:46Z<p>192168.0: /* Kontakt zur Außenwelt */</p>
<hr />
<div>== Die (wichtigsten) Features von Ethersex ... ==<br />
<br />
=== Netzwerkanbindung ===<br />
Die Ethersex-Firmware erlaubt es IP über diverse Schnittstellen zu sprechen. Die Möglichkeiten können flexibel miteinander kombiniert werden, das heißt, man kann die Firmware auch auf Hardware einsetzen, die sowohl an Ethernet als auch an [[RFM12]] (Funkübertragung) anbindet.<br />
<br />
* Ethernet ([[ENC28J60]]) inkl. IEEE 802.1q (VLANs)<br />
* [[USB]]<br />
* [[RFM12]] (Funkübertragung auf dem 433 MHz ISM-Band)<br />
* [[ZBUS]]<br />
<br />
Ebenfalls wird die verschlüsselte und authentifizierte Kommunikation per [[OpenVPN]] unterstützt.<br />
<br />
=== Interaktion mit dem Anwender ===<br />
Ethersex kann zur Laufzeit per ECMD (Ethernet Command) gesteuert werden. Der Name ist eher historisch, solche Befehle können selbstverständlich auch per Funk übertragen werden. Mittels ECMD können zum Beispiel die einzelnen Ports angesteuert und die IP-Adressen abgeändert werden, uvm.<br />
<br />
* [[HTTPD|HTTP-Server]] (mit Zugriff auf Dateien und [[ECMD]])<br />
* text-basiert (Telnet-ähnlich, wahlweise per TCP/IP oder UDP/IP)<br />
* über serielle Schnittstelle<br />
* über [[I2C]]<br />
* via Jabber/XMPP<br />
* via IRC<br />
<br />
Eine (leider noch unvollständige) Liste der unterstützen Befehle findet sich unter [[Ecmd Reference]].<br />
<br />
Der Webserver ist in der Lage Dateien auszuliefern, die beim Kompilieren an das Firmwareimage angehängt wurden. Zusammen mit verstärkten Einsatz von JavaScript können so mit einfachen Mitteln relativ leistungsfähige Webseiten erstellt werden. Details siehe [[HTTPD]]<br />
<br />
=== Unterstützte Netzwerkprotokolle ===<br />
* TCP/IP, UDP/IP und ICMP<br />
* BOOTP (einfacherer, besser geeigneterer, Vorgänger von DHCP, der jedoch von allen gängigen DHCP-Servern unterstützt wird)<br />
* TFTP (Upload von Firmwaredateien bzw. in den Data Flash Baustein)<br />
* SYSLOG<br />
* SNMP<br />
* SMTP (E-Mail-Versand)<br />
* NTP (Client und Server)<br />
* DNS<br />
* mDNS (Avahi)<br />
* DynDNS<br />
* MySQL (Client)<br />
* IRC (Client)<br />
* MPD (Music Player Daemon; einfache Steuerungsaufgaben)<br />
* [[SOAP]]/XMLRPC<br />
* [[UPnP]]<br />
<br />
=== Kontakt zur Außenwelt ===<br />
* RS232 und RS485<br />
* Infrarotsender und -empfänger (RC5 Fernbedienungen!)<br />
* [[I2C]] (Master und Slave)<br />
* Steuerung von [[FS20]]-Modulen (Funkmodule von ELV bzw. Conrad, u.a. Steckdosen, Dimmer und Temperatursensoren)<br />
* Modbus<br />
* [[YPort]] (Serial over LAN (SOL) im Handel auch als XPort bekannt)<br />
* [[Blinkenlights MCUF]]<br />
* [[Porterweiterung | Porterweiterungen]] sind durch HC595 und HC165 möglich<br />
* [[Porterweiterung#D.2FA-Wandler_mit_LTC1257 | Digital/Analogwandler]] mit LTC1257<br />
* [[Servo_Ansteuerung]]<br />
* Dateneingabe mittels [[PS/2 Tastatur]]<br />
* [[Dallas 1-wire Bus]]<br />
* [[LCD]] (HD44780 und Kompatible)<br />
* Philips [[dc3840 camera]] und [[MCA25]]-Handycam<br />
* [[Stella Light]] (PWM für bis zu 8 Kanäle)<br />
* Senertec [[Dachs MSR1 auslesen]]<br />
* [[SMS]]<br />
<br />
=== Verschiedenes ===<br />
* Fernsteuern von vielen Funksteckdosen mit [[RFM12 ASK]]<br />
* Atmel [[DataFlash]] (das auf dem Etherrape verbaute [[SPI]] Flash)<br />
* MMC/SD-Kartenleser<br />
* [[Sound]]<br />
* [[PAM|PAM Schicht]] zur Authentifizierung (z.b. ECMD-TCP)<br />
* Systemuhr<br />
* [[CRON-Dienst]] (analog dem crond auf Unix-Systemen)<br />
* einzelne Pins können mit symbolischen Namen versehen werden<br />
* [[Control6]]<br />
* [[AliasCmd|Alias Namen]] für Befehle<br />
* [[ECMDScript|ECMD Scripting]]<br />
* Virtuelles Dateisystem für [[DataFlash]], MMC/SD-Karten und EEPROMs<br />
* [[Netstat|Online Statistik]]<br />
<br />
=== Feature requests ===<br />
<br />
* Nutze unseren [http://bugs.ethersex.de Bugtracker]<br />
<br />
[[Category:Ethersex]]</div>192168.0http://old.ethersex.de/index.php?title=Porterweiterung&diff=3006Porterweiterung2009-11-18T18:05:04Z<p>192168.0: </p>
<hr />
<div>==Porterweiterungen==<br />
<br />
Wenn am AVR schon viele Erweiterungen angeschlossen sind und die freien Ports langsam zur Neige gehen, kann man mit Schieberegistern arbeiten. Zwei dieser Bausteine sind bereits in der SW vorgesehen und können per menuconfig freigeschaltet werden.<br />
<br />
=== 74HC165 als Eingangserweiterung ===<br />
<br />
Der 74HC165 ist ein 8-bit Parallel-in/Seriell-out Schieberegister. Das kann man z.B. dazu benutzen um mehrere Schalteingänge seriell abzufragen. So könnte man z.B. 8 Taster mit nur 3 Leitungen abfragen und spart in diesem Fall 5 Portleitungen. Diese Schaltung ist kaskadierbar, so daß weitere Eingänge abgefragt werden können ohne mehr Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Eing.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== 74HC595 als Ausgangserweiterung ===<br />
<br />
Der 74HC595 ist ein 8-bit Seriell-in/Parallel-out Schieberegister mit Latch. Das Latch braucht man, damit beim seriellen reinschieben der Bits diese nicht nacheinander an den Ausgängen erscheinen, sondern erst wenn das ganze Datenwort reingeschoben ist.<br />
Der 74HC595 ist sogar kaskadierbar, d.h. man kann theoretisch beliebig viele Ausgänge realisieren, ohne weitere Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Ausg.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== 74HC164 als Ausgangserweiterung ===<br />
<br />
Der 74HC164 ist ein 8-bit Seriell-in/Parallel-out Schieberegister. Das kann man z.B. dazu benutzen um ein handelsübliches LCD mit HD44780-Controller mit nur 3 Leitungen anzusteuern (bei direkter Ansteuerung würden 7 Portleitungen benötigt), so wird das bei U. Radig's Webserver gemacht.<br><br />
In diesem Fall wird kein Latch benötigt, da das LCD erst beim Schalten seiner "E"-Leitung (enable) die Daten aus dem Schieberegister übernimmt.<br />
<br />
Schaltbild siehe bei [http://www.ulrichradig.de/home/index.php/software/avr-webserver-software AVR Webserver Software]<br />
<br />
{ ''menuconfig todo'' }<br />
<br />
{ ''pinning todo'' }<br />
<br />
=== D/A-Wandler mit LTC1257 ===<br />
<br />
{'' Schaltbild todo'' }<br />
<br />
Das nötige Pinning ist für AVR-NET-IO bereits vorhanden, in der Zuordnung<br />
*PA0 = LOAD<br />
*PA1 = DATA<br />
*PA2 = CLK</div>192168.0http://old.ethersex.de/index.php?title=Feature_Liste&diff=3005Feature Liste2009-11-18T17:49:42Z<p>192168.0: /* Kontakt zur Außenwelt */</p>
<hr />
<div>== Die (wichtigsten) Features von Ethersex ... ==<br />
<br />
=== Netzwerkanbindung ===<br />
Die Ethersex-Firmware erlaubt es IP über diverse Schnittstellen zu sprechen. Die Möglichkeiten können flexibel miteinander kombiniert werden, das heißt, man kann die Firmware auch auf Hardware einsetzen, die sowohl an Ethernet als auch an [[RFM12]] (Funkübertragung) anbindet.<br />
<br />
* Ethernet ([[ENC28J60]]) inkl. IEEE 802.1q (VLANs)<br />
* [[USB]]<br />
* [[RFM12]] (Funkübertragung auf dem 433 MHz ISM-Band)<br />
* [[ZBUS]]<br />
<br />
Ebenfalls wird die verschlüsselte und authentifizierte Kommunikation per [[OpenVPN]] unterstützt.<br />
<br />
=== Interaktion mit dem Anwender ===<br />
Ethersex kann zur Laufzeit per ECMD (Ethernet Command) gesteuert werden. Der Name ist eher historisch, solche Befehle können selbstverständlich auch per Funk übertragen werden. Mittels ECMD können zum Beispiel die einzelnen Ports angesteuert und die IP-Adressen abgeändert werden, uvm.<br />
<br />
* [[HTTPD|HTTP-Server]] (mit Zugriff auf Dateien und [[ECMD]])<br />
* text-basiert (Telnet-ähnlich, wahlweise per TCP/IP oder UDP/IP)<br />
* über serielle Schnittstelle<br />
* über [[I2C]]<br />
* via Jabber/XMPP<br />
* via IRC<br />
<br />
Eine (leider noch unvollständige) Liste der unterstützen Befehle findet sich unter [[Ecmd Reference]].<br />
<br />
Der Webserver ist in der Lage Dateien auszuliefern, die beim Kompilieren an das Firmwareimage angehängt wurden. Zusammen mit verstärkten Einsatz von JavaScript können so mit einfachen Mitteln relativ leistungsfähige Webseiten erstellt werden. Details siehe [[HTTPD]]<br />
<br />
=== Unterstützte Netzwerkprotokolle ===<br />
* TCP/IP, UDP/IP und ICMP<br />
* BOOTP (einfacherer, besser geeigneterer, Vorgänger von DHCP, der jedoch von allen gängigen DHCP-Servern unterstützt wird)<br />
* TFTP (Upload von Firmwaredateien bzw. in den Data Flash Baustein)<br />
* SYSLOG<br />
* SNMP<br />
* SMTP (E-Mail-Versand)<br />
* NTP (Client und Server)<br />
* DNS<br />
* mDNS (Avahi)<br />
* DynDNS<br />
* MySQL (Client)<br />
* IRC (Client)<br />
* MPD (Music Player Daemon; einfache Steuerungsaufgaben)<br />
* [[SOAP]]/XMLRPC<br />
* [[UPnP]]<br />
<br />
=== Kontakt zur Außenwelt ===<br />
* RS232 und RS485<br />
* Infrarotsender und -empfänger (RC5 Fernbedienungen!)<br />
* [[I2C]] (Master und Slave)<br />
* Steuerung von [[FS20]]-Modulen (Funkmodule von ELV bzw. Conrad, u.a. Steckdosen, Dimmer und Temperatursensoren)<br />
* Modbus<br />
* [[YPort]] (Serial over LAN (SOL) im Handel auch als XPort bekannt)<br />
* [[Blinkenlights MCUF]]<br />
* [[Porterweiterung | Porterweiterungen]] sind durch HC595 und HC165 möglich<br />
* [[Porterweiterung | Digital/Analogwandler]] mit LTC1257<br />
* Dateneingabe mittels [[PS/2 Tastatur]]<br />
* [[Dallas 1-wire Bus]]<br />
* [[LCD]] (HD44780 und Kompatible)<br />
* Philips [[dc3840 camera]] und [[MCA25]]-Handycam<br />
* [[Stella Light]] (PWM für bis zu 8 Kanäle)<br />
* Senertec [[Dachs MSR1 auslesen]]<br />
* [[SMS]]<br />
<br />
=== Verschiedenes ===<br />
* Fernsteuern von vielen Funksteckdosen mit [[RFM12 ASK]]<br />
* Atmel [[DataFlash]] (das auf dem Etherrape verbaute [[SPI]] Flash)<br />
* MMC/SD-Kartenleser<br />
* [[Sound]]<br />
* [[PAM|PAM Schicht]] zur Authentifizierung (z.b. ECMD-TCP)<br />
* Systemuhr<br />
* [[CRON-Dienst]] (analog dem crond auf Unix-Systemen)<br />
* einzelne Pins können mit symbolischen Namen versehen werden<br />
* [[Control6]]<br />
* [[AliasCmd|Alias Namen]] für Befehle<br />
* [[ECMDScript|ECMD Scripting]]<br />
* Virtuelles Dateisystem für [[DataFlash]], MMC/SD-Karten und EEPROMs<br />
* [[Netstat|Online Statistik]]<br />
<br />
=== Feature requests ===<br />
<br />
* Nutze unseren [http://bugs.ethersex.de Bugtracker]<br />
<br />
[[Category:Ethersex]]</div>192168.0http://old.ethersex.de/index.php?title=Feature_Liste&diff=3004Feature Liste2009-11-18T15:21:28Z<p>192168.0: /* Kontakt zur Außenwelt */ Neue Seite "Porterweiterung" eingebunden</p>
<hr />
<div>== Die (wichtigsten) Features von Ethersex ... ==<br />
<br />
=== Netzwerkanbindung ===<br />
Die Ethersex-Firmware erlaubt es IP über diverse Schnittstellen zu sprechen. Die Möglichkeiten können flexibel miteinander kombiniert werden, das heißt, man kann die Firmware auch auf Hardware einsetzen, die sowohl an Ethernet als auch an [[RFM12]] (Funkübertragung) anbindet.<br />
<br />
* Ethernet ([[ENC28J60]]) inkl. IEEE 802.1q (VLANs)<br />
* [[USB]]<br />
* [[RFM12]] (Funkübertragung auf dem 433 MHz ISM-Band)<br />
* [[ZBUS]]<br />
<br />
Ebenfalls wird die verschlüsselte und authentifizierte Kommunikation per [[OpenVPN]] unterstützt.<br />
<br />
=== Interaktion mit dem Anwender ===<br />
Ethersex kann zur Laufzeit per ECMD (Ethernet Command) gesteuert werden. Der Name ist eher historisch, solche Befehle können selbstverständlich auch per Funk übertragen werden. Mittels ECMD können zum Beispiel die einzelnen Ports angesteuert und die IP-Adressen abgeändert werden, uvm.<br />
<br />
* [[HTTPD|HTTP-Server]] (mit Zugriff auf Dateien und [[ECMD]])<br />
* text-basiert (Telnet-ähnlich, wahlweise per TCP/IP oder UDP/IP)<br />
* über serielle Schnittstelle<br />
* über [[I2C]]<br />
* via Jabber/XMPP<br />
* via IRC<br />
<br />
Eine (leider noch unvollständige) Liste der unterstützen Befehle findet sich unter [[Ecmd Reference]].<br />
<br />
Der Webserver ist in der Lage Dateien auszuliefern, die beim Kompilieren an das Firmwareimage angehängt wurden. Zusammen mit verstärkten Einsatz von JavaScript können so mit einfachen Mitteln relativ leistungsfähige Webseiten erstellt werden. Details siehe [[HTTPD]]<br />
<br />
=== Unterstützte Netzwerkprotokolle ===<br />
* TCP/IP, UDP/IP und ICMP<br />
* BOOTP (einfacherer, besser geeigneterer, Vorgänger von DHCP, der jedoch von allen gängigen DHCP-Servern unterstützt wird)<br />
* TFTP (Upload von Firmwaredateien bzw. in den Data Flash Baustein)<br />
* SYSLOG<br />
* SNMP<br />
* SMTP (E-Mail-Versand)<br />
* NTP (Client und Server)<br />
* DNS<br />
* mDNS (Avahi)<br />
* DynDNS<br />
* MySQL (Client)<br />
* IRC (Client)<br />
* MPD (Music Player Daemon; einfache Steuerungsaufgaben)<br />
* [[SOAP]]/XMLRPC<br />
* [[UPnP]]<br />
<br />
=== Kontakt zur Außenwelt ===<br />
* RS232 und RS485<br />
* Infrarotsender und -empfänger (RC5 Fernbedienungen!)<br />
* [[I2C]] (Master und Slave)<br />
* Steuerung von [[FS20]]-Modulen (Funkmodule von ELV bzw. Conrad, u.a. Steckdosen, Dimmer und Temperatursensoren)<br />
* Modbus<br />
* [[YPort]] (Serial over LAN (SOL) im Handel auch als XPort bekannt)<br />
* [[Blinkenlights MCUF]]<br />
* [[Porterweiterung | Porterweiterungen]] sind durch HC595 und HC165 möglich<br />
* Dateneingabe mittels [[PS/2 Tastatur]]<br />
* [[Dallas 1-wire Bus]]<br />
* [[LCD]] (HD44780 und Kompatible)<br />
* Philips [[dc3840 camera]] und [[MCA25]]-Handycam<br />
* [[Stella Light]] (PWM für bis zu 8 Kanäle)<br />
* Senertec [[Dachs MSR1 auslesen]]<br />
* [[SMS]]<br />
<br />
=== Verschiedenes ===<br />
* Fernsteuern von vielen Funksteckdosen mit [[RFM12 ASK]]<br />
* Atmel [[DataFlash]] (das auf dem Etherrape verbaute [[SPI]] Flash)<br />
* MMC/SD-Kartenleser<br />
* [[Sound]]<br />
* [[PAM|PAM Schicht]] zur Authentifizierung (z.b. ECMD-TCP)<br />
* Systemuhr<br />
* [[CRON-Dienst]] (analog dem crond auf Unix-Systemen)<br />
* einzelne Pins können mit symbolischen Namen versehen werden<br />
* [[Control6]]<br />
* [[AliasCmd|Alias Namen]] für Befehle<br />
* [[ECMDScript|ECMD Scripting]]<br />
* Virtuelles Dateisystem für [[DataFlash]], MMC/SD-Karten und EEPROMs<br />
* [[Netstat|Online Statistik]]<br />
<br />
=== Feature requests ===<br />
<br />
* Nutze unseren [http://bugs.ethersex.de Bugtracker]<br />
<br />
[[Category:Ethersex]]</div>192168.0http://old.ethersex.de/index.php?title=Porterweiterung&diff=3003Porterweiterung2009-11-18T15:16:25Z<p>192168.0: Neuerstellung</p>
<hr />
<div>==Porterweiterungen==<br />
<br />
Wenn am AVR schon viele Erweiterungen angeschlossen sind und die freien Ports langsam zur Neige gehen, kann man mit Schieberegistern arbeiten. Zwei dieser Bausteine sind bereits in der SW vorgesehen und können per menuconfig freigeschaltet werden.<br />
<br />
=== 74HC165 als Eingangserweiterung ===<br />
<br />
Der 74HC165 ist ein 8-bit Parallel-in/Seriell-out Schieberegister. Das kann man z.B. dazu benutzen um mehrere Schalteingänge seriell abzufragen. So könnte man z.B. 8 Taster mit nur 3 Leitungen abfragen und spart in diesem Fall 5 Portleitungen. Diese Schaltung ist kaskadierbar, so daß weitere Eingänge abgefragt werden können ohne mehr Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Eing.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ menuconfig ''todo''}<br />
<br />
{pinning ''todo''}<br />
<br />
=== 74HC595 als Ausgangserweiterung ===<br />
<br />
Der 74HC595 ist ein 8-bit Seriell-in/Parallel-out Schieberegister mit Latch. Das Latch braucht man, damit beim seriellen reinschieben der Bits diese nicht nacheinander an den Ausgängen erscheinen, sondern erst wenn das ganze Datenwort reingeschoben ist.<br />
Der 74HC595 ist sogar kaskadierbar, d.h. man kann theoretisch beliebig viele Ausgänge realisieren, ohne weitere Portleitungen zu benötigen.<br />
<br />
Schaltbild siehe bei [http://www.mikrocontroller.net/articles/Porterweiterung_mit_SPI#Ausg.C3.A4nge www.mikrocontroller.net]<br />
<br />
{ menuconfig ''todo''}<br />
<br />
{pinning ''todo''}<br />
<br />
=== 74HC164 als Ausgangserweiterung ===<br />
<br />
Der 74HC164 ist ein 8-bit Seriell-in/Parallel-out Schieberegister. Das kann man z.B. dazu benutzen um ein handelsübliches LCD mit HD44780-Controller mit nur 3 Leitungen anzusteuern (bei direkter Ansteuerung würden 7 Portleitungen benötigt), so wird das bei U. Radig's Webserver gemacht.<br><br />
In diesem Fall wird kein Latch benötigt, da das LCD erst beim Schalten seiner "E"-Leitung (enable) die Daten aus dem Schieberegister übernimmt.<br />
<br />
Schaltbild siehe bei [http://www.ulrichradig.de/home/index.php/software/avr-webserver-software AVR Webserver Software]<br />
<br />
{ menuconfig ''todo'' }<br />
<br />
{pinning ''todo''}</div>192168.0http://old.ethersex.de/index.php?title=Blinkenlights_MCUF&diff=3002Blinkenlights MCUF2009-11-18T11:24:47Z<p>192168.0: /* Ethersex Hardware hinzufügen */</p>
<hr />
<div>==[http://www.blinkenlights.net/ Blinkenlights] [http://wiki.blinkenarea.org/index.php/Protokolle MCUF - microcontroller unit frame protocol]==<br />
<br />
==Menuconfig==<br />
Um Blinkenlights in ethersex zu aktivieren, wählt man im Menü<br />
<br />
│ │ Load a Default Configuration ---><br />
│ │ General Setup ---><br />
│ │ Network protocols ---><br />
│ │ I/O support ---><br />
│ │ ...<br />
│ │ [*] Blinkenlights - MicroControllerUnitFrame ---><br />
│ │ [*] MCUF usart ---><br />
│ │ --- MCUF serial screen configuration<br />
│ │ (18) MCUF serial screen width<br />
│ │ (8) MCUF serial screen height<br />
│ │ [*] MCUF output ---><br />
│ │ (BlinkenLightsPro) / (LED-Module16x16rg) Output Device<br />
│ │ --- MCUF output screen is 16x16 pixels<br />
│ │ --- MCUF ecmd commandos<br />
│ │ [*] MCUF Scrolltext<br />
│ │ [*] MCUF Clock<br />
<br />
<br />
Ethersex lauscht auf dem UDP-Port 2323 um eingehende [http://wiki.blinkenarea.org/index.php/Protokolle Blinkenlights-Streams] weiter zu verarbeiten.<br />
<br />
* MCUF usart schickt die Packete über RS232 raus: 115200,8N1.<br />
** [http://www.das-labor.org/wiki/Borg16#MCUF-Schnittstelle Borg 16]<br />
** [http://wiki.blinkenarea.org/index.php/Shifter Shifter]<br />
<br />
*MCUF output<br />
** BlinkenLightsPro steuert ein angeschlossenes [http://wiki.blinkenarea.org/index.php/BlinkenLEDs BLP] an.<br />
** LED-Module16x16rg steuert ein Samsung/Thoshiba LED-Modul an.<br />
<br />
* MCUF Scrolltext kann via [[Ecmd Reference]]: 'mcuf showstring lala' kurze Texte auf den angeschlossenen Displays anzeigen.<br />
<br />
* MCUF Clock zeigt die aktuelle Zeit an. Cron sollte ebenfalls aktiviert werden. [[Ecmd Reference]]: 'mcuf showclock'<br />
<br />
* MCUF Module <br />
** Borg 16<br />
<br />
==Pinning==<br />
<br />
===MCUF usart===<br />
Entweder direkt RX/TX oder Pegelgewandelt am Ausgang vom max232.<br />
<br />
===BlinkenLightsPro===<br />
Um ein [http://wiki.blinkenarea.org/index.php/BlinkenLEDs BLP] direkt an den Kontroller anzuschliessen, kann man beim Atmega8 zB. die folgenden Pinns nutzen<br />
<br />
Bezeichnung am BLP: | Pinbelegung am Atmega8<br />
clock: | PB0<br />
strobe: | PD5<br />
data 1/2: | PB1<br />
data 3/4: | PB2<br />
data 5/6: | PD4<br />
data 5/8: | PD3<br />
data 9/10: | PB3<br />
data 11/12: | PB4<br />
data 13/14: | PB5<br />
data 15/16: | PC2<br />
data 17/18: | PC3<br />
<br />
Beispiel für Atmega8: ''pinning/hardware/generic-usb-teensy.m4''<br />
<source lang="text"><br />
ifdef(`conf_BLP', `dnl<br />
/* port config for BlinkenlightsPro */<br />
pin(BLP_CLK, PB0, OUTPUT)<br />
pin(BLP_STR, PD5, OUTPUT)<br />
pin(BLP_DA_A, PB1, OUTPUT)<br />
pin(BLP_DA_B, PB2, OUTPUT)<br />
pin(BLP_DA_C, PD4, OUTPUT)<br />
pin(BLP_DA_D, PD3, OUTPUT)<br />
pin(BLP_DA_E, PB3, OUTPUT)<br />
pin(BLP_DA_F, PB4, OUTPUT)<br />
pin(BLP_DA_G, PB5, OUTPUT)<br />
pin(BLP_DA_H, PC2, OUTPUT)<br />
pin(BLP_DA_I, PC3, OUTPUT)<br />
')<br />
</source><br />
<br />
===LED-Module16x16rg===<br />
*Die Unterstützten Module werden von verschiedenen Herstellern angeboten:<br />
** [http://github.com/optixx/megaledmatrix.git/docs/tlmm501b2.pdf| Toshiba tlmm501b2]<br />
** Samsung SLM1608 MD2<br />
<br />
10 Pol. Display: | Beispiel fuer Atmega644<br />
1, 3, 5, 7, 9: GND | GND<br />
2: Data Red | PA0<br />
4: Data Green | PA1<br />
6: Clock | PA2<br />
8: Bright | PA3<br />
10: Reset | PA4<br />
<br />
4 Pol. Display:<br />
1: VCC | 5V ca. 2A<br />
2, 3: GND<br />
4: Select | PA5<br />
<br />
2 Pol. Display:<br />
1: GND<br />
2: Select<br />
<br />
Beispiel für Atmega644: ''pinning/hardware/etherrape.m4''<br />
<source lang="text"><br />
ifdef(`conf_LEDRG', `dnl<br />
/* port config for LED-Module16x16rg */<br />
pin(LED_RESET, PA4, OUTPUT)<br />
pin(LED_SELECT, PA5, OUTPUT)<br />
pin(LED_BRIGHT, PA3, OUTPUT)<br />
pin(LED_RED, PA0, OUTPUT)<br />
pin(LED_GREEN, PA1, OUTPUT)<br />
pin(LED_CLOCK, PA2, OUTPUT)<br />
')<br />
</source><br />
<br />
<br />
===[[Ethersex Hardware hinzufügen]]===<br />
Mit Hilfe des Skripts: ''scripts/add-hardware'' kann eine m4 Datei in: ''pinning/hardware/'' erzeugt werden.<br />
<br />
==Links==<br />
<br />
* http://wiki.blinkenarea.org/index.php/EtherSexBlinken<br />
<br />
[[Category:Ethersex]]<br />
[[Category:StepByStep]]</div>192168.0http://old.ethersex.de/index.php?title=DCF77&diff=3001DCF772009-11-18T11:07:46Z<p>192168.0: </p>
<hr />
<div>==Funkuhr==<br />
Siehe auch: [[Am_Puls_der_Zeit|Am Puls der Zeit]]<br />
===Eigenbau===<br />
Der '''DCF77 Geradeausempfänger Workshop'''<br />
<br />
[http://home.arcor.de/df6vb/dcf77rx2.htm Die Schaltung]<br />
<br />
[http://www.b-kainka.de/bastel95.htm Die Spule:] [http://www.umnicom.de/Elektronik/Projekte/Wetterstation/Sensoren/Gewitterortung/GewitterOrtung.htm]<br />
<br />
[http://www.elsenbruch.info/ph12_dipol.htm Der Antennenschwingkreis]<br />
<br />
[http://olli.informatik.uni-oldenburg.de/weTEiS/weteis/transistor.htm Der HF Transistor:] [http://olli.informatik.uni-oldenburg.de/weTEiS/weteis/mos1.htm]<br />
<br />
[http://www.tf.uni-kiel.de/matwis/amat/mw2_ge/kap_6/backbone/r6_4_2.html Der Bipolare Transistor:]<br />
<br />
<br />
====Menuconfig====<br />
Im Menü:<br />
│ │ Load a Default Configuration ---><br />
│ │ General Setup ---><br />
│ │ Network protocols ---><br />
│ │ I/O support ---><br />
│ │ Applications ---><br />
│ │ [*] System clock support ---><br />
│ │ [*] Use 32 kHz crystal to tick the clock<br />
│ │ [*] Synchronize using DCF77 signal ---><br />
│ │ (X) SelfeMade<br />
│ │ ( ) DCF_1<br />
│ │ [ ] Use PON<br />
<br />
====Pinning====<br />
todo<br />
<br />
===DCF-1 Modul===<br />
Im Handel sind DCF77-Empfangsmodule erhältlich, welche das Zeitsignal als BCD mit TTL-Pegel liefern.<br />
<br />
Auch in handelsüblichen Funkuhren finden solche Module Verwendung.<br />
<br />
====Menuconfig====<br />
Im Menü:<br />
│ │ Load a Default Configuration ---><br />
│ │ General Setup ---><br />
│ │ Network protocols ---><br />
│ │ I/O support ---><br />
│ │ Applications ---><br />
│ │ [*] System clock support ---><br />
│ │ [*] Use 32 kHz crystal to tick the clock<br />
│ │ [*] Synchronize using DCF77 signal ---><br />
│ │ ( ) SelfeMade<br />
│ │ (X) DCF_1<br />
│ │ [ ] Use PON<br />
<br />
====Pinning====<br />
Beispiel für Atmega644: pinning/hardware/etherrape.m4<br />
ifdef(`conf_DCF1', `dnl<br />
/* port config for DCF77 */<br />
pin(DCF1_PCINT, PA0, INPUT)<br />
')<br />
<br />
Falls das Modul ein PowerON-Signal an einem Pin benötigt, kann man zusätzlich auch:<br />
ifdef(`conf_DCF1_USE_PON', <br />
pin(DCF1_PON, PA1, OUTPUT)<br />
')<br />
definieren.<br />
<br />
====Debug====<br />
Aktiviert man auch die Debugausgabe<br />
│ │ Load a Default Configuration ---><br />
│ │ General Setup ---> <br />
...<br />
│ │ [*] Enable (Serial-Line) Debugging ---><br />
...<br />
│ │ [ ] Cron<br />
│ │ [*] DCF77<br />
wird jede Sekunde eine Debug-Ausgabe generiert.<br />
<br />
Das sieht dann normalerweise in etwa so aus:<br />
<br />
''Hier fehlt doch was?''<br />
<br />
[[Category:Ethersex]]<br />
[[Category:Clock]]</div>192168.0http://old.ethersex.de/index.php?title=LCD&diff=3000LCD2009-11-18T10:44:21Z<p>192168.0: /* Pollin AVR-NET-IO */</p>
<hr />
<div>Diese Seite beschäftigt sich damit ein LCD an die Platine anzuschliessen und zu betreiben.<br />
==HD44780==<br />
Die folgenden Displays wurden gestestet:<br />
* Pollin, SC1604A, Bstnr. 120 572 (gestestet von #OR)<br />
* Pollin, YL162-90, Bstnr. 120 060 (getestet von SuperRiggi)<br />
* Pollin, TC1602E-01, Bstnr. 120 420 (getestet von Bitfehler)<br />
* Solomon, LM1180SYL (getestet von Doozer)<br />
* Conrad, AV2040, Bstnr. 181657-62, - Controller Type ks0067b auswählen - (getestet von punktl)<br />
* Bürklin, Peaktech P204A, Bstnr. 72S1170, - Controller ks0067b (getestet von michi)<br />
* Reichelt, Displaytech 162<br />
* weitere?<br />
<br />
=== Pollin AVR-NET-IO ===<br />
Da ich ein Pollin Board verwende, hier also die Beschreibung für ein AVR-NET-IO (:biggrin:). Den Anschluss des LCD habe ich von http://www.sprut.de/electronic/lcd/lcd.gif übernommen. Die folgende Grafik zeigt den Anschluss an den Controller:<br />
<br />
[[Bild:ethersex_LCD.png]]<br />
<br />
Wer ein bißchen besser löten kann, benötigt keine Anschlussplatine und kann das Ganze auch direkt auf einen SUB-D Stecker löten, die Stiftnummern stehen in der Grafik dabei.<br />
<br />
Bei dem YL162-90 ist zu beachten, dass Vo (Kontrast) nicht mit positiver Spannung anzusteuern ist. Die neagtive Spannung ist am besten über einen 10kOhm Potentiometer vom Pin 6 des RS232 Bausteines (Pollin AVR Board) abzugreifen. Bei ca. 5kOhm ist das Display gut zu erkennen<br />
<br />
Danach muss nochmal compiliert werden:<br />
<br />
* make menuconfig<br />
* Untermenu &quot;I/O support&quot;<br />
* den Punkt &quot;HD44780 Module Driver&quot; aktivieren<br />
* in selbiges Untermenu abtauchen und noch &quot;Readback Support&quot; und &quot;Use Port C&quot; aktivieren<br />
* danach rausgehen, speichern, compilieren, laden <br />
<br />
'''&quot;Use Port C&quot; nicht mehr im Menü vorhanden (Nov. 2009) -> das gibt Compilerfehler. Also manuell pinnen:'''<br />
<br />
ifdef(`conf_HD44780', `<br />
pin(HD44780_RS, PC0)<br />
pin(HD44780_RW, PC1)<br />
pin(HD44780_EN, PC2)<br />
pin(HD44780_D4, PC3)<br />
pin(HD44780_D5, PC4)<br />
pin(HD44780_D6, PC5)<br />
pin(HD44780_D7, PC6)<br />
')<br />
<br />
Mehr Info dazu auch unter [[Pins_in_Ethersex_definieren]] und [[Ethersex_Hardware_hinzufügen]].<br />
<br />
Das LCD macht nach dem Einschalten erstmal gar nix. Zum Testen geht am besten der ECMD.<br />
* ''netcat 192.168.0.90 2701'' aufrufen<br />
* dann ''lcd write Hallo'' eingeben<br />
<br />
Man sollte jetzt etwas auf dem LCD lesen können.<br />
<br />
=== Weitere Spielereien mit dem LCD: ===<br />
Leider habe ich nocht nicht rausbekommen, wie man zb. die 1wire Temperatursensoren oder die ADC oder die Ports möglichst elegant auf das LCD bekommt :-). Aber vielleicht hat ja von Euch einer eine Idee.<br />
* Unter [[Dallas 1-wire Bus#Einbindung in Control6]] findet sich ein kleines [[Control6]]-Skript, mit dem man die Messwerte von 1-wire Temperatursensoren mit Hilfe des TTY-Layers auf's Display zaubern kann --[[Benutzer:Stella|Stella]] 15:19, 26. Jun. 2009 (UTC)<br />
<br />
==S1D15G10==<br />
Diesen LCDisplay Controller findet man in diversen Mobil Telefonen. Ich habe das LCDisplay aus einem Nokia6610 ausgebaut.<br />
<br />
Einige Online Portale/Händler bieten es auch incl. Anschlussplatine an.<br />
<br />
Die folgenden Displays wurden gestestet:<br />
* Epson, S1D15G10, ausgebaut aus Nokia6610 (getestet von veyron)<br />
* weitere?<br />
<br />
Das 130x130 1.5" FarbLCD mit dem integrierten Controller S1D15G10 wird zB. so angeschlossen:<br />
<br />
RESET, PB0<br />
DATA, SPI_MOSI<br />
CLK, SPI_SCK<br />
CS, PD7<br />
<br />
Beispiel für Atmega644: pinning/hardware/etherrape.m4<br />
<br />
ifdef(`conf_S1D15G10', `dnl<br />
/* port config for s1d15g10 lcd */<br />
pin(S1D15G10_CS, PA3, OUTPUT)<br />
pin(S1D15G10_RESET, PA1, OUTPUT)<br />
')<br />
<br />
Da die Daten via SPI generiert werden, können nur die Pins für RESET und ChipSelect frei gewählt werden.<br />
<br />
Die Stromversorgung für den LCDController sollte '''nicht''' über 4V liefern! Die Pins sollten 3.6V '''nicht''' übersteigen! Die Hintergrundbeleuchtung braucht 6V - 7V.<br />
<br />
Da der AVR meines etherrapes mit 5V läuft, hab ich jeweils eine 3V6 Zenerdiode und einen 1k5Ohm Pullup zwischen AVR und LCD gehangen.<br />
<br />
In menuconfig:<br />
│ │ Load a Default Configuration ---><br />
│ │ General Setup ---><br />
│ │ Network protocols ---><br />
│ │ I/O support ---><br />
...<br />
│ │ [*] S1D15G10 module driver (130x130-R/G/B-LCD)<br />
<br />
Auf dem LCD wird dann ein bisschen farbiger Text auf schwarzem Hintergrund und das E-Sex Logo angezeigt.<br />
<br />
Ist Debug und ECMD via UART aktiv, wird dies auch auf dem LCD ausgeben.<br />
<br />
Das sieht dann so aus:<br />
<br />
[[Bild:veyrons_ethersex_S1D15G10.jpg]]<br />
<br />
=== Bezugsquellen ===<br />
Auch hier kein Werbung, jedoch ein paar Anregungen:<br />
<br />
* [http://www.sparkfun.com/commerce/product_info.php?products_id=569 Sparkfun] vertreibt das LCD incl. Anschlussplatine<br />
* In folgenden Nokia Handys wurden diese LCDs verbaut:<br />
**6100, 6610, 7210, 7250, und 5100<br />
<br />
[[Category:Ethersex]]<br />
[[Category:StepByStep]]<br />
[[Category:LCD]]</div>192168.0http://old.ethersex.de/index.php?title=LCD&diff=2999LCD2009-11-18T10:42:40Z<p>192168.0: /* Pollin AVR-NET-IO */</p>
<hr />
<div>Diese Seite beschäftigt sich damit ein LCD an die Platine anzuschliessen und zu betreiben.<br />
==HD44780==<br />
Die folgenden Displays wurden gestestet:<br />
* Pollin, SC1604A, Bstnr. 120 572 (gestestet von #OR)<br />
* Pollin, YL162-90, Bstnr. 120 060 (getestet von SuperRiggi)<br />
* Pollin, TC1602E-01, Bstnr. 120 420 (getestet von Bitfehler)<br />
* Solomon, LM1180SYL (getestet von Doozer)<br />
* Conrad, AV2040, Bstnr. 181657-62, - Controller Type ks0067b auswählen - (getestet von punktl)<br />
* Bürklin, Peaktech P204A, Bstnr. 72S1170, - Controller ks0067b (getestet von michi)<br />
* Reichelt, Displaytech 162<br />
* weitere?<br />
<br />
=== Pollin AVR-NET-IO ===<br />
Da ich ein Pollin Board verwende, hier also die Beschreibung für ein AVR-NET-IO (:biggrin:). Den Anschluss des LCD habe ich von http://www.sprut.de/electronic/lcd/lcd.gif übernommen. Die folgende Grafik zeigt den Anschluss an den Controller:<br />
<br />
[[Bild:ethersex_LCD.png]]<br />
<br />
Wer ein bißchen besser löten kann, benötigt keine Anschlussplatine und kann das Ganze auch direkt auf einen SUB-D Stecker löten, die Stiftnummern stehen in der Grafik dabei.<br />
<br />
Bei dem YL162-90 ist zu beachten, dass Vo (Kontrast) nicht mit positiver Spannung anzusteuern ist. Die neagtive Spannung ist am besten über einen 10kOhm Potentiometer vom Pin 6 des RS232 Bausteines (Pollin AVR Board) abzugreifen. Bei ca. 5kOhm ist das Display gut zu erkennen<br />
<br />
Danach muss nochmal compiliert werden:<br />
<br />
* make menuconfig<br />
* Untermenu &quot;I/O support&quot;<br />
* den Punkt &quot;HD44780 Module Driver&quot; aktivieren<br />
* in selbiges Untermenu abtauchen und noch &quot;Readback Support&quot; und &quot;Use Port C&quot; aktivieren<br />
* danach rausgehen, speichern, compilieren, laden <br />
<br />
'''&quot;Readback Support&quot; nicht mehr im Menü vorhanden (Nov. 2009) -> das gibt Compilerfehler. Also manuell pinnen:'''<br />
<br />
ifdef(`conf_HD44780', `<br />
pin(HD44780_RS, PC0)<br />
pin(HD44780_RW, PC1)<br />
pin(HD44780_EN, PC2)<br />
pin(HD44780_D4, PC3)<br />
pin(HD44780_D5, PC4)<br />
pin(HD44780_D6, PC5)<br />
pin(HD44780_D7, PC6)<br />
')<br />
<br />
Mehr Info dazu auch unter [[Pins_in_Ethersex_definieren]] und [[Ethersex_Hardware_hinzufügen]].<br />
<br />
Das LCD macht nach dem Einschalten erstmal gar nix. Zum Testen geht am besten der ECMD.<br />
* ''netcat 192.168.0.90 2701'' aufrufen<br />
* dann ''lcd write Hallo'' eingeben<br />
<br />
Man sollte jetzt etwas auf dem LCD lesen können.<br />
<br />
=== Weitere Spielereien mit dem LCD: ===<br />
Leider habe ich nocht nicht rausbekommen, wie man zb. die 1wire Temperatursensoren oder die ADC oder die Ports möglichst elegant auf das LCD bekommt :-). Aber vielleicht hat ja von Euch einer eine Idee.<br />
* Unter [[Dallas 1-wire Bus#Einbindung in Control6]] findet sich ein kleines [[Control6]]-Skript, mit dem man die Messwerte von 1-wire Temperatursensoren mit Hilfe des TTY-Layers auf's Display zaubern kann --[[Benutzer:Stella|Stella]] 15:19, 26. Jun. 2009 (UTC)<br />
<br />
==S1D15G10==<br />
Diesen LCDisplay Controller findet man in diversen Mobil Telefonen. Ich habe das LCDisplay aus einem Nokia6610 ausgebaut.<br />
<br />
Einige Online Portale/Händler bieten es auch incl. Anschlussplatine an.<br />
<br />
Die folgenden Displays wurden gestestet:<br />
* Epson, S1D15G10, ausgebaut aus Nokia6610 (getestet von veyron)<br />
* weitere?<br />
<br />
Das 130x130 1.5" FarbLCD mit dem integrierten Controller S1D15G10 wird zB. so angeschlossen:<br />
<br />
RESET, PB0<br />
DATA, SPI_MOSI<br />
CLK, SPI_SCK<br />
CS, PD7<br />
<br />
Beispiel für Atmega644: pinning/hardware/etherrape.m4<br />
<br />
ifdef(`conf_S1D15G10', `dnl<br />
/* port config for s1d15g10 lcd */<br />
pin(S1D15G10_CS, PA3, OUTPUT)<br />
pin(S1D15G10_RESET, PA1, OUTPUT)<br />
')<br />
<br />
Da die Daten via SPI generiert werden, können nur die Pins für RESET und ChipSelect frei gewählt werden.<br />
<br />
Die Stromversorgung für den LCDController sollte '''nicht''' über 4V liefern! Die Pins sollten 3.6V '''nicht''' übersteigen! Die Hintergrundbeleuchtung braucht 6V - 7V.<br />
<br />
Da der AVR meines etherrapes mit 5V läuft, hab ich jeweils eine 3V6 Zenerdiode und einen 1k5Ohm Pullup zwischen AVR und LCD gehangen.<br />
<br />
In menuconfig:<br />
│ │ Load a Default Configuration ---><br />
│ │ General Setup ---><br />
│ │ Network protocols ---><br />
│ │ I/O support ---><br />
...<br />
│ │ [*] S1D15G10 module driver (130x130-R/G/B-LCD)<br />
<br />
Auf dem LCD wird dann ein bisschen farbiger Text auf schwarzem Hintergrund und das E-Sex Logo angezeigt.<br />
<br />
Ist Debug und ECMD via UART aktiv, wird dies auch auf dem LCD ausgeben.<br />
<br />
Das sieht dann so aus:<br />
<br />
[[Bild:veyrons_ethersex_S1D15G10.jpg]]<br />
<br />
=== Bezugsquellen ===<br />
Auch hier kein Werbung, jedoch ein paar Anregungen:<br />
<br />
* [http://www.sparkfun.com/commerce/product_info.php?products_id=569 Sparkfun] vertreibt das LCD incl. Anschlussplatine<br />
* In folgenden Nokia Handys wurden diese LCDs verbaut:<br />
**6100, 6610, 7210, 7250, und 5100<br />
<br />
[[Category:Ethersex]]<br />
[[Category:StepByStep]]<br />
[[Category:LCD]]</div>192168.0http://old.ethersex.de/index.php?title=Ethersex&diff=2998Ethersex2009-11-18T10:31:12Z<p>192168.0: /* Erste Schritte */</p>
<hr />
<div><div style="float:right"><br />
{| class="toc"<br />
|+ id="toctitle" | '''Projektübersicht'''<br />
|-<br />
| Lizenz:<br />
| [http://en.wikipedia.org/wiki/GNU_General_Public_License GPL v3]<br />
|-<br />
| Sprache:<br />
| C<br />
|-<br />
| Plattform:<br />
| Atmel Atmegas<br />
|}<br />
<br />
{| class="toc" style="width:100%"<br />
|+ id="toctitle" | '''Schnellnavigation'''<br />
|-<br />
|<br />
* [[Feature Liste]]<br />
* [[Download]]<br />
* [[Community]]<br />
* [[Promotion]]<br />
|}<br />
</div><br />
<br />
== Das Ethersex-Projekt ... ==<br />
<br />
ist eine universelle Plattform um Mikrocontroller per IP-Protokoll anzusprechen und stellt eine solide Basis für eigene Entwicklungen dar.<br />
Ethersex wurde im August 2007 von stesie als alternative Firmware für fd0s [http://www.lochraster.org/etherrape/ Etherrape] ins Leben gerufen. Namensgebend war seinerzeit die Erweiterung um IPv6-Unterstützung. Seither hat sich jedoch viel getan, sodass inzwischen nicht mehr nur die Etherrape-Hardware als Plattform unterstützt wird, sondern auch diverse andere Atmega Hardware Projekte. Der Code ist inzwischen weitgehend stabil und wird auch im professionellen Umfeld eingesetzt.<br />
<br />
=== Hardware ===<br />
Das Ethersex-Projekt bietet keine Bausätze oder Fertiggeräte zum Verkauf an. Hier sei auf das von Alexander Neumann angebotene [[Etherrape]], das [[AVR Webmodul]] von Ulrich Radig oder das Pollin [[AVR-NET-IO]] hingewiesen. Wer mit Lochrasterplatinen &amp; Co. schon ein wenig Erfahrung gesammelt hat, kann auch einen individuellen Nachbau in Eigenregie erwägen. Einen Überblick bietet die Galerie [[Unterstützte Hardware|unterstützter Hardware]].<br />
<br />
=== Was zeichnet Ethersex aus? ===<br />
* TCP/IP, [[ZBUS]] und diverse andere Protokolle<br />
* Datenübertragung per Ethernet, Funk ([[RFM12]]), über [[USB]] oder per seriellem Bus<br />
* Verschlüsselte Kommunikation [[OpenVPN]] und IPv6<br />
* Steuerung über mächtiges, eigenes '''Ethersex Command''' ([[ECMD]]) Protokoll per [[ECMD Protocols#ECMD via HTTP|http]], [[ECMD Protocols#ECMD via TCP|TCP/IP]], UDP/IP, [[I2C]] und [[USB]]<br />
* Datenablage auf [[DataFlash]]-Speicher, SD-Karten, I2C-EEPROMs oder dem eingebautem EEPROM<br />
* Leichte Erweiterbarkeit mit eigenen Modulen<br />
* Module können über eine Bedienoberfläche einfach ein und ausgeschaltet werden, so dass nur das gewünschte auch in der Firmware landet<br />
... und vieles mehr, siehe [[Feature Liste]] oder [[Screenprint]]<br />
<br />
=== Erste Schritte ===<br />
* [[Voraussetzungen|Voraussetzungen]] um ethersex compilieren zu können<br />
* Den Quellcode wie unter [[Download]] beschrieben herunterladen<br />
* [[:Kategorie:StepByStep|Schritt für Schritt]] zum eigenen Firmware Image<br />
* Was muß ich tun wenn ich externe [[Feature_Liste#Kontakt_zur_Au.C3.9Fenwelt|Schaltungen]] ansteuern oder anschließen will, zum Beispiel Temperatursensoren oder ein LCD?<br />
* [[:Kategorie:Erfahrungsberichte|Erfahrungsberichte]] anderer Anwender<br />
* Wenn du Fragen hast, ist es sinnvoll, erst einmal die [[FAQ|Häufig gestellten Fragen]] zu lesen. Du kannst dich auch direkt an unsere Mailingliste wenden. Details siehe [[Community]].<br />
<br />
Es gibt auch einen [http://www.ethersex.de/firmware-builder/list.cgi Ethersex Firmware Builder], der soweit vorgefertigte Firmware-Images individualisiert und fertig zum Herunterladen anbietet, z.B. für das [http://www.ethersex.de/firmware-builder/input.cgi?profile=avr-net-io AVR-NET-IO von Pollin]. Diese Images eigenen sich insbesondere für erste Gehversuche und können nur in sehr geringem Umfang konfiguriert werden.<br />
<br />
=== Bugs ===<br />
* Bitte prüfe erst, ob deine Entwicklungsumgebung alle [[Voraussetzungen]] erfüllt. In nicht wenigen Fällen fehlt z.B. das Tool m4.<br />
* Du kannst Kontakt mit uns über die Mailingliste aufnehmen. Details siehe [[Community]].<br />
* Nutze unseren [http://bugs.ethersex.de Bugtracker]<br />
<br />
=== Mitmachen ===<br />
Die Ethersex Webseite basiert auf einer Wiki Software, d.h. sobald du dich angemeldet hast, kannst du hier eigene Beiträge verfassen oder bestehende verbessern. Wenn du am Projekt mitarbeiten willst, findest du vielleicht folgende Artikel ganz interessant:<br />
* Wie erstellt man [[Patches]] richtig<br />
* [http://ethersex.de/index.php/Hilfe:Hilfe Links zu MediaWiki Doku]<br />
* [[Eigenes Modul hinzufügen]] (Neuer i2c Chip?, neue Funksteckdosen? Hier ist ein Einstieg für das Erstellen eines eigenen Moduls.)<br />
* [[Ethersex Core]] (Erklärt die grundlegenden Hardwareabstraktionen von Ethersex.)<br />
* [[Coding style]]<br />
* [[Code Restrukturierung - 2009]]<br />
* [[Ethersex_History|Ethersex History]] (Was die letzten Monate an ethersex passiert ist)<br />
<br />
[[Category:Ethersex]]<br />
[[Category:Zerties]]</div>192168.0http://old.ethersex.de/index.php?title=Ethersex&diff=2996Ethersex2009-11-18T08:27:50Z<p>192168.0: /* Erste Schritte */</p>
<hr />
<div><div style="float:right"><br />
{| class="toc"<br />
|+ id="toctitle" | '''Projektübersicht'''<br />
|-<br />
| Lizenz:<br />
| [http://en.wikipedia.org/wiki/GNU_General_Public_License GPL v3]<br />
|-<br />
| Sprache:<br />
| C<br />
|-<br />
| Plattform:<br />
| Atmel Atmegas<br />
|}<br />
<br />
{| class="toc" style="width:100%"<br />
|+ id="toctitle" | '''Schnellnavigation'''<br />
|-<br />
|<br />
* [[Feature Liste]]<br />
* [[Download]]<br />
* [[Community]]<br />
* [[Promotion]]<br />
|}<br />
</div><br />
<br />
== Das Ethersex-Projekt ... ==<br />
<br />
ist eine universelle Plattform um Mikrocontroller per IP-Protokoll anzusprechen und stellt eine solide Basis für eigene Entwicklungen dar.<br />
Ethersex wurde im August 2007 von stesie als alternative Firmware für fd0s [http://www.lochraster.org/etherrape/ Etherrape] ins Leben gerufen. Namensgebend war seinerzeit die Erweiterung um IPv6-Unterstützung. Seither hat sich jedoch viel getan, sodass inzwischen nicht mehr nur die Etherrape-Hardware als Plattform unterstützt wird, sondern auch diverse andere Atmega Hardware Projekte. Der Code ist inzwischen weitgehend stabil und wird auch im professionellen Umfeld eingesetzt.<br />
<br />
=== Hardware ===<br />
Das Ethersex-Projekt bietet keine Bausätze oder Fertiggeräte zum Verkauf an. Hier sei auf das von Alexander Neumann angebotene [[Etherrape]], das [[AVR Webmodul]] von Ulrich Radig oder das Pollin [[AVR-NET-IO]] hingewiesen. Wer mit Lochrasterplatinen &amp; Co. schon ein wenig Erfahrung gesammelt hat, kann auch einen individuellen Nachbau in Eigenregie erwägen. Einen Überblick bietet die Galerie [[Unterstützte Hardware|unterstützter Hardware]].<br />
<br />
=== Was zeichnet Ethersex aus? ===<br />
* TCP/IP, [[ZBUS]] und diverse andere Protokolle<br />
* Datenübertragung per Ethernet, Funk ([[RFM12]]), über [[USB]] oder per seriellem Bus<br />
* Verschlüsselte Kommunikation [[OpenVPN]] und IPv6<br />
* Steuerung über mächtiges, eigenes '''Ethersex Command''' ([[ECMD]]) Protokoll per [[ECMD Protocols#ECMD via HTTP|http]], [[ECMD Protocols#ECMD via TCP|TCP/IP]], UDP/IP, [[I2C]] und [[USB]]<br />
* Datenablage auf [[DataFlash]]-Speicher, SD-Karten, I2C-EEPROMs oder dem eingebautem EEPROM<br />
* Leichte Erweiterbarkeit mit eigenen Modulen<br />
* Module können über eine Bedienoberfläche einfach ein und ausgeschaltet werden, so dass nur das gewünschte auch in der Firmware landet<br />
... und vieles mehr, siehe [[Feature Liste]] oder [[Screenprint]]<br />
<br />
=== Erste Schritte ===<br />
* [[Voraussetzungen|Voraussetzungen]] um ethersex compilieren zu können<br />
* Den Quellcode wie unter [[Download]] beschrieben herunterladen<br />
* [[:Kategorie:StepByStep|Schritt für Schritt]] zum eigenen Firmware Image<br />
* Was muß ich tun wenn ich externe [[Hardware|Schaltungen]] ansteuern oder anschließen will, zum Beispiel Temperatursensoren oder ein LCD?<br />
* [[:Kategorie:Erfahrungsberichte|Erfahrungsberichte]] anderer Anwender<br />
* Wenn du Fragen hast, ist es sinnvoll, erst einmal die [[FAQ|Häufig gestellten Fragen]] zu lesen. Du kannst dich auch direkt an unsere Mailingliste wenden. Details siehe [[Community]].<br />
<br />
Es gibt auch einen [http://www.ethersex.de/firmware-builder/list.cgi Ethersex Firmware Builder], der soweit vorgefertigte Firmware-Images individualisiert und fertig zum Herunterladen anbietet, z.B. für das [http://www.ethersex.de/firmware-builder/input.cgi?profile=avr-net-io AVR-NET-IO von Pollin]. Diese Images eigenen sich insbesondere für erste Gehversuche und können nur in sehr geringem Umfang konfiguriert werden.<br />
<br />
=== Bugs ===<br />
* Bitte prüfe erst, ob deine Entwicklungsumgebung alle [[Voraussetzungen]] erfüllt. In nicht wenigen Fällen fehlt z.B. das Tool m4.<br />
* Du kannst Kontakt mit uns über die Mailingliste aufnehmen. Details siehe [[Community]].<br />
* Nutze unseren [http://bugs.ethersex.de Bugtracker]<br />
<br />
=== Mitmachen ===<br />
Die Ethersex Webseite basiert auf einer Wiki Software, d.h. sobald du dich angemeldet hast, kannst du hier eigene Beiträge verfassen oder bestehende verbessern. Wenn du am Projekt mitarbeiten willst, findest du vielleicht folgende Artikel ganz interessant:<br />
* Wie erstellt man [[Patches]] richtig<br />
* [http://ethersex.de/index.php/Hilfe:Hilfe Links zu MediaWiki Doku]<br />
* [[Eigenes Modul hinzufügen]] (Neuer i2c Chip?, neue Funksteckdosen? Hier ist ein Einstieg für das Erstellen eines eigenen Moduls.)<br />
* [[Ethersex Core]] (Erklärt die grundlegenden Hardwareabstraktionen von Ethersex.)<br />
* [[Coding style]]<br />
* [[Code Restrukturierung - 2009]]<br />
* [[Ethersex_History|Ethersex History]] (Was die letzten Monate an ethersex passiert ist)<br />
<br />
[[Category:Ethersex]]<br />
[[Category:Zerties]]</div>192168.0http://old.ethersex.de/index.php?title=Wie_flasht_man_ein_AVR-NET-IO&diff=2982Wie flasht man ein AVR-NET-IO2009-11-16T17:51:38Z<p>192168.0: /* Umbau von einem ATMega32 auf ein ATMega644 */</p>
<hr />
<div>= AVR-NET-IO mit dem ATMEL Evaluations-Board von Pollin flashen=<br />
<br />
Als Einsteiger hat man es immer wieder schwer alle Information zu finden.<br />
Ich habe lange gesucht bis ich das mit dem Flashen kapiert habe.<br />
<br />
<br />
== Benötigt wird: ==<br />
* AVR-NET-IO<br />
* ATMEL Evaluations-Board<br />
* ein 1:1 Kabel für den ISP Port (10-poliger Pfostenstecker)<br />
<br />
== Flashen unter Linux ==<br />
Das 10-polige Kabel in die ISP-Buchse stecken.<br />
Nun das AVR-NET-IO Board mit Strom versorgen.<br />
Wenn das ISP-Kabel richtig gesteckt ist, leuchtet auf dem Evalutions-Board die (gelbe) LED<br />
<br />
Nach dem Erzeugen der [[#Erste_Schritte|ethersex.hex]] kann man mit avrdude das Ganze flashen:<br />
<br />
avrdude -v -p m32 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex <br />
<br />
Nach dem flashen das ISP-Kabel entfernen und kurz die Stromversorgung unterbrechen um das Board zu rebooten.<br />
<br />
* -p m32 steht für den ATMega32; -p m644 wäre der ATMega644<br />
* -v erweiterte Ausgaben<br />
* -c ponyser ist das Verfahren wie das Evalutions-Board die Daten flasht<br />
* -P ist die Serielle Schnittstelle an dem das Evalutions-Board angeschlossen ist (bei USB /dev/ttyUSB0)<br />
* -U was man machen möchte. In unserem Fall wollen wir das File ethersex.hex flashen (-U flash:w:ethersex.hex)<br />
<br />
Es kann sein das man für den ATMega32 die FUSE Bits setzen muss.<br />
<br />
avrdude -p m32 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xCF:m -U hfuse:w:0xDC:m<br />
<br />
Um die korrekte Fuse-Einstellung rauszufinden, ist es sinnvoll http://www.engbedded.com/fusecalc/ zu benutzen.<br />
<br />
== Umbau von einem ATMega32 auf den ATMega644 / ATMega644p ==<br />
<br />
Die Vorteile vom ATMega644(p) ist vor allem der doppelt so große Speicher.<br />
<br />
* Den ATMega32 aus der Halterung von dem AVR-IO-Net ziehen<br />
* Den ATMega644(p) einbauen (ACHTUNG Kerbe im Sockel muss mit Kerbe in der CPU übereinstimmen)<br />
* FUSE-Bits setzen (Übernommen von dinus) <br />
avrdude -p m644 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xE7:m -U hfuse:w:0xDC:m -U efuse:w:0xFF:m<br />
* bzw.<br />
avrdude -p m644p -c ponyser -P /dev/ttyS0 -U lfuse:w:0xE7:m -U hfuse:w:0xDC:m -U efuse:w:0xFF:m<br />
* in der Config von Ethersex (make menuconfig) von ATmega32 auf ATMega644 umstellen<br />
* Flashen mit<br />
avrdude -p m644(p) -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex -v<br />
<br />
=== Unterschiede zwischen ATMega32 und ATMega644 ===<br />
<br />
{| border=1 cellspacing=0 padding=4 class=wikitable "<br />
! !! ATMega32 !! ATMega644 <br />
|-<br />
| Gehäuse || DIL-40 || DIL-40 <br />
|-<br />
| MHz || max. 16 || max. 20<br />
|-<br />
| Flash || 32 KB || 64 KB <br />
|-<br />
| EEProm || 1 KB || 2 KB <br />
|-<br />
| RAM || 2 KB || 4 KB<br />
|-<br />
|I/O || 32 || 32<br />
|-<br />
|PWM || 4 || 6<br />
|-<br />
|ext. INT || 3 || 32<br />
|}<br />
<br />
== Flashen unter Windows ==<br />
keine Ahnung<br />
<br />
* Pro live-cd wobei Windows unangeruehrt bleibt:<br />
** http://www.ethersex.de/index.php?title=Live_CD<br />
** apt-get install libncurses5-dev<br />
** update und installier software fuer ethersex wie beschrieben http://www.ethersex.de/index.php/Download<br />
** wenn help in menuconfig nicht geht: apt-get install dialog <br />
<br />
<br />
[[Category:Ethersex]]</div>192168.0http://old.ethersex.de/index.php?title=Wie_flasht_man_ein_AVR-NET-IO&diff=2981Wie flasht man ein AVR-NET-IO2009-11-16T16:49:52Z<p>192168.0: /* Flashen unter Linux */</p>
<hr />
<div>= AVR-NET-IO mit dem ATMEL Evaluations-Board von Pollin flashen=<br />
<br />
Als Einsteiger hat man es immer wieder schwer alle Information zu finden.<br />
Ich habe lange gesucht bis ich das mit dem Flashen kapiert habe.<br />
<br />
<br />
== Benötigt wird: ==<br />
* AVR-NET-IO<br />
* ATMEL Evaluations-Board<br />
* ein 1:1 Kabel für den ISP Port (10-poliger Pfostenstecker)<br />
<br />
== Flashen unter Linux ==<br />
Das 10-polige Kabel in die ISP-Buchse stecken.<br />
Nun das AVR-NET-IO Board mit Strom versorgen.<br />
Wenn das ISP-Kabel richtig gesteckt ist, leuchtet auf dem Evalutions-Board die (gelbe) LED<br />
<br />
Nach dem Erzeugen der [[#Erste_Schritte|ethersex.hex]] kann man mit avrdude das Ganze flashen:<br />
<br />
avrdude -v -p m32 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex <br />
<br />
Nach dem flashen das ISP-Kabel entfernen und kurz die Stromversorgung unterbrechen um das Board zu rebooten.<br />
<br />
* -p m32 steht für den ATMega32; -p m644 wäre der ATMega644<br />
* -v erweiterte Ausgaben<br />
* -c ponyser ist das Verfahren wie das Evalutions-Board die Daten flasht<br />
* -P ist die Serielle Schnittstelle an dem das Evalutions-Board angeschlossen ist (bei USB /dev/ttyUSB0)<br />
* -U was man machen möchte. In unserem Fall wollen wir das File ethersex.hex flashen (-U flash:w:ethersex.hex)<br />
<br />
Es kann sein das man für den ATMega32 die FUSE Bits setzen muss.<br />
<br />
avrdude -p m32 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xCF:m -U hfuse:w:0xDC:m<br />
<br />
Um die korrekte Fuse-Einstellung rauszufinden, ist es sinnvoll http://www.engbedded.com/fusecalc/ zu benutzen.<br />
<br />
== Umbau von einem ATMega32 auf ein ATMega644 ==<br />
<br />
Die Vorteile vom ATMega644 ist vor allem der doppelt so große Speicher.<br />
<br />
* Den ATMega32 aus der Halterung von dem AVR-IO-Net ziehen<br />
* Den ATMega644 einbauen (ACHTUNG Kerbe im Sockel muss mit Kerbe in der CPU übereinstimmen)<br />
* FUSE-Bits setzen (Übernommen von dinus) <br />
avrdude -p m644 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xE7:m -U hfuse:w:0xDC:m -U efuse:w:0xFF:m<br />
* in der Config von Ethersex (make menuconfig) von ATmega32 auf ATMega644 umstellen<br />
* Flashen mit<br />
avrdude -p m644 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex -v<br />
<br />
=== Unterschiede zwischen ATMega32 und ATMega644 ===<br />
<br />
{| border=1 cellspacing=0 padding=4 class=wikitable "<br />
! !! ATMega32 !! ATMega644 <br />
|-<br />
| Gehäuse || DIL-40 || DIL-40 <br />
|-<br />
| MHz || max. 16 || max. 20<br />
|-<br />
| Flash || 32 KB || 64 KB <br />
|-<br />
| EEProm || 1 KB || 2 KB <br />
|-<br />
| RAM || 2 KB || 4 KB<br />
|-<br />
|I/O || 32 || 32<br />
|-<br />
|PWM || 4 || 6<br />
|-<br />
|ext. INT || 3 || 32<br />
|}<br />
<br />
== Flashen unter Windows ==<br />
keine Ahnung<br />
<br />
* Pro live-cd wobei Windows unangeruehrt bleibt:<br />
** http://www.ethersex.de/index.php?title=Live_CD<br />
** apt-get install libncurses5-dev<br />
** update und installier software fuer ethersex wie beschrieben http://www.ethersex.de/index.php/Download<br />
** wenn help in menuconfig nicht geht: apt-get install dialog <br />
<br />
<br />
[[Category:Ethersex]]</div>192168.0http://old.ethersex.de/index.php?title=Wie_flasht_man_ein_AVR-NET-IO&diff=2980Wie flasht man ein AVR-NET-IO2009-11-16T16:35:43Z<p>192168.0: /* Flashen unter Linux */</p>
<hr />
<div>= AVR-NET-IO mit dem ATMEL Evaluations-Board von Pollin flashen=<br />
<br />
Als Einsteiger hat man es immer wieder schwer alle Information zu finden.<br />
Ich habe lange gesucht bis ich das mit dem Flashen kapiert habe.<br />
<br />
<br />
== Benötigt wird: ==<br />
* AVR-NET-IO<br />
* ATMEL Evaluations-Board<br />
* ein 1:1 Kabel für den ISP Port (10-poliger Pfostenstecker)<br />
<br />
== Flashen unter Linux ==<br />
Das 10-polige Kabel in die ISP-Buchse stecken.<br />
Nun das AVR-NET-IO Board mit Strom versorgen.<br />
Wenn das ISP-Kabel richtig gesteckt ist, leuchtet auf dem Evalutions-Board die (gelbe) LED<br />
<br />
Nach dem Erzeugen von der [[#Erste_Schritte|ethersex.hex]] kann man mit avrdude das Ganze flashen:<br />
<br />
avrdude -v -p m32 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex <br />
<br />
Nach dem flashen das ISP-Kabel entfernen und kurz die Stromversorgung unterbrechen um das Board zu rebooten.<br />
<br />
* -p m32 steht für den ATMega32; -p m644 wäre der ATMega644<br />
* -v erweiterte Ausgaben<br />
* -c ponyser ist das Verfahren wie das Evalutions-Board die Daten flasht<br />
* -P ist die Serielle Schnittstelle an dem das Evalutions-Board angeschlossen ist (bei USB /dev/ttyUSB0)<br />
* -U was man machen möchte. In unserem Fall wollen wir das File ethersex.hex flashen (-U flash:w:ethersex.hex)<br />
<br />
Es kann sein das man für den ATMega32 die FUSE Bits setzen muss.<br />
<br />
avrdude -p m32 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xCF:m -U hfuse:w:0xDC:m<br />
<br />
Um die korrekte Fuse-Einstellung rauszufinden, ist es sinnvoll http://www.engbedded.com/fusecalc/ zu benutzen.<br />
<br />
== Umbau von einem ATMega32 auf ein ATMega644 ==<br />
<br />
Die Vorteile vom ATMega644 ist vor allem der doppelt so große Speicher.<br />
<br />
* Den ATMega32 aus der Halterung von dem AVR-IO-Net ziehen<br />
* Den ATMega644 einbauen (ACHTUNG Kerbe im Sockel muss mit Kerbe in der CPU übereinstimmen)<br />
* FUSE-Bits setzen (Übernommen von dinus) <br />
avrdude -p m644 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xE7:m -U hfuse:w:0xDC:m -U efuse:w:0xFF:m<br />
* in der Config von Ethersex (make menuconfig) von ATmega32 auf ATMega644 umstellen<br />
* Flashen mit<br />
avrdude -p m644 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex -v<br />
<br />
=== Unterschiede zwischen ATMega32 und ATMega644 ===<br />
<br />
{| border=1 cellspacing=0 padding=4 class=wikitable "<br />
! !! ATMega32 !! ATMega644 <br />
|-<br />
| Gehäuse || DIL-40 || DIL-40 <br />
|-<br />
| MHz || max. 16 || max. 20<br />
|-<br />
| Flash || 32 KB || 64 KB <br />
|-<br />
| EEProm || 1 KB || 2 KB <br />
|-<br />
| RAM || 2 KB || 4 KB<br />
|-<br />
|I/O || 32 || 32<br />
|-<br />
|PWM || 4 || 6<br />
|-<br />
|ext. INT || 3 || 32<br />
|}<br />
<br />
== Flashen unter Windows ==<br />
keine Ahnung<br />
<br />
* Pro live-cd wobei Windows unangeruehrt bleibt:<br />
** http://www.ethersex.de/index.php?title=Live_CD<br />
** apt-get install libncurses5-dev<br />
** update und installier software fuer ethersex wie beschrieben http://www.ethersex.de/index.php/Download<br />
** wenn help in menuconfig nicht geht: apt-get install dialog <br />
<br />
<br />
[[Category:Ethersex]]</div>192168.0http://old.ethersex.de/index.php?title=Wie_flasht_man_ein_AVR-NET-IO&diff=2979Wie flasht man ein AVR-NET-IO2009-11-16T16:27:52Z<p>192168.0: /* AVR-NET-IO mit dem ATMEL Evaluations-Board von Pollin flashen */</p>
<hr />
<div>= AVR-NET-IO mit dem ATMEL Evaluations-Board von Pollin flashen=<br />
<br />
Als Einsteiger hat man es immer wieder schwer alle Information zu finden.<br />
Ich habe lange gesucht bis ich das mit dem Flashen kapiert habe.<br />
<br />
<br />
== Benötigt wird: ==<br />
* AVR-NET-IO<br />
* ATMEL Evaluations-Board<br />
* ein 1:1 Kabel für den ISP Port (10-poliger Pfostenstecker)<br />
<br />
== Flashen unter Linux ==<br />
Das 10-polige Kabel in die ISP Buchse stecken.<br />
Nun das AVR-NET-IO Board mit Strom versorgen.<br />
Wenn das ISP Kabel richtig gesteckt ist, leuchtet auf dem Evalutions-Board die (gelbe) LED<br />
<br />
Nach dem Erzeugen von der [[#Erste_Schritte|ethersex.hex]] kann man mit avrdude das Ganze flashen:<br />
<br />
avrdude -v -p m32 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex <br />
<br />
Nach dem flashen kurz die Stromversorgung unterbrechen um das Board zu rebooten<br />
<br />
* -p m32 steht für den ATMega32; -p m644 wäre der ATMega644<br />
* -v erweiterte Ausgaben<br />
* -c ponyser ist das Verfahren wie das Evalutions-Board die Daten flasht<br />
* -P ist die Serielle Schnittstelle an dem das Evalutions-Board angeschlossen ist (bei USB /dev/ttyUSB0)<br />
* -U was man machen möchte. In unserem Fall wollen wir das File ethersex.hex flashen (-U flash:w:ethersex.hex)<br />
<br />
Es kann sein das man für den ATMega32 die FUSE Bits setzen muss.<br />
<br />
avrdude -p m32 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xCF:m -U hfuse:w:0xDC:m<br />
<br />
Um die korrekte Fuse-Einstellung rauszufinden, ist es sinnvoll http://www.engbedded.com/fusecalc/ zu benutzen.<br />
<br />
== Umbau von einem ATMega32 auf ein ATMega644 ==<br />
<br />
Die Vorteile vom ATMega644 ist vor allem der doppelt so große Speicher.<br />
<br />
* Den ATMega32 aus der Halterung von dem AVR-IO-Net ziehen<br />
* Den ATMega644 einbauen (ACHTUNG Kerbe im Sockel muss mit Kerbe in der CPU übereinstimmen)<br />
* FUSE-Bits setzen (Übernommen von dinus) <br />
avrdude -p m644 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xE7:m -U hfuse:w:0xDC:m -U efuse:w:0xFF:m<br />
* in der Config von Ethersex (make menuconfig) von ATmega32 auf ATMega644 umstellen<br />
* Flashen mit<br />
avrdude -p m644 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex -v<br />
<br />
=== Unterschiede zwischen ATMega32 und ATMega644 ===<br />
<br />
{| border=1 cellspacing=0 padding=4 class=wikitable "<br />
! !! ATMega32 !! ATMega644 <br />
|-<br />
| Gehäuse || DIL-40 || DIL-40 <br />
|-<br />
| MHz || max. 16 || max. 20<br />
|-<br />
| Flash || 32 KB || 64 KB <br />
|-<br />
| EEProm || 1 KB || 2 KB <br />
|-<br />
| RAM || 2 KB || 4 KB<br />
|-<br />
|I/O || 32 || 32<br />
|-<br />
|PWM || 4 || 6<br />
|-<br />
|ext. INT || 3 || 32<br />
|}<br />
<br />
== Flashen unter Windows ==<br />
keine Ahnung<br />
<br />
* Pro live-cd wobei Windows unangeruehrt bleibt:<br />
** http://www.ethersex.de/index.php?title=Live_CD<br />
** apt-get install libncurses5-dev<br />
** update und installier software fuer ethersex wie beschrieben http://www.ethersex.de/index.php/Download<br />
** wenn help in menuconfig nicht geht: apt-get install dialog <br />
<br />
<br />
[[Category:Ethersex]]</div>192168.0