@seibot

Das Devolo-Netz hatte ich glatt übersehen - es könnte eine echte Alternative sein. Dann brauchen wir das "Framing" mit den XBees nciht. Einfacher ist besser. Dazu ein paar Fragen (bei Devolo habe ich nur wenige Informationen gefunden):

- Funktioniert die Übertragung auch wenn es sich um getrennte Stromkreise handelt? D.h. die Verbindung der Stromkreise besteht nur im Sicherungskasten.
- Gibt es hinsichtlich der Entfernung eine Beschränkung? Bei mir liegen zwischen Stromkreisen im Haus und der Garage ca. 40 Meter.
- Wie ich das verstehe, stellen die beiden Devolo Adapter dann eine Standard-Ethernet-Leitung dar. Ein Adapter kann am Router bzw. Switch hängen, der andere ist der Endpunkt für ein Ethernet-fähiges Gerät

@Alle

So, jetzt zu unserer Basisstation mit AVR: Wenn wir diese direkt in ein Ethernet einklinken brauchen wir eine TCP/IP-Schnittstelle. So etwas gibt es als fertiges Modul, z.B. so etwas:

http://olimex.com/dev/enc28j60-h.html

(auf die Schnelle gefunden, es gibt sicher noch andere Module).

Der AVR-BASCOM hat bereits Funktionen für TCP/IP, die Ansteuerung geht z.B. über SPI. Damit benötigen wir keine zweite RS232.

Das R8C13 würde ich trotzdem nicht ignorieren. Eine "Intelligenz" im AM könnte bei diversen Aktionen helfen.

Die RTC ist eingetroffen - von Futurlec (Australien), abgeschickt aus Thailand, ging per Luftpost relativ schnell. So sieht das Teil jetzt aus:

So, jetzt zu unserer Basisstation mit AVR: Wir brauchen dann eine TCP/IP-Schnittstelle. So etwas gibt es als fertiges Modul, z.B. so etwas:

http://img183.imageshack.us/img183/705/rtcminiof2.jpg

(auf die Schnelle gefunden, es gibt sicher noch andere Module).

Der AVR-BASCOM hat bereits Funktionen für TCP/IP, die Ansteuerung geht z.B. über SPI. Damit benötigen wir keine zweite RS232.

Bild hier  

Ansteuerung über den I2C Bus. Für ca. 5 Euro (ohne Porto) macht es keinen Sinn so etwas selbst zu bauen - da kostet mich die Zeit kalkulatorisch mehr ...

Stand der Software-Forschung (ich konnte es nicht lassen und habe gestern zu später Stunde weiter entwickelt): Das AVR-Board kann sich jetzt per XBee mit dem AM unterhalten. Dabei hat Vogon's Grundlagenforschung geholfen. Bevor ich die Software weitergebe wird es noch etwas dauern: Es gibt noch Ungereimtheiten und die Architektur (Struktur) muß überarbeitet werden. Es ist momentan alles "sehr experimentell" - mit einem AVR sieht die serielle Kommunikations teilweise doch anders aus als am PC, zudem hat der AVR-BASCOM ein paar Eigenheiten (erfordert oft Einzelschritte in Konstrukten bei denen ich eine andere Technik gewohnt bin).

Ich habe bisher einfache Datenabfragen getestet, z.B. Akkuspanning, Temperatur etc. Dabei fällt mir auf, dass der Header in der Antwort immer korrekt ist, aber von den beiden Daten-Bytes manchmal das erste fehlt (?) und dafür eine binäre Null angehängt wird. Die Gesamtlänge des Telegramms stimmt immer, nur mit den beiden Datenbytes ist das etwas seltsam. Das Problem muß auf der Empfängerseite liegen - evtl. die XBee Konfiguration oder ein Timing-Problem in der Software - obwohl die Interrupt-gesteuert jedes Byte liest und - im experimentellen Aufbau - stur wartet bis 5 Bytes angekommen sind. (Da muß später per Timer ein Timeout eingebaut werden.)

@Harald: Könnte da evtl. die Adapterplatine mit dem Spannungswandler mitspielen? Aber warum sind es nur die Daten-Bytes (4 und 5), das nicht immer, während Bytes 1-3 immer 100% korrekt ankommen.

Update: Die AVR-AM Kommunikation läuft jetzt fehlerfrei!

Das Problem war, wie ich schon vermutet hatte, eine Timing-Schwäche. Vermutlich generiert AVR-Bascom teilweise zu schwerfälligen Code, sodass sogar eine Interrupt-Service-Routine, die ein Register liest und den Wert an einen Buffer anhängt, zu langsam ist. Ich habe das geändert und verwende jetzt "Serial Buffered Input" - da wird Zeichen lesen und Buffer Management intern abgehandelt, offensichtlich mit optimiertem Code.

Ergebnis: Konsistente Ergebnisse.

Es fehlt noch das Timeout-Handling und die interne Uhr bzw. Abfrage der RTC, und natürlich die gesamte Timer-Programmierung um den AM zu steuern.

Mehr demnächst.

Gruß, Klaus