Forum: Mikrocontroller und Digitale Elektronik AVR für wenig Geld im LAN


von Klaus R. (ruebi)


Lesenswert?

EtherSex klappt auf Anhieb!

Vorgehen: Das beste zu erste: Die Seite 
http://spielplatz.metafnord.de/cgi-bin/firmware-builder2/input.cgi?profile=avr-net-io 
nimmt einem alles ab: Hier kann auch der unbedarfte Anfänger hostname, 
MAC-address, IP, netmask sowie gateway-Adresse angeben (einfach in die 
entsprechenden Felder "klicken" und die eigenen Werte eintragen) und die 
Website (ja, ihr habt richtig gelesen) generiert daraus das persönliche 
HEX-file für´s spätere Flashen. Also Schluss mit Linux, Schluss mit 
irgendwelchen C-Compilern, ... einzig ein ISP-Programmer zum 
Programmieren des HEX-files ist noch erforderlich. Geflashed habe ich 
mit einem STK500 (wichtig dabei ist sicherlich die Angabe, daß der 
Mikro-Controller später mit einem externen Quarz betrieben wird).

EtherSex hat übrigens genau das Feature, welches hier schon öfter 
nachgefragt wurde: Alle Ports mit allen Bits im unmittelbaren 
Webzugriff. Die vom AVR-Net-IO generierte Webseite "refreshed" sich 
dabei mittels JAVA-Script ständig neu.

Einfacher geht´s nun wirklich nicht mehr.

Bei Verwendung eines größeren Prozessors kann man sich (dann ist jedoch 
"Hand anlegen" mittels COmpiler angesagt) auch sein eigenes System aus 
verschiedenen Softwaremodulen zusammenstricken. Hier ist selbst openVPN 
möglich. Feature list gibt´s hier: 
http://www.ethersex.de/tiki-index.php?page=EthersexFeatureList

Meines Erachtens eine interessante Firmware-Alternative.

von Stephan G. (son)


Angehängte Dateien:

Lesenswert?

Da ich lange danach gesucht habe.... hier für alle anderen "Einsteiger"
Im Anhang eine Routine zum Auslesen der ROM-ID der 1-wire Sensoren.
Angepasst auf Port A7.
Sofort lauffähig auf dem pollinboard. Ausgabe der Ids über RS232.

Vielen Dank nochmal an RoBue für den immer besser zu lesenden Code.

Da ich auch noch die Relaiskarte dran hab, hab ich mir den Code wieder 
umgestrickt, auf die entsprechenden Ausgänge.

Jetzt darf ich noch lernen, wie ich abhängig von Eingangswerten (ow / 
analog / digital) schalten kann.

gruss an alle

von RoBue (Gast)


Lesenswert?

Hallo son,
danke für Dein Ausleseprogramm.
Wenn Du nichts dagegen hast, werde ich das in ein Gesamtpaket einbauen 
(AVR-NET-IO-Webserver, Bootloader, 1-Wire-ID-Auslesen).

Als mögliche Hilfe ein Codeschnipsel von  mir, das ich in main.c mal 
eingebaut habe.

-----

// Schaltbedingungen (evtl. in config.h auslagern!)
  uint8_t temperatur1  = 20; // -> 20 Grad
  uint8_t temperatur2  = 19; // -> 19 Grad
  unsigned char  hh1  = 21; // -> 21:45 Uhr
  unsigned char  mm1  = 45;
  unsigned char  hh2  = 22; // -> 22:00 Uhr
  unsigned char  mm2  = 00;

...

// RoBue
  // Schalten der Ports über bestimmte Bedingungen
  if ( ss == 05 ) {

    // Über Temperatur (evtl. in ow-Rotine einfuegen!)
    // temperatur1
                        // Sensor0
      if ( ow_array[0]/10 < temperatur1 ) {
      PORTD |= (1 << PD2); // ein
    }
    else {
      PORTD &= ~(1 << PD2); // aus
    }
    // temperatur2
                        // Sensor1
            if ( ow_array[1]/10 < temperatur2 ){
      PORTD |= (1 << PD3); // ein
    }
    else {
      PORTD &= ~(1 << PD3); // aus
    }

    // Über Zeit: ein/aus
    if ( hh == hh1 ) {
      if ( mm == mm1 ) {
        PORTD |= (1 << PD4); // ein
      }
    }
    if ( hh == hh2 ) {
      if ( mm == mm2 ) {
        PORTD &= ~(1 << PD4); // aus
      }
    }

  } // -> if ss == 05

-----

Gruß RoBue

von Christoph (Gast)


Lesenswert?

Hallo,

ich habe leider noch ein Problem mit meinem Pollin-Board:

Zunaechst wollte ich die Firmware von U. Radig in AVR-Studio portieren. 
Ich habe die SS-Leitung angepasst und fuer das Makefile den Atmega32 und 
16000000Hz ausgewaehlt. Der Compiler laueft ohne Fehler durch. Nun kann 
ich danach ueber RS232 die IP-Adresse aendern, die Aenderung awird auch 
richtig bestaetigt. Nur auf die Demo-Website komme ich nicht.

Spiele ich einfach nur das hex-File drauf, das in der Code-Sammlung 
verlinkt ist, klappt alles wunderbar.

Nehme ich den Radig-Code und passe im Programmers-Notepad die SS-Leitung 
und den Controller an, compiliert auch alles, nur werden 
IP-Adress-Aenderungen nicht bestaetigt, ich erhalte nur einfach alle 
Zeichen zurueck. Ein Aufruf der Demo-Website misslingt ebenfalls.

Mache ich noch was falsch oder habe ich etwas uebersehen, dass ich 
eigentlich aendern muesste?

Gruss
Christoph

von Christoph (Gast)


Lesenswert?

Achso, kurzer Nachtrag: Auf dem Board laeuft noch der Bootloader von 
Peter Fleury. Der sollte aber eigentlich kein Problem darstellen, oder?

von Tobias B. (gizmore)


Lesenswert?

Ich werde die Software wohl so lassen und einfach zwei Boards nehmen. 
Unter Visual Basic lassen sich da trotzdem nette Sachen anstellen, indem 
man einfach winsock1 oder winsock2 benutzt.
Nun zu meiner Frage. Ich möchte an den digitalen Eingängen Zustände 
abfragen, nämlich Durchgang gegen Masse oder nicht, was zB. mit Getport 
1 auch ganz gut funktioniert, auch wenn da zum Schutz sowohl an Masse 
als auch am Eingang je ein Wiederstand mit 47k davor ist. Nun soll da 
auch kurzzeitig eine Spannung von 12V anliegen können. Reichen da die 2x 
47k oder raucht mir da was ab.
Eine interessante Entdeckung habe ich dabei auch noch festgestellt. 
Schalte ich eine Diode mit der Anode an den Eingang, so läßt sich der 
Durchgang trotzdem auslesen, die 12 V bleiben der Schaltung aber fern. 
Trotzdem würde ich gern wissen, wie groß die Wiederstände zum schutz der 
Schaltung bei 12 bzw. 24V sein sollten.

mfg Gizmore

von Sucher (Gast)


Lesenswert?

Hallo Experten

ich wollte als Erweiterung bei Pollin folgendes bestelen, welches weiter 
oben als geeignete Erweiterung angesprochen wurde
-USB Steckdosenleiste (Art. 450310)
-K8IO 8-fach Relaiskarte

ich kann das aber nicht mehr finden. Weiß da jemand was?

Danke
Achim

von Tobias B. (gizmore)


Lesenswert?

Sucher wrote:
> Hallo Experten
>

> -USB Steckdosenleiste (Art. 450310)
> -K8IO 8-fach Relaiskarte

Die hat die Art. nr. 710722, scheint aber momentan ausverkauft zu sein. 
Das war schon mal bei der Relaiskarte so. Nach einer Weile kam eine 
verbesserte Version zum gleichen Preis. Brauchst Du sofort eine, gibt es 
auch bei C**r*d etwas, allerdings zum Apothekenpreis von knapp 30€.

von Sucher (Gast)


Lesenswert?

Hallo

ok ...hat sich erledigt. K8IO ist wieder da!

von Tobias B. (gizmore)


Lesenswert?

Sucher wrote:

> ok ...hat sich erledigt. K8IO ist wieder da!

Und wie vermutet in einer verbesserten Version. Es gibt jetzt einen 
Kühlkörper und andere Relais. Vielleicht hat man denen jetzt sogar einen 
Umschaltkontakt gegönnt. kannst ja mal schreiben, wenn der Bausatz 
eingetroffen ist.

von Klaus R. (ruebi)


Lesenswert?

Tobias Born wrote:
> Vielleicht hat man denen jetzt sogar einen
> Umschaltkontakt gegönnt. kannst ja mal schreiben, wenn der Bausatz
> eingetroffen ist.

Da es sich bei den abgebildeten Schraubklemmen wieder um 2-fach 
Schraubklemmen handelt wird dem wohl leider nicht so sein.

von Matthias (Gast)


Lesenswert?

Hi,

bin total neu hier, und absoluter DAU in Sachen Mikrocontroller.
Könnt Ihr mir sagen ob ich mit dem Pollin-Bausatz (falls ich ihn zum 
Laufen bekomme) folgendes machen kann:
Mit TCP verbinden, und dann über Änderungen an den Eingangs-Pins 
benachrichtigt werden.
Ich will also nicht dauernd abfragen wie der Status der Eingänge ist, 
sondern sofort sehen wenn was passiert.
Es geht um die Geschwindigkeit der ganzen Geschichte, ich müsste 
sptestens 50ms nach dem Schaltevent schon mit meiner Software darauf 
reagieren.
Wer das Dingens also am Laufen hat, könnte für mich mal per telnet 
darufgehen, einen Eingang schalten und schauen ob dann was angezeigt 
wird.

Wenn das nicht geht, gibt's hier Leute, die die Firmware dahingehend 
ändern können/wollen?

Vielen Dank,
Matthias

von Tobias B. (gizmore)


Lesenswert?

Matthias wrote:

> Ich will also nicht dauernd abfragen wie der Status der Eingänge ist,
> sondern sofort sehen wenn was passiert.
> Es geht um die Geschwindigkeit der ganzen Geschichte, ich müsste
> sptestens 50ms nach dem Schaltevent schon mit meiner Software darauf
> reagieren.

Das geht ganz einfach mit der Originalen Firmware und Visual Basic. 
Einfach den Winsock auf die Form ziehen.

'Dann brauchst Du einen kleinen Timer:

  Dim Antwort As String
  Dim Kontrollampe As String
  Dim spannung As String
  Dim ServerIP1 As String

'Zu finden hier:

Sub Pause(Seconds As Single)
   Dim Timer1 As Single, Timer2 As Single, currentDate As Date
   currentDate = Date
   Timer1 = Timer + Seconds
   Timer2 = Timer1 - 86400 '24 Stunden

   While ((Timer() < Timer1) And (currentDate = Date)) Or _
         ((Timer() < Timer2) And (currentDate + 1 = Date))
      DoEvents 'andere Prozesse werden nicht behindert
   Wend
End Sub

'Nun noch etwas, um den Winsock scharf zu machen:

' Da steht, wie man den Winsock benutzt: 
http://www.vbarchiv.net/tipps/tipp_616.html

'Angepaßt sieht das so aus:
  Command1.Enabled = False
  ' Die IP-Adresse oder Computer-Name des Servers
  ServerIP1 = "192.168.2.90"
  ' 2. Parameter: Portnummer
  Winsock1.Connect ServerIP1, 50290
' Wenn eine direkte Verbindung aufgebaut ist
Private Sub Winsock1_Connect()
  ' Jezt können wir mit dem Button die Nachricht senden
  Command1.Enabled = True

' Wenn die Verbindung geschlossen wird
Private Sub Winsock1_Close()
  Command1.Enabled = False

Nun ist es so, dass der die Schaltung nicht die Schnellste ist. Sende 
ich einen Getport 1, dann muß ich erst kurz warten, bis ich den Zustand 
dann abfragen kann. Das sieht dann so aus:

Private Sub Command1_Click()
nochma1:
Winsock1.SendData "getport 1" 'Port abfragen
Pause 0.009
Winsock1.GetData Kontrollampe 'Antwort holen
Pause 0.009

If IsNumeric(Kontrollampe) Then GoTo ja1 Else GoTo nochma1 'Falls 
Antwort_ unzutreffend (zB. ACK oder NAK Command) dann noch mal holen

ja1:
If Kontrollampe = 1 Then Command2.Enabled = True 'Bei 1 ist  Eingang 
offen
If Kontrollampe = 0 Then Command2.Enabled = False ' Das Command nimmt_ 
ausgeschaltet grüne Farbe an.
Pause 0.05
GoTo nochmal

End Sub

Einen analogen Port kannst Du so abrufen:


Private Sub Command27_Click()

spannung_abrufen:
Winsock1.SendData "getadc 2"
Pause 0.009
Winsock1.GetData spannung
Pause 0.009
If IsNumeric(spannung) Then GoTo spannung_errechnen Else GoTo 
spannung_abrufen
spannung_errechnen:
spannung = spannung * 0.0049068
Text1.Text = spannung
Pause 0.5
GoTo spannung_abrufen


End Sub

Wobei 0.0049068 Dein Multiplikator ist, mit dem Du das Ding eichen 
kannst.

Hat einer einen einfacheren Weg gefunden, der ohne die Pausen auskommt, 
dann würde mich das auch interessieren.

von Tobias B. (gizmore)


Lesenswert?


von AVRNew (Gast)


Lesenswert?

Hallo zusammen,

könnte jemand dass ganz evt. zusammen fassen ?
Sprich, die verwendeten Tools und Sources ?

Gruß

AVRNew

von Mensch_Z (Gast)


Lesenswert?

nimm dir Zeit und lese 815 posts.dann eruebrigt sich die Frage;-)

von Matthias (Gast)


Lesenswert?

Danke Tobias,

aber ist mit so einer Timer-Lösung muss ich ja ständig abfragen.
Belastet das Programm und evtl. auch das Netzwerk.
Genau das wollte ich eigentlich vermeiden - sondern "benachrichtigt" 
werden, wenn sich der Status ändert.
Mir ist schon klar, daß die Software die Eingänge ständig abfragen kann, 
will das aber nicht.

Vielen Dank für Deine Mühe!

von Sypatikus (Gast)


Lesenswert?

@RoBue
hast du schon eine Einbindung der 1Wire search Routine gemacht?
Wenn ja, könntest du die komplette Soft mal hier reinstellen?
Schon mal vielen Dank dafür!!

von Tobias (Gast)


Lesenswert?

Hallo zusammen,

gibts eigentlich zu dem Pollin-Board schon einen LAN-Bootloader? Ich 
habe zwar schon die Suchfunktion gequält, aber nur UART-Bootloader 
gefunden. Ansonsten werde ich mich mal daran begeben.

Tobias

von Stephan G. (son)


Lesenswert?

@RoBue
danke für die Codezeilen, habe daraus was gebastelt ;)

@Sypatikus
mein gepostetes hex flashen, Sensor(immer nur Einer) anschließen, Rom 
ablesen(terminalprogramm), in config eintragen, glücklich sein.


ich bin jetzt gerade dran folgende Baustellen noch abzuarbeiten:
- LCD am Ext.Stecker
- SD-Karte am Ext.Stecker
- Daten im Intervall auf SD ablegen
- Variablen für Schaltbedingungen über Website einstellen
- config auf sd-Karte ablegen, um eine allgemeingültige Firmware zu 
machen
ich denke, der letzte Punkt ist der schwierigste.

Was haltet ihr davon speziell für das Pollin-AVR ein separates Forum 
(würd ich auch bereitstellen) zu machen. Dann könnte man das alles etwas 
übersichtlicher gestalten?

von RoBue (Gast)


Angehängte Dateien:

Lesenswert?

Hallo Synapticus,

bin zur Zeit wie son (Stephan Gross) daran, die Eingabekanäle (1-Wire, 
Uhr, digital, analog) mit den Schaltausgängen (D2-7) zu verknüpfen, um 
damit z.B. eine Heizungssteuerung zu ermöglichen (oder gar eine 
Haussteuerung!). Dies sollte am besten noch über das Webinterface 
verwaltet werden. Dabei habe ich ein Riesenproblem: Der Platz im Atmeg32 
wird langsam wirklich saueng. Ganz abgesehen davon blicke ich für diese 
Funktionen beim Webinterface noch nicht so recht durch (webpage.h und 
httpd.c/h). Bisher kann ich für die 1-Wire-Suche nur auf das hex-File 
von son verweisen, das ich noch etwas modifiziert habe, so dass man 
mehrere Sensoren anschließen und auslesen kann. Dann alle in config.h 
eintragen ... (1-Wire an PORTA7).

Hallo son,
bin z.Z. bei ähnlichen Aufgaben. Vielleicht können wir uns absprechen, 
wer was macht. Ich bin mir noch nicht ganz im Klaren, ob die 
Administration über UART/Telnet oder Web (oder beides?) erfolgen soll. 
Wenn UART ganz wegfällt, wäre wieder Platz, aber andere (s.o.) wären 
darüber eher wieder unglücklich. Oder doch ein neuer Prozzi mit 64MB?

Ein neues Forum wäre sicher gut, oder wenigstens ein neuer Thread hier. 
Dabei müsste man klarer nach den "Software-Familien" trennen, also z.B. 
die Linie "Radig_mudman_RoBue_...", "SimonK", "ethersex_und_-rape", 
Radig_kurtcontroller, ...) Mich würde z.B. noch interessieren, wer alles 
mit "meiner" Familie (Radig_mudman_RoBue) arbeitet und 
weiterprogrammiert. Wenn das viele sind, wäre zumindest ein Thread dafür 
nicht schlecht.

Gruß RoBue

von Klaus R. (ruebi)


Lesenswert?

Tobias wrote:
> > gibts eigentlich zu dem Pollin-Board schon einen LAN-Bootloader?

Hallo Tobias,

schau mal auf die Seiten von EtherSex (http://ethersex.de/). Dort gibt 
es das was Du suchst auf BootP-Basis; wird dann eventuelle nicht mehr in 
den Mega32 passen. Aber der 644 passt ja auch ins Board.

Viel Erfolg!

von Sucher (Gast)


Lesenswert?

Hallo Webserver-Experten,

eigenes Forum über Webserver wäre gut. Es sollte jedoch nicht auf das 
Pollinboard beschränkt sein, sondern die Thematik  "Webserver-Baukasten" 
mit Atmegas.
Was haltet ihr davon, dass man die zusätlichen Aufgaben wie 1-Wire, 
DCF77 Zeitschaltuhr, Relaisplatine und und und..auslagert und mit einem 
eigenen Atmega8 (?) betreibt und die Boards so dimensioniert, dass man 
diese aufeinander stabeln kann und mit I2C (SPI?) an die 
Webserverplatine koppelt (Halbes Europakartenformat?). Der Webserver 
wäre dann weitgehend unäbhängig von den individuellen Entwicklungen der 
einzelnen Entwickler.
So könnte ein Baukasten entstehen den man im Forum diskutiert.

Was haltet Ihr davon?

Bis denne
Achim

von Martin P. (billx)


Lesenswert?

@sucher

genau das habe ich vor .... i2c zu verwenden ... jedoch wofür atmega 8 ? 
zusätzliche io´s bekommst du mit nem pfc .... temperatur über nen lm75 
.... ich werde wenn ich das soweit wie ichs brauche mir noch nen dimmer 
auf basis eines atmega8 bauen ... mal schauen wann das so weit sein wird 
...

von Sucher (Gast)


Lesenswert?

Hallo

@Martin ich nehme mal an du meinst PCFxx Bausteine. Ich würde den 
Atmega8 als Ersatz für die PCFxx dafür nehmen. Der Vorteil man kann 
diesen programmieren. Ausserdem kann man darauf Logik implementieren. 
Zum Beispiel die 1-Wire Sensoren abfragen und Relais schalten, ohne das 
in die Webserver-Software integrieren zu müssen. Der Webserver sieht nur 
die I2C Schnittstele und kann über diese die aktuellen Temperaturen, 
Schaltzustände abfragen oder eben Steuerparameter setzen. Ich sehe den 
Vorteil darin, man muß am Webserver nichts ändern bzw. kann den 
Datenaustausch Webserver<=> Atmega8 Substem mit I2C Schnittstelle 
universell gestalten. Der preis von den PCF's und dem Atmega8 macht auch 
keinen Unterschied.

von Karl albert L. (karleido)


Lesenswert?

RoBue wrote:
>
> Ein neues Forum wäre sicher gut, oder wenigstens ein neuer Thread hier.
> Dabei müsste man klarer nach den "Software-Familien" trennen, also z.B.
> die Linie "Radig_mudman_RoBue_...", "SimonK", "ethersex_und_-rape",
> Radig_kurtcontroller, ...) Mich würde z.B. noch interessieren, wer alles
> mit "meiner" Familie (Radig_mudman_RoBue) arbeitet und
> weiterprogrammiert. Wenn das viele sind, wäre zumindest ein Thread dafür
> nicht schlecht.
>
> Gruß RoBue

Hallo RoBue,

ich bin Anfänger und arbeite mit deinem Code. Ich versuche das LCD auf 
EXT zu legen, damit bei der Sub-D Anschlußplatine die Klemmen frei 
werden. Die Leitung RW und DB0-DB3 will ich auf Masse (low) legen. Dann 
benötige ich nur noch 6 Ports für RS, E, DB4-DB7.

Gruß
karleido

von Peter N. (wep)


Lesenswert?

@karleido
Ich hab ein Display erfolgreich mit 7 Pins an EXT angeschlossen und den 
übriggebliebenen noch für die Hintergrundbeleuchtung verwendet. Ist halt 
nicht mehr so hübsch wenn man ein bisschen in der LCD.c Routine 
rumfrickeln muss weil 2 Pins auf Port B liegen...
Ich hab mir den RoBue-Code noch nicht angeschaut aber wenn der LCD-Teil 
Radig-Kompatibel ist kann ich dir was schicken...
Viel Spaß
wep

von RoBue (Gast)


Lesenswert?

-> karleido, wep

Code ist Radig-Kompatibel!

Gruß RoBue

PS: Habe mir den Bus am Sub-D-Anschluss erweitert, so dass A0-A3, C0-C7 
und D2-D7 dran liegen.

von Georg (Gast)


Lesenswert?

Hallo jasmin und ruebi,
Habe die arp-tabelle gelöscht --> ohne Erfolg.
Host und AVR neu gebootet --> ohne Erfolg

Die arp-Tabelle zeigt zwar die IP und die richtige MAC aber die 
Kommunikation und auch ein Ping gehen nicht.

Das ist momentan nur ein Schönheitsfehler, aber spätestens wenn ich das 
nächste AVR-NET-IO zusammengelötet habe wird es sicherlich Konflikte 
geben.

Hat denn sonst niemand das Problem?

Gruss Georg

von Klaus R. (ruebi)


Lesenswert?

Georg wrote:
> Habe die arp-tabelle gelöscht --> ohne Erfolg.
> Host und AVR neu gebootet --> ohne Erfolg

Hallo Georg,

letzter Versuch: Verbinde Deinen PC direkt mit dem NET-IO (mittels 
korrekt gekreuztem Ethernet-Kabel) und überprüfe nochmal Deine 
netmask-Einstellungen. Das MUSS funktionieren!

von Andreas S. (akku75)


Lesenswert?

@Georg:

Ich habe stk200 zum Programmieren benutzt, wenn es auf dem NET-IO 
gesteckt blieb ging bei mir auch keine Ethernet-Kommunikation!

Gruß
Andreas

von Georg (Gast)


Lesenswert?

Hallo,
ich habe einen anderen Rechner (Laptop) mit einem crossed Patchkabel an 
den AVR-NET-IO angeschlossen, nach dem ich vorher mit dem 
Entwicklungsrechner die gewünschte MAC eingespielt habe. Anschließend 
AVR-NET-IO eingeschaltet. Ohne Erfolg! Egal ob mit gestecktem 
Programmierstecker oder nicht.
Flashe ich mit der MAC-Adresse, die RoBue in seinen Sourcen drin stehen 
hat, kann ich selbst mit gestecktem Programmierstecker und mit Jumper 
auf "prog" sofort über TCP/IP kommunizieren.

Also alle Tips funktionieren bei mir nicht! Kann es vielleicht sein das 
ich nicht nur im config.h die MAC-Adresse ändern muss sondern auch noch 
wo anders bzw. muß ich die MAC-Adresse noch in den ethernet-controller 
schreiben? wenn ja wie?

Georg

von Wackel-Dackel Toni (Gast)


Lesenswert?

Hallo,
ich habe auch das Pollin-Board, aber noch mit der Firmware 1.01.
Kann mal bitte einer die Pollin-Software mit der Firmware 1.03 hochladen 
damit ich auch ein LCD benutzen kann ? Bei der aktuellen runterladbaren 
Software kann man kein Firmware-Update mehr machen.

Danke in voraus

Toni

von Gast (Gast)


Lesenswert?

Hallo RoBue,

ich habe d mal eine Frage! Ich Arbeite und will Versuchen deine Software 
auf meine Bereiche zu ändern! Aber jetzt wollte ich mal etwas Schalten 
aber bekomme nicht wirklich einen guten Kontakt am Pollin-Bord am J3! 
Habe wenn ich mit dem Schaltplanarbeite von Pollin schon etwa 2,3 V an 
dem Ausgang liegen! Das ist doch nicht normal oder?

Nun zu meiner anderen Frage ist das bei dir auch so? Oder habt ihr an 
den Port etwas geändert?
Könntest du mir diese Frage bitte beantworten?

Danke schon mal!

Gast

von John S. (student)


Lesenswert?

Hallo,

kleiner Hinweis,

bin auch auf der Fehlersuche (habe aber mehrere Boards zur Verfügung - 
davon 1 defektes).

Habe mir sowohl den Hex-Code als auch den EEP Inhalt von intaktem und 
Buggy Board ausgelesen.

Lässt sich sehr gut mit Tiny Hexer vergleichen (FREEWARE, keine 
Shareware!)

Zu finden auf 
http://www.chip.de/downloads/Tiny-Hexer-1.8.1.6_13014623.html

Habe damit rausgefunden, dass EEPROM Mist enthält.

Interessanter Fehler: Board antwortet über die RS232, in dem es 
(lediglich) die Befehlsfolge Byte für Byte zurücksendet - mehr aber 
nicht. Denke das ist das simple Protokoll auf der seriellen 
Schnittstelle, dass jedes Byte zur Kontrolle sofort zurückgesendet wird.

Weitere Vermutung: Code im Mega32 dürfe o.k. sein ... Tiny Hexer 
bestätigt das.

Have fun

von Georg (Gast)


Lesenswert?

Tip an den Gast,


>aber bekomme nicht wirklich einen guten Kontakt am Pollin-Bord am J3!
>Habe wenn ich mit dem Schaltplanarbeite von Pollin schon etwa 2,3 V an
>dem Ausgang liegen! Das ist doch nicht normal oder?

du mußt sicherstellen das die Port-Pins die du als Ausgang nutzen willst 
auch als Ausgang konfiguriert sind!

Füge im Source-Code folgendes ein (da sollten ähnlich Zeilen für die 
anderen Ports stehen):

in main:
  DDRC = OUTC; // Richtung der Port-Pins setzen


in config.h
        #define OUTC   0xFF //-> mit FF sind alle PINs auf "OUTPUT" 
gesetzt

mit den obigen Zeilen sind alle PORTC-PINs auf Ausgang gesetzt und es 
erscheinen satte 5 V am Ausgang auch bei gesteckter Relaiskarte.

Viel Erfolg Georg

von Sascha (Gast)


Lesenswert?

für verwendung mit dem Pollin NET/IO:

ENC28J60_PIN_SS wird von Ulis Webserver nicht genutzt. (siehe PB4 in 
seinem Schaltplan und definition von ENC28J60_PIN_SS im original 
quellcode)

#define ENC28J60_PIN_SS kann komplett gelöscht werden und in enc28j60.c 
folgendes abändern:
1
DDRB |= (1<<ENC28J60_PIN_SS)|(1<<ENC28J60_PIN_CS)|(1<<ENC28J60_PIN_MOSI)|(1<<ENC28J60_PIN_SCK);
in
1
DDRB |= (1<<ENC28J60_PIN_CS)|(1<<ENC28J60_PIN_MOSI)|(1<<ENC28J60_PIN_SCK);

Vielleicht kann dies jmd überprüfen. Fand den eintrag
1
#define ENC28J60_PIN_SS    3 --> AVR-NET-IO Version 1.0 PIN 2 PORTB sonst keine Funktion
http://www.mikrocontroller.net/articles/AVR_Net-IO_Bausatz_von_Pollin 
etwas verwirrend und hab des ding zuerst auf 2 gesetzt und der 
controller ist in eine Endlosschleife gelandet, wodurch nur der Server 
funktioniert hatte, aber nicht das Terminal^^

Wenn man ENC28J60_PIN_SS auf 3 definiert, dann Funktioniert zwar alles, 
kann aber später eine spannende Fehlersuche zur folge haben ;)

Sascha

von Paul (Gast)


Lesenswert?

Was kann passieren?

Wenn schon denn schon!

Ich konnte noch keinen Fehler feststellen.

Bye

Paul

von Sascha (Gast)


Lesenswert?

PB3 ist ueber die EXT-Buchse nach aussen geführt und würde mit
1
DDRB |= (1<<ENC28J60_PIN_SS)|(1<<ENC28J60_PIN_CS)|(1<<ENC28J60_PIN_MOSI)|(1<<ENC28J60_PIN_SCK);
als Ausgang Konfiguriert werden. Schlecht, wenn man den Pin als Eingang 
haben will ;)

von Kurt (kurtcontroller)


Lesenswert?

Hallo Sacha,

Danke für die Information.

Ich habe an PB3 den seriellen Ausgang zum LCD.
// LCD Data PIN Definition (DataDirectionRegister, Port, Pin)
#define LCD_DATA_DDR DDRB
#define LCD_DATA_PRT PORTB
#define LCD_DATA_BIT PB3

Grüße aus Neuwied

Kurt

http://pieper-online.dyndns.org
admin
tim

von Erba57 B. (orfix) Benutzerseite


Lesenswert?

Hallo son,
danke für Dein Ausleseprogramm, hat super geklappt.
leider funktioniert meine änderung in der config.h nicht.

ausgelesen wird

 ID: 10 F3 96 65 01 08 00 37   T: 0150 =   21.0øC

eingetrage hab ich

#define OW_ID_T01    {0x10,0xf3,0x96,0x65,0x01,8,0,37xbb}


ist das ok?


wer kann helfen?

orfix

von RoBue (Gast)


Lesenswert?

{0x10,0xf3,0x96,0x65,0x01,0x08,0x00,0x37)
müsste normalerweise funktionieren.

Gruß RoBue

von Clyde H. (clyde)


Lesenswert?

Hi,

darf ich mal nach einem kompletten Zip inkl. AVR-Studio Projektfile 
fragen?
Wenn ich einzelne Sourcen öffnen will, bekomme ich immer eine "is not a 
AVR Studio 4 Savefile"

Ich verspreche mir, das ich mich dann einfacher durchwurschteln kann mit 
einem funktionierenden Projektfile anstatt mein eigenes Süppchen zu 
kochen.

Ich hoffe, das wird nicht falsch verstanden und ist nicht zu "Dreist".

Gruß
Clyde

von Erba57 B. (orfix) Benutzerseite


Lesenswert?

RoBue wrote:
> {0x10,0xf3,0x96,0x65,0x01,0x08,0x00,0x37)
> müsste normalerweise funktionieren.
>
> Gruß RoBue

 Hallo RoBue,

vielen herzlichen dank hat funktioniert.

temp differenzen bei 2 fühler von < 0,8 Grad sind ok oder?

wenn ich einen mit kältespray bearbeite geht die temp auf 50 grad, wird 
das vorzeichen nicht angezeigt?

wie kann kann ich 4 sensoren an einen 2 zeiligen display anzeigen?

deine idee mit der Software-Familien und die heizungsteuerung finde ich 
sehr gut.

vielen dank für deine mühe

mfg orfix

von RoBue (Gast)


Lesenswert?

Hallo orfix

" ... das vorzeichen nicht angezeigt"
Ja, leider. Ist ein Fehler im Original von Wil. Im Thread bei Ulrich 
Radig habe ich das gefunden. Werde versuchen, das zu korrigieren. Eine 
Lösung ist wohl, dass man statt uint16_t besser int16_t für ow-array 
benutzt. Mal schauen.

" ... 4 sensoren an einen 2 zeiligen display"
Steht auch auf meinem Plan, aber ich muss sehen, dass ich noch Platz im 
Flash des Atmeg32 habe. RS232/Telnet/cmd, LCD und Webinterface sind 
einfach als Datenkanäle mindestens einer zu viel. Vielleicht kann man 
das alternativ so einstellen, dass dann eben nur die Temperaturen 
angezeigt werden und die anderen Funktionen (z.B. Counter, Zeit etc.) 
nicht.


Heizungssteuerung (Bitte um Mithilfe!)
Das ist eigentlich mein Hauptziel. Die Schwierigkeit ist die 
Administration, also wie man z.B. die Einschalttemperaturen verändert. 
Dies könnte über RS232/Telnet und/oder Webinterface geschehen. Wenn mir 
hierbei einer/eine einen Codeschnipsel liefern könnte ... das wäre 
super. Ich blicke weder in httpd noch in cmd, wie Eingabewerte 
weiterverarbeitet werden. Ausgabe ist kein Problem.

Konkrete Aufgabe:
Eingabe einer 2-stelligen Zahl (=Temperatur) über webpage.h und Übergabe 
in httpd in eine Variable.

Meien Lösung sind bisher nur feste Zahlenwerte und die Abfrage dieser in 
main.c.

Ich bin mal gespannt, ob was kommt.

Gruß RoBue

von RoBue (Gast)


Angehängte Dateien:

Lesenswert?

Hallo orfix,
habs doch gleich mal ausprobiert.
Ein Beispiel für 2 Werte in 1 Zeile:

// Temperatur auf LCD ausgeben
    lcd_print(1,0,"                ");
    lcd_print(1,0,"%i C",ow_array[0]/10);
    lcd_print(1,8,"%i C",ow_array[1]/10);

Neue main.c im Anhang. Habe darin auch Schaltfunktionen eingebaut.

Gruß RoBue

von ich (Gast)


Lesenswert?

Ist im Flash noch genug Platz für eine SD-Kartenansteuerung zusätzlich 
zur Displaysteuerung?
Wäre es dann möglich HTML-Seiten von der Karte zu laden?
Genug Anschlüsse für ein Display und die SD-Karte sollten ja vorhanden 
sein.

Ansonsten tolles Projekt! Danke!

von Gast (Gast)


Lesenswert?

Hallo und danke schon aml an alle die hir viel Probieren!

Ich wollte eine Kamera an das Board von Pollin bauen und im Code ist ja 
alles dafür vorhanden aber ein Problem habe ich doch noch!

Ich habe keine Ahnung wo die Kamera angeschlossen werden soll!
( Welche Pins oder welchen Port?)

Vielleicht könnt ihr mir Helfen bei meinem Problem!

Danke schon mal!

Gruß Gast

von NET-IO-Fan (Gast)


Lesenswert?

Hallo,

ich habe die Kamera (gibt es im Shop von Ulrich Radig für 4,99 Euronen) 
erfolgreich in Betrieb.
Du mußt den MAX232-Chip entfernen und die Anschlüsse der Kamera an RxD 
und TxD anschließen. (Die Betriebsspannung und Masse darf natürlich auch 
nicht fehlen.) Auf Urich Radigs Homepage und in seinem Forum findest Du 
genügend Informationen dazu. Was Du beachten solltest wäre eine kurze 
Zuleitung zur Kamera und das Dein Netzteil genügend Strom liefern kann 
(ich hatte das Problem, das die Spannung von meinem Steckernetzteil 
zusammenbrach und ich nur 4,6V auf der 5V-Leitung hatte - damit 
funktionierte die Kamera nicht).

von Telefonfritze (Gast)


Lesenswert?

>Es geht um die Geschwindigkeit der ganzen Geschichte, ich müsste
>sptestens 50ms nach dem Schaltevent schon mit meiner Software darauf
>reagieren.

Das funktioniert mit irgendwas ueber Ethernet angeschlossenem zwar in 
der Regel, aber wenn "spaetestens" da steht, kann Ethernet diese 
Bedingung nicht erfuellen.

Telefonfritze

von Erba57 B. (orfix) Benutzerseite


Lesenswert?

RoBue wrote:
> Hallo orfix,
> habs doch gleich mal ausprobiert.
> Ein Beispiel für 2 Werte in 1 Zeile:
>
> // Temperatur auf LCD ausgeben
>     lcd_print(1,0,"                ");
>     lcd_print(1,0,"%i C",ow_array[0]/10);
>     lcd_print(1,8,"%i C",ow_array[1]/10);
>
> Neue main.c im Anhang. Habe darin auch Schaltfunktionen eingebaut.
>
> Gruß RoBue

hallo RoBue,

vielen dank, habs am laufen, funktioniert super, warte nun auf deine 
weitern projekte. Würde dich gerne helfen aber ich bin schon froh wenn 
ich eine hex datei erzeugen kann und den mikroc. flashen kann.


mfg orfix

von Georg (Gast)


Lesenswert?

Hallo
Versuche ich irgend eine MAC in dem Source-Code von RoBue/Radig 
einzustellen bekomme ich noch nicht mal ein Ping hin!?

Ich würde mich freuen wenn jemand mal die MAC-Adresse verändert und 
testet ob es geht?

Ich bin sonst ziemlich sicher das im Source-Code von RoBue/Radig mit der 
MAC-Address-einstellung etwas nicht so läuft wie es sollte.

Wenn ich bei Ethersex den Online Firmwarebuilder benutze

http://spielplatz.metafnord.de/cgi-bin/firmware-builder2/input.cgi?profile=avr-net-io

und genau meine MAC und IP einstelle bekomme ich ein Hexfile das nach 
dem flaschen bei mir auch einwandfrei mit meiner IP und MAC ansprechbar 
ist, leider bekomme ich die so konfigurierten Sourcen nicht. Das 
runterladen und lokal konfigurieren läuft leider bei mir nicht sauber 
durch, da immer irgend eine Variable gerade nicht deklariert ist und der 
Compiler mit einer Fehlermeldung kurz vom Hex-File abbricht. Da find ich 
die Sourcen von RoBue/Radig doch übersichtlicher, bis auf die kleine 
Macke, deren Beseitigung mir nicht gelingt.

Hat denn sonst keiner das Problem, dass er mehr als nur einen Webserver 
laufen lassen will und das mit den jeweils richtigen MAC-Adresse?

Gruss Georg

von conny (Gast)


Lesenswert?

Hallo,
der Bausatz von Pollin lief nach dem Zusammenbau sofort einwandfrei, 
konnte alle Funktionen von jedem Rechner im Netzwerk per Pollin Software 
"NetServer" abrufen. Auch serielle Verbindung hat einwandfrei geklappt.
Nun wollte ich die Software nach U. Radigs Webserver benutzen, habe mir 
ein modifiziertes File runter geladen, einen Programmer für den parallel 
Port mit einem 74HC244 aufgebaut und mit PonyProg mein Glück versucht. 
Glück, weil ich mit der Programmierung von µProzessoren und der 
Bediehnung von PonyProg keinerlei Erfahrung habe.
Lange Rede kurzer Sinn, irgendwie habe ich die Originalfirmware bei der 
Aktion gelöscht und bekomme jetzt nichts mehr übertragen, auch den 
Bootlader nicht.
Könnte mir irgend jemand gegen einen Unkostenbeitrag den Amega mit der 
Webserver Software programmieren? Für die feste Anwendung für die ich 
ihn benötige wird mir das zu aufwendig jetzt zu prüfen ob mein 
Programmer i.O. ist und mich intensiver mit der Software zu 
beschäftigen.
Für eine Antwort bin ich vorab dankbar.

von RoBue (Gast)


Lesenswert?

-> Probleme mit MAC (Software Radig/RoBue)

Hallo Georg,
dazu kann ich z.Z. nichts sagen, da ich bisher die Adresse nicht 
geändert habe. Ich merke mir das Problem mal vor, aber ich habe z.Z. zu 
viele Baustellen (z.B. Steuerung über Webinterface), um das gleich 
anzugehen. Vielleicht kann auch sonst jemand weiterhelfen ?

Es freut mich, dass das Einarbeiten in den Radig-Code und das 
Kommentieren einigen weiterhilft.

Gruß RoBue

von Gast (Gast)


Lesenswert?

Hallo,

der Tipp mit der Kamera war super!! Aber kann man nicht auch eine 
normale Kamera dort anschliesen ohne den MAX232-Chip zu entfernen?

Ich will also nur das Video Signal verarbeiten und weiter senden ( 
Abfragen )
hat da nicht noch einer eine Idee wie man das machen kann!

Gruß Gast

von NET-IO-Fan (Gast)


Lesenswert?

Hallo Gast (der mit der Kamera),

die Phillips-Kamera wird seriell angesteuert (RS232 aber 5V Pegel).
Die Software des Webservers ist speziell für diese Kamera ausgelegt.
Ich denke die Aufbereitung eines Videosignal mit dem AVR-Controller ist 
zu aufwändig.
Nimm lieber die Phillipskamera! (5 Euronen bei Ulrich Radig)

von Christian D. (stettberger)


Lesenswert?

@Georg (wegen ethersex geht nicht mit der firmwarebuilder config)

du hast die nach dem builden runtergeladen, nach .config kopiert ( das 
ganze mit der aktuellen git verseion), einmal make menuconfig aufgerufen 
( damit die .config in die autoconf.h uebertragen wird?

Was kommt dann genau fuer ein fehler? Koenntest du des mal in 
$paste-service reintun? Weil der Firmware-builder eigentlich immer mit 
der aktuellen git version Arbeitet.

grusz didi

von Stefan M. (stefan-muehlbauer)


Lesenswert?

Hallo zusammen,
ich wollte nun auch mal einen DS1820 an das Pollin Board anschließen.
Ich habe eure Hex Datei zum Auslesen der Adressen auf einen neuen ATMEGA 
32 geladen, die Fuse gesetzt und zwei DS1820 an Port PA7(AC4) 
angeschlossen, hab auch schön einen 4,7K Wiederstand zwischen 5V und PA7 
angeschlossen.
Über die Serielle Schnitstelle kann ich folgendes sehen

1-Wire-Reader:
No Sensor found

No Sensor found wiederholt sich regelmäßig

An was kann es liegen, das keine Adresse zurück kommt?

Gruss
Stefan

von Clyde H. (clyde)


Lesenswert?

Hallo zusammen,

kann mir jemand mal sagen, welche Compiler Version genutzt wird?
Ich habe WinAVR und auch AVR-Studio auf den neusten Stand gebracht, aber 
ausser Fehlermeldungen ernte ich nix...(no rule to make Target beim 
Notepad und no such file or Directory bei AVR studio)

Ich krieg es einfach nicht auf die Kette und glaub ich steh im Wald...

Hilfe!!! :-(

Gruß
Clyde

von DirkG (Gast)


Lesenswert?

@Clyde ma vom Sourcepfad ausgehend die Directory ´hexfiles´ , ohne
Akzent erstellen, dann geht !!

Gruß DirkG

von Clyde H. (clyde)


Lesenswert?

Würdest Du mir verraten, wo genau?

Danke!
Gruß
Clyde

von Stephan G. (son)


Lesenswert?

Ist jemandem schonmal aufgefallen, dass das Board nur "bootet", wenn das 
serielle Kabel angeschlossen ist? Oder hab ich mir den code zu sehr 
verwurschtelt??

von Gast (Gast)


Lesenswert?

Hallo,

ich kann Georgs Feststellung nur bestätigen.  Wenn man die MAC im 
config.h ändert, reagiert das NET-IO Board nicht mehr auf Ping und nicht 
mehr auf HTTP-Anfragen.  Ping habe ich sowohl von PC aus wie vom Net-IO 
aus probiert.

Wenn man sich die Pakete im Netz (mit Wireshark) ansieht, sind durchaus 
ARP-Anfragen und Antworten zu finden zum Übersetzen von MAC in 
IP4-Adresse.  Die ARP-Tabellen sowohl im Net-IO-Board als auch in den 
beteiligten Routern und PCs bleiben bzgl. der Gegenstelle leer.  Was 
mich v.a. wundert, ist, dass insbesondere die ARP-Tabelle im Net-IO 
völlig leer bleibt!

In stack_init() werden die Adressen (IP, MAC, Gateway-IP, Netmask) aus 
dem EEPROM initialisiert. Selbst wenn ich die Zeilen auskommentiere, 
ändert sich nichts (d.h. das Board antwortet weiterhin nicht).

von NET-IO-Fan (Gast)


Lesenswert?

Hallo Stephan Gross,

Quatsch - das Board geht auch ohne serielles Kabel.
Eigentlich brauchst Du nur eine Stromversorgung (mind. 8 V bei normalem 
7805-Regler).
Mit einem Netzwerkkabel kann man dann auch über ethernet auf das Board 
zugreifen ;-).

Gruß

von Stephan G. (son)


Lesenswert?

NET-IO-Fan wrote:
> Mit einem Netzwerkkabel kann man dann auch über ethernet auf das Board
> zugreifen ;-).

ja, ist mir klar. Habe nur gestern Abend die Beobachtung gemacht, dass 
ich bei abgezogenem RS232-Kabel kein Lebenszeichen bekomme, kein 
Netzzugriff, keine Anzeige im LCD...

Ich vermute ja mal Fehler in meinem code, nur erschliesst sich mir 
nicht, was da schief sein kann...könnte auch das LCD sein... hmmm

von Bernhard M. (bernhard84)


Lesenswert?

Hallo Zusammen!

Ich würde mich auch für das Board interessieren.
Allerdings gibts das zur Zeit bei Pollin nicht mehr und laut deren 
Aussage wissen die auch nicht, wann es das wieder gibt.
Hat jemand eine Idee, wo ich das sonst herbekommen kann? Evtl. will ja 
jemand seines verkaufen?

Bernhard

von Markus H. (haniham) Benutzerseite


Lesenswert?

Wieso sollte es das nicht mehr geben?
Also ich hab meinen vor einer Woche erhalten und beim pollin steht der 
immer noch drin --> Bausätze

von Bernhard M. (bernhard84)


Lesenswert?

das ist ja schön :-)
der steht dann aber erst wieder seit kurzem drin. gestern war er nicht 
drin und heut morgen auch nicht.

von Markus B. (licher)


Lesenswert?

Hallo Zusammen.
Habe auch das Board von Pollin, die Software AVR-NET-IO_RoBue_V1.2.zip 
drauf, die main.c vom 25.11.2008 drin soweit geht alle super nur möchte 
ich den Intervall beim Temperaturmessen von einer Min auf 15 sec ändern.
Irgendwie stehe ich wie der Ochs vorm Berg über ein Tipp wäre ich 
dankbar.

von Klaus R. (ruebi)


Lesenswert?

Bernhard Mayer wrote:
> der steht dann aber erst wieder seit kurzem drin. gestern war er nicht
> drin und heut morgen auch nicht.

28.11.2008 17:52: Wieviele bräuchtest Du denn? Reichen Dir nicht die 
derzeit lieferbaren 783 Bausätze? :-)

von Rolf D. (mudman)


Lesenswert?

@Georg (Gast)
Ich habe im Source von Radig, nach meinen Änderungen, auch "meine" MAC 
eingestellt. Bei mir geht alles bestens, auch wenn ich die MAC mal 
ändere.
Woher nimmst du die MAC, die du in den NET-AVR flashen willst denn her?

von RoBue (Gast)


Lesenswert?

Hallo licher

-> kürzerer Messintervall

Also der Schlüssel liegt in main.c bei der Abfrage der Sekunden:
ss == 55 -> Auslösen des Messvorgangs
ss == 58 -> Auslesen der Werte, die in ow_array abgelegt werden.
ss == 00 -> Abfrage der Schaltbedingungen (ab Version 1.3, bisher nur 
Versuch)

Ich hatte das Intervall schon verkürzt, bekam aber dann Probleme mit der 
Webabfrage. Sie blieb immer wieder hängen. Ob es da einen direkten 
Zusammenhang gab/gibt, ist mir nicht klar. Probiers einfach aus. Du 
musst aber auf jeden Fall 1 Sekunde (eig. 750ms) für den Messvorgang 
einplanen, bevor Du die Messwerte auslesen kannst.

Viel Erfolg und Gruß, RoBue

von MAC (Gast)


Lesenswert?

@Rolf
Die MAC steht auf einem Aufkleber im Bausatz und entspricht auch der MAC 
der original Pollin-SW

von Werner B. (werner-b)


Lesenswert?

Meiner Erfahrung ...

Das Pollin Board funktioniert mit dem Radig Code, aber nicht immer 
zuverlässig. Wenn mit WinAVR20080610 (oder dem altuellen Beta3) 
compiliert kommt es zu Hängern.
Auf meinem Linux habe AVR-GCC 4.2.2. Mit diesem Compiliert gibt es "Null 
Problemo".
Die erste Vermutung sind Stack Probleme wenn auf lokale Variablen mit 
Pointern zugegriffen wird, bzw. Pointer auf lokale Var. an 
Unterprogramme übergeben werden (bei optimiertem Code). Ich werde am WE 
versuchen das in einem kleinen Beispiel zu reproduzieren, der WebServer 
ist dazu zu umfangreich.

Abgesehen davon.
Wenn ihr in zentralen Header-Files etwas ändert ist es am besten danach 
erst ein "make clean" zu machen.

von crazy horse (Gast)


Lesenswert?

so, auch mal ein paar gekauft, Version vom 18.11.2008 - komplett 
problemlos (ausser dass ein Widerstand fehlte, damit kann ich leben:-))
Änderungen: Reset-Taster und Kondensator für Vref verbaut.
Stromversorgung direkt aus einen 5V-Netzteil, wird kaum was warm.
Grösse stört mich ein wenig, aber ok.
Ich werde wohl ein paar von den Dingern hier im Haus verbauen, u.a. will 
ich auf Heizung und Solaranlage schauen, evtl. Gas/Wasser/E-Zähler mit 
erfassen.
Habe mich noch gar nicht weiter mit der Software beschäftigt - die SPI 
ist jedenfalls schon ganz schön zugestopft mit der Kommunikation zum 
ENC...
Ob ich da noch den MPC2515 und ne SD-Card zeitmässig reinbekomme..., mal 
schauen.
Ansonsten ist das Ding wirklich zu empfehlen, insbesonders die Qualität 
der Platine macht einen durchaus soliden Eindruck.
EMV-mässig dürfte sie durchfallen, aber ist ja ein Bausatz :-)

von crazy horse (Gast)


Lesenswert?

achso, ja, was ich eigentlich sagen wollte - sind ja etliche wirklich 
nützliche Infos in diesem trööt enthalten, neben ner ganzen Menge Müll. 
Alles zu lesen hat man gut zu tun...
Vielleicht könnte man das ja mal etwas verdichten...

von mentox (Gast)


Lesenswert?

Hallo zusammen,

kann man statt 9V ~ auch 9V = Spannung anlegen?

habe kein Netzteil mit Wechselspannung :-(

MfG Mentox

von Hobbyloet (Gast)


Lesenswert?

@mentox (Gast)

Lesen und Suchen hilft dir weiter!

Dein kleines Problrem ist schon beschrieben worden.

von mentox (Gast)


Lesenswert?

Hallo,
gesucht hatte ich schon einwenig. Habe jetzt ne schoene zusammen Fassung 
vom Board gefunden.
http://www.mikrocontroller.net/articles/AVR_Net-IO_Bausatz_von_Pollin

Habe gerade ein Steckernetzteil mit 5V 600mA (normalisiert) gefunden.

kann ich das nicht nutzen und schmeisse den ganzen Spannungswandler kram 
raus?

Mich verwirren nur die AUssagen das dann komische Muster auf der Leitung 
sind und ähnliches.

Bitte klärt mich auf :-)

Danke
Gruesse Mentox

von Stefan M. (stefan-muehlbauer)


Lesenswert?

Hallo zusammen,
manchmal tut Dummheit schon weh. Wenn man lesen kann ist man klar im 
Vorteil. Wenn im Datenblatt Button View steht sollte man auch von unten 
auf die Pins schauen nicht von oben. Aua. DS1820 umgedreht jetzt kommen 
auch die Daten.

Gruss
Stefan

von mentox (Gast)


Lesenswert?

Nachlangem lesen hier im thread hab ich leider noch nicht 100%ig 
verstanden wie ich jetzt eigene software auf den atmel bekomme.

also wenn ich es richtig verstanden habe brauche ich zwingend einen 
programmer .. und zb ponyprog zum schreiben. da brenne ich das 
sogenannte hex file rein .. ist das richtig?

geht der hier? http://www.lancos.com/e2p/betterSTK200.gif
die pins sehen gut aus wenn ich das richtig verstanden habe.

kann ich auch ohne programmer eigenen code einspielen. zb den jumper auf 
prog. stellen und per serial ..

muss ich den atmel dann aus dem sokel jedes mal raus nehmen oder wie ..

irgendwie hats bei mir noch nicht klick gemacht .. schade eigentlicha 
ber leider ist es so ..

mfg mentox ..

von Clyde H. (clyde)


Lesenswert?

Huhu,

bei mir klappt es. Sowohl Radig Original als auch RoBue inkl. 4bit 
LCD...
Hatte wohl ein paar sachen vermurkst weil ich auch mit AVR Studio rum 
hantierte... Nun bleibe ich erstmal beim PN(evtl. hat ja jemand das 
Projekt portiert auf AVR-Studio, ich ernte nur Fehlermeldungens....)

Jetzt werde ich damit erstmal spielen und gucken, ob OW funktioniert und 
dann von SimonK mal das T6963-Source auf meinem Display probieren.

Wie sieht es eigentlich mit DCF77 aus? Meint ihr das gibt konflikte mit 
der Software wegen Interupt usw oder hat das schon jemand erfolgreich 
eingebunden? Habe das DCF77 Modul vom C hier und auf ner anderen 
Hard/Software am laufen und würde es gerne übernehmen.
Dafür könnte man die Ntp Source ja rauswerfen...gibt platz.
Ebenfalls sollte man bei Platzproblemen(Flash) evtl. mal die Webpage 
etwas abmagern(Pseudo-LED Anzeigen usw. entfernen...)

Naja, erstmal basteln... :-)


Gruß
Clyde

von RoBue (Gast)


Lesenswert?

Hallo AVR-NET-IO und 1-Wire Fans:

Bin jetzt einigermaßen mit Version 1.3 fertig.

Man kann jetzt über die Webseite die Einschalttemperatur zwischen 5 und 
30 Grad einstellen.

Sehts Euch an und probiert herum (müsste noch starke 4 Stunden gehen):

http://91.20.127.62:44444

Sourcen kommen noch, wenn die gröbsten Fehler dann beseitigt sind.

Viel Spaß und viele Grüße, RoBue

von DirkG (Gast)


Lesenswert?

Hallo RoBue,
Biste wieder offline ?
Der Server unter 91.20.127.62 braucht zu lange, um eine Antwort zu 
senden
Auch von mir mal ein Dank für Deine großartige Arbeit.
Natürlich auch den anderen.
Gruß DirkG

von RoBue (Gast)


Lesenswert?

Sorry, Strom war weg. Router musste sich neu einwählen.

-> http://91.20.77.227:44444

Gruß RoBue

von TypeR (Gast)


Lesenswert?

Hallo,

mein Board funktionierte auf Anhieb.
TCP/IP und RS232 sind funktional.

Mein Problem:
Da ich mich noch nicht mit der Programmierung und vor allem der nötigen 
Hardware-Varaussetzungen auskenne, habe ich viel Tutorials gelesen und 
soweit es ging nachvollzogen.
Leider stecke ich jetzt fest.
Eigentlich möchte ich mit Telnet über DOS programmieren, aber da werden 
nur port 1-1024 zugelassen. Ergo möchte ich in der Firmware den Port 23 
eingestellt haben.
Was muß ich tun und evtl. kaufen, damit ich das erreichen kann.

Ich weiß Ihr habt eine Lösung oder Anleitung für mich!

Danke

von komet16 (Gast)


Lesenswert?

Hallo alle zusammen!

So bin jetzt etwas weiter das mir vielleicht hir geholfen werden kann!

Habe bei mir einen Temperatur Sensor PT100 angeschlossen aber irgend wie 
kommt an den Board nichts an!

Wo habt ihr den Temperatur Sensor angeschlossen?

Habe auch hir schon alles gelesen Webserver zur Temperaturmessung aber 
bin mir nicht sicher ob das auf den normalen Pollin-Board auch läuft!

Aber ihr habe ja auch schon Temperatur messungen am laufen!

Und zwar habe ich meine PT100 an dem ADC 1 an GND und dann an 5V 
angeschlossen aber da passiert nichts! Da habe ich woll was falsch 
gemacht!

Also mich würde intressieren wo die Temperatur Sensor angeschlossen 
werden muß?

Viel leicht  kann mir dort einer Helfen!

Danke schon mal!

Gruß Thorsten

von Jochen R. (josch90)


Lesenswert?

Du weist schon, dass da ein Strom fließen muss?
D.h. du musst den PT100 mit einem Wiederstand in Reihe schalten und die 
Spannung über dem PT messen

von komet16 (Gast)


Lesenswert?

Hallo Jochen Rösch,

nein das wuste ich noch nicht!

Bin nicht so gut in der Technik!

Kannst du mir noch den Tipp mit dem Wiederstand etwas genau erklären?

Gruß Thorsten

von Jochen R. (josch90)


Lesenswert?

Ok, ich erklär dir mal das Grundprinzip,
ich hoffe ich werd jetzt hier nicht gesteinigt weil ich vom Thema 
abweiche...

Der PT100 verändert seinen Widerstand in Abhängigkeit von der 
Temperatur, Schaltest du ihn nun mit einem anderen Widerstand in Reihe, 
fließt durch dein PT10 ein Stromm, erhöht sich nun der Wiederstand, 
sinkt der Strom und die Spannung am PT erhöht sich (I=U/R). Diese 
Spannung kannst du nun mit dem ADC auswerten. Benutz mal die Suche, da 
findest vlt genauere Infos

von crazy horse (Gast)


Lesenswert?

aber mit dem PT100 direkt am Eingang wird das eher nicht viel 
sinnvolles.

von komet16 (Gast)


Lesenswert?

Danke habe zwar schon gesucht aber ich werde es noch mal Probieren!

Danke erstmal hat mir geholfen!

Gruß Thorsten

von Clyde H. (clyde)


Lesenswert?

Hi,

wie habt Ihr eure OW-Sensoren DS18S20 angeschlossen?

In meiner bisherigen Schaltung, habe ich 1k Pullup ohne Parasite Power 
und es läuft recht zuverlässig.
Am AVR-NET IO kommt nix...
Ich habe natürlich meine RomCodes in die Source eingetragen, aber evtl. 
gibts ja besondere Feinheiten.

Im Webintrface bekomme ich 0,0 angezeigt obwohl sie funktionieren...

Leider ist der Funktionierende Code in CodeVision und somit nicht 
portierbar(für Anfänger wie mich).

Gruß
Clyde

von Peter N. (wep)


Lesenswert?

@ TypeR
Vielleicht schreibst du noch dazu welche Programmiersprache du 
verwendest und warum du DOS verwendest?

von Tobias B. (gizmore)


Angehängte Dateien:

Lesenswert?

mentox wrote:
> http://www.mikrocontroller.net/articles/AVR_Net-IO_Bausatz_von_Pollin

Danke. Vielleicht schaffe ich es damit doch noch, eine der beiden 
AVR-Net-IO einzusparen. Ich benötige 16 digitale Ausgänge und 16 
digitale Eingänge.

> Habe gerade ein Steckernetzteil mit 5V 600mA (normalisiert) gefunden.
> kann ich das nicht nutzen und schmeisse den ganzen Spannungswandler kram
> raus?

Klar geht das. Ich persönlich habe den DC-DC Wandler vom C***r*d mit 3A 
genommen. Da hängen jetzt 2 AVR-Net-IO und ein DL-624+ dran. Das Ganze 
ist in einem schönen Koffer und gibt eine Zündvorrichtung für 
Großfeuerwerke mit 64 Kanälen. Die Stromaufnahme bei 12V liget bei 
600mA.

> Mich verwirren nur die AUssagen das dann komische Muster auf der Leitung
> sind und ähnliches.

Wie ist das denn gemeint?

von Korinthenkacker (Gast)


Lesenswert?

>C***r*d
meintest du etwa C**r*d?

von mentox (Gast)


Angehängte Dateien:

Lesenswert?

so habe jetzt nen einfachen progger bebastelt .. mit fligender 
verdrahtung. progpony kann schon mal das device auslesen :-)

@ Tobias Born: irgend wo oben sdand das das da dann brummen oder so 
entsteht?! .. was genau muss ich denn tun bzw beachten um auf 5v 
umzustellen ?!

danke und gruss mentox

von mentox (Gast)


Lesenswert?

hiho
super...
haben eben test weise mal das Webserver_MEGA32.hex aus dem 
AVR-NET-IO_RoBue_V1.2.zip gebrannt. funzt auf anhieb.
dadrauf kann ich jetzt auf setzen .. danke fuer die gemeinschafts arbeit 
die hier im thread schon gelestet wurde.

jetzt stellt sich die frage der entwicklungs umgebung.
ich wuerde am liebsten was haben was unter linux laeuft. was koennt ihr 
da empfehlen?

fuer win gibts ja winavr bzw avrstudio

mfg mentox

von Andreas K. (ergoproxy)


Lesenswert?

@ Tobias Born
Pass in der Nähe von Flughäfen und Bahnhöfen mit deinem Koffer besser 
auf ;) und irrer Tread.

p.s. Das muss jetzt sein ^^ 900er Post.

Gruß ErgoProxy

von stesie (Gast)


Lesenswert?

@mentox
wg. Entwicklungsumgebung, schau' Dir vielleicht mal Kontrollerlab an 
(http://www.cadmaniac.org/projectMain.php?projectName=kontrollerlab), 
das erinnert auch an das AVR-Studio.  Ansonsten gibt's noch ein 
Eclipse-Plugin, ich persoenlich bevorzuge ab GNU Emacs ^^

cheers
  stesie

PS: Ethersex kann jetzt Onewire-Temperaturen auslesen (mit automatischer 
Discovery) und im Webinterface anzeigen, auch grafisch, siehe 
http://ethersex.de/files/onewire-svg.png -- die Grafiken werden mittels 
SVG und JavaScript direkt im Browser erstellt.

von DirkG (Gast)


Lesenswert?

Für alle mit den MAC-Problemen : Hatte ich auch, aber
das ist nunmal nur die Faulheit. "make clean" vergessen !
Dann klappts auch mit dem Nachbarn (MAC)
Gruß DirkG

von Georg (Gast)


Lesenswert?

Hallo erstmal,
An Christian D. (stettberger)
dein Tip mit den aktuellen Sourcen hat bei mir gezündet! Habe die 
aktuellste ethersex-sourcen nochmal runtergeladen und siehe da ich 
kriege auch ein "make menuconfig" hin und anschließend mit make auch ein 
Hexfile zustande. Nach einigen Versuchen habe ich auch eine 
Konfiguration (und zwar nur eine) gefunden bei der ein Ping 
funktionierte. Soweit so gut.
Nur das was hier bei RoBue alles entstanden ist, ist wenigstens so 
dokumentiert das ich das verstehe und meine Änderungen rein bekomme.
(Erinnerung ich brauche nur eine telnetartige Verbindung über die ich 
Kommandos an das Board schicken kann, dann noch ein paar PWM-Ausgänge 
mit denen ich LED-Ketten dimmen will). Das läuft auch schon in der 
RoBue-Version. Leider zickt ein Netzwerk wenn es zwei Boards mit 
identischer MAC findet!

Dann an  Rolf D. (mudman)
Die weltweit einzigartige MAC-Adresse liegt beim Pollin-Board jedem 
Bausatz bei! Ich hatte bei Radig in den Sourcen gestöbert und keinerlei 
unterschied im c-code-file enc28j60.c zu der RoBue-Version gefunden und 
gleich aufgegeben. Ich habe gerade Radigs newStack1_1_2 runtergeladen, 
nur im Moment geht noch garnichts.

Also ich bleibe bis auf weiters bei der RoBue Version und hoffe ich oder 
jemand anderes findet heraus wie man seine MAC da rein kriegt.

Vielen Dank noch mal an RoBue und an alle die an den hier 
veröffentlichten Sourcen gearbeitet haben!

Linux:
Ah ja da war noch ein Linux-Fan der die tool-chain für Linux sucht: 
Unter Debian oder Ubuntu solltest Du einfach alles installieren was mit 
dem avr zu tun hat (dann sollte der Compiler Befehl avr-gcc zur 
Verfügung stehen). Dann das Paket uisp (ich habe diesen Programmer 
genommen es gibt da wohl noch andere Phony... oder so ähnlich) falls 
noch nicht automatisch installiert auch noch installieren. Dann in einer 
Kommandoshell einfach in das Verzeichnis mit den Sourcen z.B. denen von 
RoBue wechseln und den Befehl "make" eintippen. Das Flaschen geht mit 
dem Befehl "uisp" über einen ganz einfachen LPT-Adapter (4 Pins in Serie 
mit 4 Widerständen an den ISP-Anschluss des Boards.) Wenn Details 
gewünscht sind dann mal melden, denn uisp benutzt offensichtlich andere 
LPT-Pins als sonst üblich.


Gruss Georg

von Georg (Gast)


Lesenswert?

Hallo DirkG
Super! make clean hat endlich mein MAC Problem beseitigt!
Aber von wegen faul ich habe einige Tage alles möglich ausprobiert!
Aber egal das wars:

Danke!!!!!

Georg

von DirkG (Gast)


Lesenswert?

Ich meinte nicht das Du faul bist, ich war es !
Prima das ich weiterhelfen konnte
Gruß DirkG

von Tobias B. (gizmore)


Lesenswert?

mentox wrote:

> entsteht?! .. was genau muss ich denn tun bzw beachten um auf 5v
> umzustellen ?!

Also ich habe eigentlich nur den 5V Spannungsregler wieder ausgelötet 
und die 5V direkt an den 5V Klemmen angeklemmt. Natürlich können auch 
die Graetz, C2 und C3 weg.
Wenn man ein Schaltnetzteil oder eines mit einer vernünftigen 
Stabilisierung nimmt, dann dürfte da eigentlich nichts brummen.

@ Andreas K.
Einen Großfeuerwerker mit Erlaubnis - un Befähigungsschein nach 
Sprengstoffgesetz wird man sicher nicht sein Arbeitsmaterial weg nehmen. 
Trotzdem ist es eine gute Idee, die Dokumente mitzunehmen, wenn man den 
Koffer dabei hat. :-)

von Tobias B. (gizmore)


Lesenswert?

Da fällt mir gerade ein:

Hat jemand schon mal ein Meßgerät für die Windgeschwindigkeit mit dem 
AVR-IO gebaut?

von Georg (Gast)


Lesenswert?

Hallo Tobias Born (gizmore)

wenn du ein kleinen DC-Motor mit aufgestecktem Propeller in den Wind 
hältst erzeugt der eine geschwindigkeitsroportionale Ausgangsspannung, 
die kannst du mit dem AVR direkt messen. Du solltest nur 5Volt nicht 
über steigen.

viel Spass
Georg

von Tobias B. (gizmore)


Lesenswert?

Georg wrote:

> wenn du ein kleinen DC-Motor mit aufgestecktem Propeller in den Wind

Ja schon. Nur muß ich den in den Wind drehen. Gibt es vielleicht so 
etwas schon fertig, was man nicht in den Wind drehen muß (so ein Teil 
mit diesen offenen Halbkugeln) oder ähnliches irgendwo zu kaufen. (Keine 
Mondpreise)

von S. N. (Firma: flipdot hackerspace kassel) (snafu)


Lesenswert?

Moin,

gibt es jemand, der ein HEX-Image für das Board hat, so dass darauf 
Telnet läuft? Habe das im Thread immer nur als Möglichkeit gelesen..

Ich möchte das (bereits funktionierende) Bord lediglich dazu verwenden, 
um darüber auf einen weiteren seriell angeschlossenen Controller 
zuzugreifen.

Danke für die Mühe der Antwort
snafu

von Clyde H. (clyde)


Lesenswert?

Hallo zusammen,

nachdem bei mir soweit alles läuft, auch die 1Wire sensoren(bei mir 4 
Stück). Nun wollte ich aus dem Elektro ATM18 Projekt gerne die 
Relaiskarte mit einbinden, da nur 2 Datenleitungen benötigt werden...

Nachdem ich die .c/.h integriert habe und auch die entstandenen 
Fehlermeldungen(Elektor macht ja mit CodeVision) compiliert WinAvr ohne 
probleme, aber leider ohne Funktion. Die LED´s rühren sich nicht. Auf 
dem Originalen Projekt funktioniert die Schaltung, so das ich ein 
elektronisches Problem ausschliessen kann.

Hat einer sowas schon gemacht und kann mir helfen?

Gruß
Clyde

von mentox (Gast)


Lesenswert?

HI,

leider kann ich kein make aufrufen :-(

bzw meldet es eine fehlermeldung.

unter ubuntu 8.10 mit allem was avr heisst :-)


hier die ausgaben...
-------- begin --------
avr-gcc (GCC) 4.3.0
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is 
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.

make: *** Keine Regel vorhanden, um das Target 
»Hexfiles/Webserver_MEGA32.eep«,
  benötigt von »all«, zu erstellen.  Schluss.
mentox@mars:~/neues_avr$

davor einige von den hier aber alle ohne fehler

set -e; avr-gcc -MM -mmcu=atmega32 -I. -g -Os -funsigned-char 
-funsigned-bitfields -fpack-struct -fshort-enums -Wall 
-Wstrict-prototypes -Wa,-adhlns=main.lst  -std=gnu99 main.c \
  | sed 's,\(.*\)\.o[ :]*,\1.o \1.d : ,g' > main.d; \
  [ -s main.d ] || rm -f main.d


hat jemand eine idee wieso der nicht das hex file erstellen kann .. bzw 
auch nicht das eep krams ?!

danke mentox

von mentox (Gast)


Lesenswert?

habe mich jetzt mal mit makefiles beschaftigt..

habe % durch $(TARGET) ersetzt. jetzt komme ich weiter.

habe dann manche <config.h> durch "config.h" oder "../config.h" ersetzt.

dann kabe ich noch um weiter zu kommen im makefile hard
CFLAGS += -std=gnu99
durch das
CFLAGS += -std=gnu99 -D__AVR_ATmega32__
ersetzt.

jetzt komme ich bis hier her...


mentox@mars:~/neues_avr$ make
makefile:381: Warnung: Die Befehle für das Ziel 
»Hexfiles/Webserver_MEGA32.o« werden überschrieben
makefile:369: Warnung: Alte Befehle für das Ziel 
»Hexfiles/Webserver_MEGA32.o« werden ignoriert

-------- begin --------
avr-gcc (GCC) 4.3.0
Copyright (C) 2008 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is 
NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.

avr-gcc -g -Os -funsigned-char -funsigned-bitfields -fpack-struct 
-fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=main.lst  -std=gnu99 
-D__AVR_ATmega32__   -c -o main.o main.c
avr-gcc -g -Os -funsigned-char -funsigned-bitfields -fpack-struct 
-fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=usart.lst 
-std=gnu99 -D__AVR_ATmega32__   -c -o usart.o usart.c
avr-gcc -g -Os -funsigned-char -funsigned-bitfields -fpack-struct 
-fshort-enums -Wall -Wstrict-prototypes -Wa,-adhlns=stack.lst 
-std=gnu99 -D__AVR_ATmega32__   -c -o stack.o stack.c
stack.c: In function ‘create_new_tcp_packet’:
stack.c:1144: error: insn does not satisfy its constraints:
(insn 247 142 221 4 stack.c:1121 (set (reg:HI 30 r30)
        (reg/v/f:HI 45 [ ip ])) 8 {*movhi} (nil))
stack.c:1144: internal compiler error: in reload_cse_simplify_operands, 
at postreload.c:395
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html>; for instructions.
make: *** [stack.o] Fehler 1



hat da jemand nen plan .. mein latei in sachen c und make ist erstmal am 
ende .. hier muss ich erst lernen wie es weiter geht :-)

lg mentox

von mentox (Gast)


Angehängte Dateien:

Lesenswert?

hier noch die sourcen die ich dann benutze ...

imgrunde ist es das AVR-NET-IO_RoBue_V1.2.zip nur versucht anzupassen 
das ich es uebersetzen kann :-)

von Andreas S. (akku75)


Lesenswert?

Hallo,
habe jetzt mal mein 4x16 Dislay von Pollin (POWERTIP 1604-A)an den EXT 
gehangen. Benutze hier Kontakt:

EXT      LCD
 1   --> Pin  4 RS
 2   --> Pin  6 E
 3   --> Pin 11 DB4
 4   --> Pin 12 DB5
 5   --> Pin 13 DB6
 6   --> Pin 14 DB7
 7   --> N/C
 8   --> N/C
 9   --> Pin 1 GND
10   --> Pin 2 +5V
GND  --> Pin  5
GND  --> Pin  7
GND  --> Pin  8
GND  --> Pin  9
GND  --> Pin 10

Leider bekomme ich das LCD mit der modifizierten Radig-Software an dem 
Port D nicht zum laufen!

Bitte um einen Tipp!

Gruß
Andreas

von Clyde H. (clyde)


Lesenswert?

Clyde H. wrote:
> Hallo zusammen,
>
> nachdem bei mir soweit alles läuft, auch die 1Wire sensoren(bei mir 4
> Stück). Nun wollte ich aus dem Elektro ATM18 Projekt gerne die
> Relaiskarte mit einbinden, da nur 2 Datenleitungen benötigt werden...
>
> Nachdem ich die .c/.h integriert habe und auch die entstandenen
> Fehlermeldungen(Elektor macht ja mit CodeVision) compiliert WinAvr ohne
> probleme, aber leider ohne Funktion. Die LED´s rühren sich nicht. Auf
> dem Originalen Projekt funktioniert die Schaltung, so das ich ein
> elektronisches Problem ausschliessen kann.
>
> Hat einer sowas schon gemacht und kann mir helfen?
>
> Gruß
> Clyde

Ich Antworte mir mal selbst :-)
Nachdem ich den ganzen Tag auf Fehlersuche war, bin ich darauf gestoßen, 
das bei der Portzuweisung die Bitverschiebungen fehlten um die richtigen 
Ports(Pins) anzusprechen. Warum das bei Codevision nicht notwendig 
ist(oder ich habe es übersehen) weiß ich nicht, aber mit dem GCC klappte 
es jetzt freu

Gruß
Clyde

von Clyde H. (clyde)


Lesenswert?

@Andreas

wo hast Du denn den R/W Anschluss angeschlossen?
Ich habe das nicht weiter verfolgt, weil mein 2x20 Display an PortC 
läuft und später einem GLCD weicht.

Wenn ich das im Debugger(und im Code) heute richtig gesehen habe, wird 
das BusyFlag vom Display gelesen, daran könnte es evtl. hängen...

Gruß
Clyde

von Andreas S. (akku75)


Lesenswert?

@Clyde

R/W habe ich auf Masse, habe ich hier so gelesen!
Wie wird den das BusyFlag vom Display gelesen?

Gruß
Andreas

von Clyde H. (clyde)


Lesenswert?

Hier in LCD.c
1
void lcd_write (char data,char cd)
2
{
3
#if USE_LCD_4Bit
4
  unsigned int timeout = 0;
5
  //Wait until LCD is ready
6
  while ((Read_LCD(0)&(1<<BUSYBIT)) > 0 && timeout++ < 500) {};

da wird aufs Busybit gewartet. Und da dürfte es nach groben Blick evtl. 
hängen...
Nur eine vermutung!

Gruß
Clyde

von Newbee (Gast)


Lesenswert?

Habe das LCD.c für ein anderes Projekt verwendet und R/W auch auf Masse 
gelegt. Aber so läßt sich das BUSYBIT natürlich nicht mehr abfragen.

Also while ((Read_LCD(0)&(1<<BUSYBIT)) > 0 && timeout++ < 500) {};

durch ein wait mit ein paar ms ersetzen.

Grüße Frank

von Rolf D. (mudman)


Lesenswert?

Samuel Brauns wrote:
> Moin,
>
> gibt es jemand, der ein HEX-Image für das Board hat, so dass darauf
> Telnet läuft? Habe das im Thread immer nur als Möglichkeit gelesen..
>
> Ich möchte das (bereits funktionierende) Bord lediglich dazu verwenden,
> um darüber auf einen weiteren seriell angeschlossenen Controller
> zuzugreifen.
>
> Danke für die Mühe der Antwort
> snafu

Die Radig-Firmware reagiert auf "Telnet". Wenn das Modul auf dem Telnet 
Port 23 angesprochen wird, schaltet es der COM-Port "durch".
Und fertige HEX-Files hochladen ist wegen der MAC-Adresse nicht so 
einfach.... die sollte immer einmalig sein.
Hier Beitrag "Re: AVR für wenig Geld im LAN" hatte ich mal 
was gepostet. Damit kannst du es ja mal testen.

von RoBue (Gast)


Angehängte Dateien:

Lesenswert?

Hallo AVR-NET-IO-Fans,
habe nun die Version 1.3 fertig.

Neu:
- Minuswerte bei Temperatursensoren
- Schalten über Temeperatur (2) und Analog (1)
- Einstellungen über Weboberfläche

Zum testen und Spielen:
-> http://91.20.78.243:44444

Liebe Grüße und viel Spaß, RoBue

Über Rückmeldungen würde ich mich natürlich freuen.

von DirkG (Gast)


Lesenswert?

RoBue, du bist ja mal ein Ass ... Danke
Ich kann zwar nicht wirklich alles Deiner Veränderungen gebrauchen, aber 
doch
einen Teil. Selbst habe ist auch einiges beigesteuert, aber nicht 
wirklich etwas was man in eine x.xx Version einbringen könnnte. Daran 
arbeite ich.
Allerdings bin ich beim 644p angelangt unbd habe den 32er Geschichte 
werden lassen...
Gruß DirkG

P.S: Und immmer wieder -> Danke Ulrich Radig etc. für die Vorarbeit und 
den Sourcecode, ohne den wir garnicht so weit wären.

von Blockbuster (Gast)


Lesenswert?

Ja, von mir auch Danke!
Super gemacht!!

von Georg (Gast)


Lesenswert?

Hallo mentox,

deine sourcen (neues_avr) erzeugen bei mir Warnungen und einen Fehler. 
Kannst du denn die Orginal-sourcen von RoBue compilieren?

Ich mußte am makefile nichts verändern um die RoBue-sourcen zu 
compilieren.

(ich habe eine tool-chain unter ubuntu 8.04 installiert)

Gruss Georg

von RoBue (Gast)


Lesenswert?

Hallo,
mein Router trennt z.Z. immer wieder die Verbindung.

Neue Adresse zum Testen von AVR-NET-IO_RoBue_V1.3:
-> http://91.20.100.28:44444
(Ich hoffe, die hält heute (06.12.) noch)

(Natürlich hat die Hauptarbeit Ulrich Radig gemacht! Ich hab nur ein 
wenig dran gedreht und mit anderen Projekten kombiniert.)

Gruß RoBue

von RoBue (Gast)


Lesenswert?

Hallo Tester,
noch ein Versuch mit meiner IP.
-> http://91.20.93.246:44444

Versuchen da irgendwelche Hackies den Router abzuschießen?

RoBue

von Peter N. (wep)


Angehängte Dateien:

Lesenswert?

Hier nun meine "gepatchte" LCD.h für LCDs im 4bit Modus am 
EXT-Anschluss.
Enable hängt an PB0 und die Hintergrundbeleuchtung an PB3...
Der Rest müsste selbsterklärend sein, wenn nicht fragen...
Viel Spaß

von RoBue (Gast)


Lesenswert?

Hallo,
ich gebts auf mit einer IP zum Testen meines AVR-NET-IO.
Sorry.
Irgendwas ist faul. Ständig schaltet der Router ab.

Gruß RoBue

von Peter N. (wep)


Lesenswert?

Da ich es gerade so hübsch gesehen hab:
EXT      LCD
 1   --> Pin  4 RS
 2   --> Pin  6 E
 3   --> Pin 11 DB4
 4   --> Pin 12 DB5
 5   --> Pin 13 DB6
 6   --> Pin 14 DB7
 7   --> Pin  7 RW
 8   --> Hintergrundbeleuchtung
 9   --> Pin 1 GND
10   --> Pin 2 +5V
GND  --> Pin  5
GND  --> Pin  7
GND  --> Pin  8
GND  --> Pin  9
GND  --> Pin 10

von Christian D. (stettberger)


Lesenswert?

@RoBue:

Normal kann jeder Router DynDNS Updates machen, du koenntest dir also 
eine Dyndns addresse anlegen und diese immer aktualisieren lassen, wenn 
sich dein Router neu einwaehlt, das wuerde die Postings in diesem ewig 
langem thread wohl um einige Prozent verringern.

PS: Ein eigenes Forum fuer Megas+Netzwerk waer scho nit schlecht

von Jürgen A. (jad24)


Lesenswert?

Stephan Gross wrote:
>
> Da ich auch noch die Relaiskarte dran hab, hab ich mir den Code wieder
> umgestrickt, auf die entsprechenden Ausgänge.
>

Hallo Stephan,
ich benutze auch die Relaiskarte.
Was muss ich am Code verändern, damit die RoBueV1.3 funktioniert?

Gruß JAD

von Stephan G. (son)


Lesenswert?

die 1.3 habe ich noch nicht angepackt, momentan bin ich dienstlich 
unterwegs und habe die Sachen nicht hier. soweit ich mich erinnern kann, 
die ports in config.h anpassen, wegen dem lcd, welches sonst auf dem 
portc liegt. in der webpage ?? oder http ?? jedenfalls dort, wo die 
schaltvariablen sind, auf portc ändern.

Bin in 2 Wochen wieder da, dann gehts bei mir weiter.....

gruss
Stephan

von RoBue (Gast)


Angehängte Dateien:

Lesenswert?

Hallo son und jad24:
Anbei die veränderten Dateien für LCD an PORTD und PORTC zum Schalten.
Ich hoffe, es funktioniert, da ich gerade keine Lust habe, meine 
Hardwaru umzustricken. Bitte rückmelden, obs klappt (oder nicht).

Gruß, RoBue

von RoBue (Gast)


Angehängte Dateien:

Lesenswert?

Sorry, hab gleich selber noch 2 Fehler gefunden!
Mist!
RoBue

von Jürgen A. (jad24)


Lesenswert?

Hallo RoBue,
die Port's, und somit die Relaiskarte, funktionieren jetzt :-)
SUPER

Jetzt muss ich noch verstehen wie die Temperaturabhängige Schaltung 
funktioniert.

Im Moment schalten einige Ausgänge nach wenigen Sekunden auf ein, weil 
keine Sensoren angeschlossen sind, denke ich.

Gruß Jürgen

von Andreas S. (akku75)


Lesenswert?

@Peter Neumann (wep)
EXT      LCD

 7   --> Pin  7 RW

GND  --> Pin  7


Hallo,

Was macht den dein Display Pin 7 jetzt genau?
Und brauche ich R/W denn unbedingt?
Reicht da nicht immer auf Masse?


Gruß
Andreas

von RoBue (Gast)


Lesenswert?

-> jad24, Nutzung ohne Sensoren:
Entweder Du gehst zurück zur Version 1.2. Der Ausstausch der Dateien 
müsste auch dort funktionieren (?). Oder Du kommentierst in main.c 
zwischen

// RoBue:
// Schalten der Ports durch bestimmte Bedingungen
...
//Wetterdaten empfangen (Testphase)

aus (// vor jede Zeile, oder /* ... */ vor ganzen Block).

In webpage.h kannst kannst Du dann noch die unnötigen Einträge und 
Variablen entfernen (Ausg_D2, ...D3, ...D5).

-> akku75

RW erleichtert das timing der Displays. Theoretisch kann man das schon 
auf Masse legen, aber leider muss man dann Warteschleifen einbinden, die 
je nach Displaytyp variieren können. LCDs sind eine super Sache, aber 
leider nicht ganz problemlos zu programmieren.

Gruß RoBue

von Jochen R. (josch90)


Lesenswert?

Hi zusammen,
hab meinen webserver soweit auch am laufen
http://roesch.hobby-site.org/

allerdings werden mir die Eingänge falsch angezeigt, wisst ihr ob es in 
der Software noch irgendwelche verknüpfungen gibt, die das verursachen?
Außerdem werden die Haken beim setzen von Ports nicht gesetzt (gehen 
also nach dem senden wieder weg) und an den Ausgängen kommt auch nichts 
an...

Ich vermute ja, dass das ganze durch routinen gestört wird, die ich 
eigendlich gar nicht brauche (lcd, wol, etc...)
Ist euch da wasd bekannt?

Gruß

von Erba57 B. (orfix) Benutzerseite


Lesenswert?

Hallo RoBue,
vielen herzlichen dank hat wieder mal super funktioniert.

Hatte anfangs Problem mit der Temp. Einstellung, hab viel Kältespray 
versprüht bis es geklappt hat, hab die Wartezeit nicht berücksichtigt.

Damit man die Aktualisierung besser kontrollieren kann möchte ich auf 
der Webseite bei der Serveruhrzeit auch die Sekunden anzeigen, hab 
leider die Variable nicht gefunden.

Jetzt fehlt nur noch die Temp. Aufzeichnung auf SD Karte auch eine 
Balkenanzeige der Temperaturen wäre nicht schlecht.

Ist eine Email benachrichtigung auch möglich, hab was in der main.c 
gesehen?


Wo kann ich den Default wert „15 Grad C aus“ ändern?

Vielleicht kannst du mir ein paar Tips geben?


Mit freundlichen Grüßen

orfix

von RoBue (Gast)


Lesenswert?

Hi orfix,
freut mich, dass soweit alles funktioniert und Du die Sachen nutzen 
kannst.

-> Uhrzeit ist Variable %TI in webpage.h und in httpd.c.
Ich habe die Sekunden (wie auch andere Dinge, z.B. eMail, Balken) nicht 
eingebaut, weil der Platz sehr eng geworden ist. Außerdem musst Du 
aufpassen, dass bei den Sekundenzahlen (ss) von 0-9 nur eine Ziffer 
augegeben wird. Du musst also eine if-Abfrage einbauen (siehe Minuten, 
mm).

-> Die 15 Grad default-wert kannst Du in main.c ändern:
// RoBue:
// Variablen-Array
// zum Abspeichern verschiedener Werte
// und zum Einfügen in die Webseite %VA@00 bis %VA@19
// VA4-7  -> Analogwert von PORTA4-7
// VA10-13  -> Schalttemperaturen                <<<---- hier
// VA14-17  -> Schaltzeiten ein/aus hh,mm,hh,mm
// VA18    -> Schaltwert analog
// VA-Ende  -> Counter
unsigned int var_array[MAX_VAR_ARRAY] =
{10,50,30,0,0,0,0,0,0,0,15,15,0,0,21,45,22,0,750,0};
                           
                         hier

Gruß, RoBue

von Jürgen A. (jad24)


Lesenswert?

Hi RoBue,
ich arbeite nun daran meinen einzigen Sensor den ich habe einzubinden.
Ich habe ihn mit Digitemp ausgelesen!
_______________________________________________
Searching the 1-Wire LAN
1044A3E900080083 : DS1820 Temperature Sensor
ROM #0 : 1044A3E900080083
Dec 08 20:14:35 Sensor 0 C: 22.88 F: 73.18
_______________________________________________

Wie man sieht zeigt er eine Temperatur von 22,88 °C an.
und eine MAC, daraus habe ich folgendes gemacht und in die config.h 
eingebaut.

0x10,0x44,0xa3,0xe9,0x00,0x08,0x00,0x83

leider funktioniert es nicht....

Den Sensor habe ich mit der DATA-Leitung am Pin 9 des 25-Pol-Steckers 
angeschlossen und die GND-Leitung an GND des Bords.

Was mach ich falsch?

Gruß JAD24

von RoBue (Gast)


Lesenswert?

Hallo JAD24,
wenn Du nichts umgemodelt hast, ist auf jeden Fall der Anschluss falsch:
PORTA7 geht nicht an die Sub-D-Buchse, sondern nur an die blauen 
Schraubklemmen (ADC4 - J17). Dann musst Du noch einen 4,7 (3,3) kOhm 
Widerstand zwischen +5V und PORTA7 (ADC4) legen (einklemmen). Der Sensor 
wird dann an GND und PORTA7 angeschlossen.

Vielleicht klappts jetzt, RoBue

von Jürgen A. (jad24)


Lesenswert?

RoBue wrote:
> Hallo JAD24,
> wenn Du nichts umgemodelt hast, ist auf jeden Fall der Anschluss falsch:
> PORTA7 geht nicht an die Sub-D-Buchse, sondern nur an die blauen
> Schraubklemmen (ADC4 - J17). Dann musst Du noch einen 4,7 (3,3) kOhm
> Widerstand zwischen +5V und PORTA7 (ADC4) legen (einklemmen). Der Sensor
> wird dann an GND und PORTA7 angeschlossen.
>
> Vielleicht klappts jetzt, RoBue

Habe es jetzt mal schnell "umgefriemelt" und es geht! SUPER
Wieder ein Schritt weiter! Das mach Spass! :-)
DANKE RoBue für deine Hilfe.

Morgen geht's weiter.

Gruß JAD

von Reinhard S. (Gast)


Lesenswert?

Mal ein Problem meinerseits:

Ich hab mir die Firmware von Ulrich Radig heruntergeladen, in der 
config.h die IP angepasst, compiliert (WinAVR) & mit PonyProg auf mein 
AVR-NET-IO geflasht. Nur: geht nicht. Keine Reaktion an seriell & LAN.

Mit der ethersex-Firmware funktionierts, also muss es eine 
Software-Geschichte sein. Will die Radig-Ware andere Fuses? Würde mich 
etwas wundern.

 Danke für Antworten :)

von Jürgen A. (jad24)


Lesenswert?

Hallo Reinhard,
schau dir mal die Datei "enc28j60.h" im Verzeichnis "Networkcard" an.
Ändere dort folgende Zeilen ab:

von  #define ENC28J60_PIN_SS    4
     #define ENC28J60_PIN_CS    3

nach  #define ENC28J60_PIN_SS    3
      #define ENC28J60_PIN_CS    4

Das muss man tun wenn man die Pollinkarte nicht umbaut auf die 
"Radigbauweise".

Gruß JAD

von skorpionx (Gast)


Lesenswert?

Auf dem Board ist Chip von Mikrochip!

von Gast_2 (Gast)


Lesenswert?

>Auf dem Board ist Chip von Mikrochip!

Nein, auf dem Board ist ein Chip von Microchip

von kami (Gast)


Lesenswert?

Hi,

wie kann ich nochmal rausfinden welche ID mein DS1820 hat?

Kann ich auch DS1820 Sensoren verwenden oder nur DS18S20?

Wenn ich das LCD an den EXT anschliessen will und die Firmware 1.3 
nutzen will. Gibt es dafür eine entsprechende Anpassung hier im Forum?

@Robue: Könntest du die Firmware noch dahingehend erweitern, das man per 
Telnet die I/O-gänge schalten kann? Sonst echt super Sache und läuft ja 
echt spitzen mässig. :)

Cu kami

von Alex B. (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite


Lesenswert?

<OT>
Gab es schonmal einen Beitrag der die 1000-Post-Grenze überschritten 
hat?
<\OT>

von Jürgen A. (jad24)


Lesenswert?

hallo kami,
ich habe das so gemacht,
lies mal etwas weiter unten auf der Seite:

http://lena.franken.de/hardware/temperaturmessung.html

dort gibt es eine einfache Schaltung und das Programm digitemp.
DS1820 und DS18S20 funktionieren.

Gruß JAD

von mamsoft (Gast)


Lesenswert?

Hallo @ all im forum,
ich möchte nochmal auf die frage im post von neunhundertirgendwas 
zurückkommen.
"wie kann das Modul bei einer änderung am Digitaleingang direkt eine 
Meldung geben?"
50ms müssen für mich nicht in frage kommen allerdings sollte es auch 1s 
nicht überschreiten.
manuelles ständieges abfragen der Eingänge kommt für mich nicht in Frage 
aufgrund der Programm-/Netzwerkbelastung.

hatte sowas in der art gedacht, dass bei einer änderung am D/I das NET 
I/O Modul direkt eine Meldung an eine hinterlegte IP Adresse schickt.
Wie/wo muss/kann ich das im Modul modifizieren?

wäre für die lösung des Problems sehr dankbar

von RoBue (Gast)


Lesenswert?

Hallo kami!

-> LCD an EXT:
Gibt es schon. Siehe weiter oben. Einfach die entsprechenden 
Source-files in V1.3 ersetzen.
http://www.mikrocontroller.net/attachment/43395/LCD_PORTD.zip

-> Erkennung Sensoren:
Es gibt ein hex-file für AVR-NET-IO in den Sourcen der Version 1.3,
das die ID der Sensoren ausliest.
Siehe auch weiter oben:
http://www.mikrocontroller.net/attachment/42669/AVR-NET-IO_1Wire-Sensoren_A7.hex

-> Schalten über Telnet/seriell
Würde ich gerne machen, aber ich blick es keinen Millimeter, wie in der 
cmd-Source Daten von der Eingabe übernommen werden. Ausgabe verstehe ich 
und habe ja auch schon weitere Befehle integriert. Aber wie kann ich 
Werte übergeben?????? Für Hilfen wäre ich dankbar.
(Die Frage wurde übrigends auch schon im Forum von Ulrich Radig 
gestellt, aber bisher wurde keine hilfreiche Antwort verfasst!)

Gruß RoBue

von Reinhard S. (Gast)


Lesenswert?

> Hallo Reinhard,
> schau dir mal die Datei "enc28j60.h" im Verzeichnis "Networkcard" an.
> Ändere dort folgende Zeilen ab:
>
> von  #define ENC28J60_PIN_SS    4
>      #define ENC28J60_PIN_CS    3
>
> nach  #define ENC28J60_PIN_SS    3
>       #define ENC28J60_PIN_CS    4


Hab das geändert, aber mein Problem besteht nach wie vor :-(

von Jürgen A. (jad24)


Lesenswert?

Mein AVR NET-IO läuft jetzt soweit.
Temperaturen werden gemessen und angezeigt.
Eine automatische Aktualisierung habe ich so realisiert in webpage.h:
"<html><head><meta http-equiv=\"refresh\" content=\"5\" text/html; 
charset=iso-8859-1\">\r\n"

Ich probiere nun schon länger an folgendem herum:
Ich möchte mit einem Button eine Temperatur voreinstellen können und 
dann soll bei Unterschreitung der eingestellten Temperatur ein Ausgang 
eingeschaltet werden.

Gruß JAD

von Jürgen A. (jad24)


Lesenswert?

@Reinhard S.

Netzwerktechnisch hast Du alles überprüft?

Gleicher IP-Bereich und so....?

Gruß JAD

von Reinhard S. (Gast)


Lesenswert?

Ja hab ich, IP AVR 192.168.1.99, mein PC 192.168.1.150, sollte also 
klappen.

Seriell hab ich inzwischen hinbekommen, er spuckt mir auch meine 
Einstellungen aus wie es sein soll, Netzwerkmäßig ist aber weiterhin 
alles dunkel.

von Reinhard S. (Gast)


Lesenswert?

Ist es normal das der ENC28J60 bei "VER" Version 0 meldet oder ist da 
irgendwie die Kommunikation fehlerhaft?

von Jürgen A. (jad24)


Lesenswert?

Und wie ist der AVR mit Deinem PC verbunden?
Über einen Switch oder per Crossover?

Gruß JAD

von Reinhard S. (Gast)


Lesenswert?

Über einen Switch. Link-LED´s leuchten, Daten scheinen ab und an auch zu 
fließen.

von Jochen (Gast)


Lesenswert?

@Reinhard S.

Ich habe zwar nicht in den Code von RoBue reingeschaut und eigentlich 
auch mehr mit ethersex am Hut. Aber ich denke ich kann dir etwas 
weiterhelfen.

Wenn im Atmega der SS pin nicht vom Hardware SPI verwendet wird so muss 
er trotzdem als Ausgang geschalten oder mit einem pullup auf high 
gehalten werden. Sonst gehts SPI nicht. Scheinbar wird das nicht 
gemacht.

Jochen

von RoBue (Gast)


Lesenswert?

Hallo jad24,
danke für den Tip mit refresh der Webpage.
Werde ich einbauen. Hatte ich zwar vor, aber immer wieder vergessen.
Muss noch testen was dabei mit den gesetzte "Häkchen" geschieht bzw. 
nicht geschieht.

-> Einschalten ab bestimmter Temperatur:

Entweder Du macht einfach Invertser an die Ausgänge,
oder Du drehst einfach in main.c die Abfrage um:

// Über Temperatur: var_array[10] - Sensor0
    if ( ow_array[0]/10 > var_array[10] ) {
      PORTD |= (1 << PD2); // ein
    }
        else {
          PORTD &= ~(1 << PD2); // aus
    }

Die Temperatur kannst Du ja über die checkboxen in der Weboberfläche 
verstellen bzw. fest in var_array eintragen.

Gruß RoBue

von Reinhard S. (Gast)


Lesenswert?

Der SS-Pin/PB4 dient beim AVR-NET-IO als CS, bei Radig ist er offen.
Radig nutzt dafür PB3, was wiederum beim AVR-NET-IO offen ist.

Also versteh ich das grad nicht da der SS/PB4-Pin bei mir ja gar nicht 
offen ist, sondern PB3. Und das ist allgemein offen da es auf eine 
Steckleiste führt.

Um die Vertauschung PB3/PB4 zu realisieren gabs ja schon das hier:

enc28j60.h:
> von  #define ENC28J60_PIN_SS    4
>      #define ENC28J60_PIN_CS    3
>
> nach  #define ENC28J60_PIN_SS    3
>       #define ENC28J60_PIN_CS    4

Hat aber einfach nix gebracht :-(

von mamsoft (Gast)


Lesenswert?

@RoBue,
zum Problem zur erkennung der Eingänge.
so schwer kann das doch nicht sein. Es muss theoretisch intern jeder 
Eingang nach dem anderen abgefragt werden, ob ein Signal anliegt und 
diesen Zustand dann speichern. Beim ungleich vom Speicherstand muss nur 
die E/ID an eine hinterlegende IP gesendet werden. (Praktisch die 
arbeitsweise einer SPS)

Ist das so möglich oder mache ich da einen denkfehler?

Gruß mamsoft

von RoBue (Gast)


Lesenswert?

Hallo mamsoft,

ich hoffe, wir reden über das gleiche Problem:

Die Sourcen von U.Radig enthalten ein File namens cmd.c. Dies regelt die 
Ausgabe und Eingabe von Anweisungen von dem bzw. an den Webserver. Man 
kann z.B. die IP abfragen und auch ändern. Das lässt sich über RS232 und 
auch über telnet nutzen.

Mein Problem:
Ich habe zwar kapiert, wie man z.B. einen Befehl eingibt und dann auf 
diesen Befehl reagiert wird, so dass irgendetwas ausgegeben wird (z.B. 
die aktuelle IP). Aber ich kapier nicht, WO z.B. die Eingabe einer neuen 
IP abgelegt (Buffer, Array?) und WIE sie dann weiterverarbeitet wird. 
Ich steh irgendwie auf dem Schlauch. Nochmal: Du gibst einen Befehl ein, 
der dann mit einer Tabelle verglichen und ausgeführt wird. Wenn darauf 
nur was ausgegeben wird, ist das kein Problem. Aber wenn zugleich mit 
dem Befehl noch ein Wert oder ein Text eingegeben wird, blick ich nicht, 
wo der landet.

Gruß RoBue

von Werner B. (werner-b)


Lesenswert?

@ Reinhard S.

hast du vor dem erneuten Übersetzen auch zuerst ein
make clean
durchgeführt?

von Jacob R. (jaykopf)


Lesenswert?

@RoBue:

zu Deinem Problem:
also wenn Du eine neue IP über Telnet eingibst, dann wird diese IP in 
den EEPROM geschrieben.
Das ganze geschiet in der Funktion "write_eeprom_ip" die als Parameter 
die Adresse bekommt, an die die IP im EEPROM geschrieben werden soll 
(IP_EEPROM_STORE deklariert in stack.h).
Wenn jetzt die IP wieder ausgelesen werden soll, dann geschiet das mit 
der Funktion "get_eeprom_value" (deklariert in stack.c und zugreifbar 
über stack.h) welche als Parameter wieder die Adresse im EEPROM bekommt 
und einen default-Wert, der zurückgegeben wird falls die IP noch nicht 
in den EEPROM geschrieben wurde. Der Rückgabewert ist dann die IP aus 
dem EEPROM bzw. der default-Wert.

Ich hoffe damit konnte ich Dir helfen.
Falls noch etwas nicht ganz klar ist bzw. ich Fehler gemacht habe, dann 
teilt mir das mit :)

Gruß,
Jacob

von Jochen R. (josch90)


Lesenswert?

Kann mir jemand bei meinem problem helfen, welches ich weiter oben 
schonmal gepostet hab?

von Klaus R. (ruebi)


Lesenswert?

> danke für den Tip mit refresh der Webpage.
> Werde ich einbauen.

Schaut Euch doch mal die Sourcen von EtherSex an: Ist alles drin, ist 
modular, hat all die Bells&Whistles die hier immer wieder nachgefragt 
werden. Und selbst Dinge, an die hier im Thread noch keiner gedacht hat 
sind dort schon längst drin (zB Funk-Unterstützung, um nur mal eine 
zusätzliche Option zu nennen).

Wäre es nicht effizienter und von oftmals schnellerem Erfolg gekrönt, 
wenn sich  alle an einem einzigen Contentbaum austoben und nicht jeder 
sein eigenes Süppchen kocht?

Die Arbeit die sich hier schon einige gemacht haben, möchte ich 
keinesfalls runterreden. Prinzipiell: Hut ab, Klasse! Ehrlich!

Aber warum nicht gemeinsam an EINEM einzigen Repository arbeiten. Hier 
scheint mir insbesondere EtherSex der mit Abstand größte Nenner zu sein 
auf den alle bislang im Hobbybereich verfügbaren und mit einem Atmel 
Prozessor realisierten Mini-Webserver ohne großen Aufwand laufen. Siehe: 
git clone http://git.ethersex.de/

Und die unter uns, die es mit dem Generieren von Code nicht so haben, 
sondern sich Ihr System lieber "zusammenklicken" könnte man über eine 
Erweiterung des bereits vorhandenen FirmwareBuilder 
http://spielplatz.metafnord.de/cgi-bin/firmware-builder2/list.cgi 
sicherlich auch glücklich machen.

Ich habe selbst absolut keine Aktien in EtherSex, EtherApe, Pollin, 
U.Radig,  RoBue oder wie Sie sonst noch alle heißen. Ich find´s einfach 
nur schade, wenn der Einsatz zu unkoordiniert erfolgt. Linux wäre nie 
soweit gekommen, wenn jeder sein eigenes Süppchen gebraut hätte.

Just my2Cent!

von RoBue (Gast)


Lesenswert?

Hallo ruebi,

auf der einen Seite hast Du völlig Recht und ich hätte mir auch gerne 
die Mühe gespart, mich in einen anderen Code einzuarbeiten, um das zu 
ermöglichen, was Ethersex schon lange kann.

Aber für einen Anfänger wie mich hat der Radig-Code einen Riesenvorteil: 
Er lässt sich mit WinAVR compilieren. Und damit habe ich nun mal 
angefangen. Ich habe es mit Ethersex probiert und bin damit immer 
gescheitert. Hilferufe wurden nicht beantwortet oder man wurde 
abgekanzelt, dass man nur zu faul wäre. Wenn es etwas zum 
Zusammenklicken gibt oder/und eine WinAVR-Version rauskommt, steige ich 
gerne ein.

Außerdem habe ich nun sehr viel gelernt, weil ich immerhin einen 
funktionierenden Code hatte, den ich schrittweise verändern konnte. Wie 
gesagt: Das hätte ich gerne auch (oder nur) mit Ethersex so gemacht, das 
ich von den Möglichkeiten her absolut super finde, aber leider s.o. ...

Gruß RoBue

von mentox (Gast)


Lesenswert?

hiho,

so habe das ganze schon ganz gut am laufen ..
bekomme aber 1wire nicht hin :-(

 RoBue oder jemand der es am laufen hat: koennt ihr nicht mal nen foto 
machen wie ihr euer ds1820 angefrickelt habt? ... irgend wie kapier ich 
es besser wenn ich es mal sehe glaub ich :-)

danke und gruss mentox

von jochen (Gast)


Lesenswert?

eines vorweg, ich finds klasse wenn sich jemand damit beschäftigt und 
auch auch seinen code unter der gpl frei gibt. daumenhoch robue (u. 
u.radig ;-)).

> Aber für einen Anfänger wie mich hat der Radig-Code einen Riesenvorteil:
> Er lässt sich mit WinAVR compilieren. Und damit habe ich nun mal
> angefangen. Ich habe es mit Ethersex probiert und bin damit immer
> gescheitert.

das ist richtig, denn ethersex ist von Anfang auf Opensource ausgelegt.
sprich avr-libc, gcc-avr, geda usw. Wenn es jemand anders auch darunter 
ins laufen bekommt - prima - nur können wir das einfach nicht testen 
oder mithelfen, den hier hat keiner mehr ein win im Einsatz. Allerdings 
war jemand auf der Mailingliste der es hinbekommen hat. Aber auch nicht 
mit winavr ;-)

> Hilferufe wurden nicht beantwortet oder man wurde
> abgekanzelt, dass man nur zu faul wäre.

Ich (wir) haben nichts von dir schlecht geredet, tu das bitte auch nicht 
bei uns. Ich kann mich an keine mail erinnern die du an uns geschrieben 
hättest. Vielleicht habe ich sie auch nur übersehen, denn seit dem 
pollin-board is ja nun wirklich die hölle los.

> Wenn es etwas zum
> Zusammenklicken gibt oder/und eine WinAVR-Version rauskommt, steige ich
> gerne ein.

Das denke ich wird nicht passieren, denn ethersex ist in der 
zwischenzeit zu komplex dazu. das wird weiter hauptsächlich unter 
linux/gcc-avr weiterentwickelt. das heisst aber nicht das es nicht auch 
von windows aus angesteuert werden kann.

> Außerdem habe ich nun sehr viel gelernt, weil ich immerhin einen
> funktionierenden Code hatte, den ich schrittweise verändern konnte.

und das ist wie ich finde das wichtigste, lernen damit umzugehen und den 
code verstehen was er tut. Ethersex ist auch nicht über Nacht 
entstanden.

> Wie gesagt: Das hätte ich gerne auch (oder nur) mit Ethersex so gemacht, > das 
ich von den Möglichkeiten her absolut super finde, aber leider s.o.

eben jedem was er eben möchte ;-)

Jochen (zerties.org/ethersex.de)

von RoBue (Gast)


Lesenswert?

Hi ethersexfans und -programmierer,

ich habe nicht Euch beschuldigen wollen, sondern nur beschrieben, wie es 
mir erging, als ich versuchte in der Anfangsphase hier im 
mikrocontroller-net Hilfe zu bekommen (z.B. 
Beitrag "Webserver & 1-Wire").

Letzten Endes musste ich mir also selbst helfen und irgendwo auf 
sicherem Grund beginnen, und da fiel meine Wahl auf WinAVR und 
Radig-Code (und SimonK). Diese Kombination hat als erste funktioniert 
und deshalb habe ich da weitergemacht.

Trotz Firmewarebuilder habe ich noch keine lauffähige Version von 
ethersex zusammenbekommen. (Ist das Programm vielleicht sauer, weil ich 
mich zuerst für den Radig-Code entschieden habe ? ;-) )

Trotzdem werde ich sicher noch mal einen Anlauf nehmen und mich mit 
Eurer Entwicklung auseinandersetzen.

Gruß, RoBue

von RoBue (Gast)


Angehängte Dateien:

Lesenswert?

Hallo mentox,
hier ein Bild von meinem AVR-NET-IO.
Gruß, RoBue

von poahneeh (Gast)


Lesenswert?

@RoBue

Ich vergucke mich doch jetzt bestimmt: Ist das eine Metallplatte auf dem 
der Krempel liegt und auf der du dann sicher auch arbeitest? Da würde 
ich nicht mal mit Gummistiefeln und Neoprenanzug dran arbeiten.

Ich bin zwar nur Hobbybastler, aber was ich hier manchmal so sehe ... ne 
ne ne.

von Reinhard S. (Gast)


Lesenswert?

@Werner-B: Danke, seitdem funktionierts. Ich wunder mich noch ein 
bisschen :)

Leicht OT: Gibts eigentlich auch einen Gigabit-Ethernet-Controller & µC 
der sowas verarbeiten kann?

von RoBue (Gast)


Lesenswert?

Liebe Profis,

sorry, dass ich wohl den falschen Code und Compiler benutzt habe,
sorry, dass ich andern gerne helfen wollte,
sorry, dass ich anscheinend vom Elektronikbasteln nicht viel verstehe,
sorry, dass ich hier mitarbeiten will ...

Können wir uns jetzt wieder um das Wesentliche kümmern:
Programmierung und Weiterentwicklung des AVR-NET-IO?
Da gibt es noch genug Fragen, die auf Antworten oder Hilfen harren.

Gruß RoBue

von Klaus R. (ruebi)


Lesenswert?

OK, ich hab den Mund aufgemacht, nun muss ich auch mit den Konsequenzen 
klar kommen :-)

Halten wir Fest: EtherSex läuft NUR mit GCC !

Da kämen mir gleich drei Möglichkeiten in den Sinn:

1. Knoppix (wohl am einfachsten)
2. cygwin (LINUX-API unter Windows)
3. vmWare mit ner aktuellen Debian-Distribution (vielleicht der 
Overkill)

Oder sehe ich das Problem noch nicht?

von RoBue (Gast)


Lesenswert?

Hallo ruebi,

ich arbeite sehr gerne mit DamnSmallLinux. Es ist kurz und gut. Ist ein 
reduziertes Knoppix. Vielleicht könntet ihr dafür eine Erweiterung (mit 
Anleitung) für ethersex erstellen, die man zuladen kann oder gleich 
integriert, so dass man das Ganze z.B. von CD oder besser von USB-Stick 
booten kann. Das Konzept von DSL ist dafür eigentlich optimal geeignet. 
Ich könnte mir dabei sogar eine Mithilfe vorstellen 8und anbieten), aber 
ich hab den Eindruck dass bei Euch genug Profis sitzen.

Gruß RoBue

von Klaus R. (ruebi)


Lesenswert?

OT: Sorry, hätte ich gerne per PM gemacht,geht jedoch nicht:

Hallo RoBue,

wie schon geschrieben: Ich habe mit EtherSex nichts zu tun, Ehrlich!

Dennoch: Ich werd´ mich gerne mal in das DSL einlesen/einarbeiten. 
Vielleicht schaff ich ja das von Dir gewünschte. Parallel dazu teste ich 
derzeit noch cygwin (was ich ansonsten nicht wirklich mag!!!).

von Erba57 B. (orfix) Benutzerseite


Lesenswert?

Hallo RoBue,
vielen herzlichen dank hat wieder mal super funktioniert dank deiner 
Hilfe.
Hab nun 5 Sensoren http://bauerer.dyndns.org/ über ca. 20m Kabel laufen.

Mit freundlichen Grüßen

orfix

von Roland B. (robue)


Lesenswert?

Hi orfix,
sieht gut aus. Freut mich natürlich saumäßig, dass es so gut klappt.
Weißt Du, wie man den unteren Teil (Schaltbedingungen) an die eigenen 
Bedürfnisse anpasst?

Gruß RoBue

von Erba57 B. (orfix) Benutzerseite


Lesenswert?

Hallo RoBue,

an -> Sensor 0 ist eine led angeschlossen, geht auch bei > 20 grad aus, 
ist ok.
Hab bis jetzt nur ein 2 zeiliges display, hier werden nur 4 Temp. 
angezeigt.
Möchte das Pollin LCD SC1604A, 16x4 Bestellnr. 94-120 572, bestellen 
funktioniert das?
Mein Traum wäre natürlich immer noch die Temperatur Aufzeichnung.


Mit freundlichen Grüßen

orfix

von Roland B. (robue)


Lesenswert?

Hi orfix,
ich glaub, ich hab auch das Display.
Müsste also klappen.

Aufzeichnung geht wohl nur mit SD-Erweiterung.
Ich trag mich mit dem Gedanken eine eigenständige Erweiterung zu machen, 
die dann über die serielle Schnittstelle angesprochen werdenkann.
Mal sehen.

Gruß RoBue

von Stefan S. (stesie)


Lesenswert?

Hi RoBue, ruebi, others ...

vielleicht noch kurz in Ergaenzung zu dem Post von ruebi, es gibt von 
fd0 eine sehr schicke Live-CD (basierend auf Ubuntu 8.04), die (beinahe) 
allen Kram, den man zum AVR entwickeln braucht, mitbringt.

Unter http://ethersex.de/tiki-index.php?page=EtherSexMitLiveCd finden 
sich auch die Anfaenge einer Anleitung wie man damit am besten arbeitet. 
Wer laengerfristig mitentwickeln moechte, sollte eine Installation auf 
Festplatte in Erwaegung ziehen (laeuft dann auch schneller), aber gerade 
fuer den Anfang reicht's auch von CD und das Frustrationspotential ist 
erheblich geringer :-)

cheers,
  stesie

von mamsoft (Gast)


Lesenswert?

Hi RoBue,
wir haben das gleiche Problem aber eine andere Funktion.
So wie ich dich verstanden habe, liest du D/I Werte ein und gibts die an 
einem Webserver weiter.
Ich möchte die D/I Werte einlesen -> Werte (0/1) speichern -> Werte 
vergleichen -> bei änderung D/I ID an eine IP senden.

Ich habe auch schon in der main.c und config.h rumgestöbert.
Allerdings weiß ich nicht genau welche Befehle ich verwenden und wo ich 
das Programm anpassen muss.

Gruß mamsoft

von Harry S. (littlegonzo)


Lesenswert?

@ Stefan Siegl

Vielen Dank für den Tipp mit der Live-CD und Ethersex, endlich nach 
vielem rumprobieren ist es mir auch gelungen selbst das Ethersex zu 
kompilieren^^
Kompilieren klappt, nun muß ich mich mal mit dem möglichkeiten von 
Ethersex befassen. Es erschlägt einen ja wenn man sieht "was" es alles 
kann...

Ich hatte vor einigen Wochen schonmal nachgefragt und ein Hex für das 
Pollin-Board von Dir (glaube ich) auch mal erhalten welches auch soweit 
ging. Aber ohne selbst etwas machen zu können hat es damals dann keinen 
rechten Spaß gemacht und ständig nach dem Hex bitten ist auch keine 
Lösung..

Jetzt kanns mal losgehen...

Andere Frage hier im Allgemeinen. Wie wäre es mit einem neuen Treat für 
das Board in bezug auf Ethersex und auch Ulrich Radigs source den ich 
ebenfalls gern verwende.
Langsam blickt man hier ja überhaupt nicht mehr durch.

Grüße
Harry

von Harry S. (littlegonzo)


Lesenswert?

@ mamsoft weiß zwar nicht ob es so geht aber als Idee: Schau mal wie das 
mit/bei WOL (in U.Radigs Source) gemacht wird, vielleicht kannst Du so 
auch Pakete mit deinen Werten ins Netz schicken?


Grüße
Harry

von hermit (Gast)


Lesenswert?

Hallo robue

Du hast noch vergessen:

sorry, dass ich das falschen Betriebssystem benutzt habe...

   ;-)))

von Dionysios (Gast)


Lesenswert?


von mentox (Gast)


Angehängte Dateien:

Lesenswert?

Hi,

@RoBue

sieht bei mir aehnlich aus :-) .. nur ohne display usw .. wollte mich 
erstmal auf 1wire stuerzen :-)
wo hast du den reset taster angeschlossen?


aber ich bekomme immer

CRC Error (lost connection?) FC:8e ( ? )SN: 0 8 1 21 5b 6 CRC:10  CRC 
FAIL


ich glaub ich hab was putt gemacht ..
am pc mit einem usb 1wire adapter funzt der baustein


gruesse mentox

von mentox (Gast)


Lesenswert?

ahhhhhhhhhhh

ich brech ins essen ...


man muss die adresse falsch rum eingeben.

bzw so wie ich sie ausgelesen habe war es falsch rum .. wer jetzt falsch 
rum ist ist ja egal :-)

einmal alles gedreht und schwupps gehts...


juhuuuuu

von M. W. (hobbyloet)


Lesenswert?

Hi,

@RoBue

bei mir kommen diese Zeilen:

System Ready
Compiliert am Dec 12 2008 um 21:12:20
Compiliert mit GCC Version 4.2.2 (WinAVR 20071221)

NIC init:READY!
My IP: 192.168.0.99

Kein NTP Server gefunden!!

CRC Error (lost connection?) FC:10 (18S)SN: 7a 8c 48 1 8 0 CRC:67  CRC 
O.K.
CRC Error (lost connection?) FC:10 (18S)SN: 44 9e 53 1 8 0 CRC:ca  CRC 
O.K.

Die Werte, entsprechen denen in der config.h.
Also werden wohl nicht die richtigen Adressen ausgelesen.

von M. W. (hobbyloet)


Lesenswert?

Halli wrote:
> Problem gelöst. Sensor klappt bestens :)
> Hab mir auch ein kleines Bascom Programm geschrieben und so die Adresse
> rausgekriegt.

Hallo,

wärst Du auch so freundlich, etwas unbedarfteren unter uns, das Programm 
zur Verfügung zu stellen?

Gruss Marcel

von Stephan G. (son)


Lesenswert?

Hallo,
es ist ja schon mehrmals angeklungen... ein eigenes Forum speziell für 
das Pollinboard wäre gut.

So langsam wirds arg unübersichtlich.

Ich hab mal ein kleines cms auf meinem Server installiert und angefangen 
hier aus dem Board die Infos zu sammenzutragen.
Ich hoffe, das System gefällt (ist z.Z. das Einzigste, welches ich 
einigermassen gut kenne)
Die ersten Downloads sind schon drin, ein paar pdf's auch.
die Sourcen von RoBue sind auch schon drin

Wenn dagegen Einwände bestehen...raus damit...

ansonsten:

http://son.ffdf-clan.de


einfach ma anmelden und testen/spielen

gruss
stephan

von M. W. (hobbyloet)


Lesenswert?

"einfach ma anmelden und testen/spielen

gruss
stephan"

Ja, aber Bilderrechte werden wohl beim Hersteller liegen.

Du nutzt Bildmaterial von P....!

von Stephan G. (son)


Lesenswert?

muss ich noch eigene machen...

von mentox (Gast)


Lesenswert?

komme irgend wie nicht mit dem stack kram klar...

mein ziel war es eigentlich den 1-wire port als tcp port frei zu geben, 
damit ich quasi den 1wire bus uebers netzwerk verlaengern kann.

ich will dann aus einem anderen programm auf dem server den port oeffnen 
und die bytes die ich sende direkt auf den 1-wire bus geben.
quesi fast das selbe wie den comport uebers netzwerk.

aber ich bekomme es nicht hin das ich dem net-io was sende und der mir 
antwortet.

hatte mir jetzt die telnetd hergenommen und angefangen umzubauen ..

aber ich verstehe nicht mal wie das handling der lib ist..

wie kann ich da weiter kommen? hat jemand nen tip?

gruesse mentox

von tiemo (Gast)


Lesenswert?

> Autor: Stephan Gross (son)
> Datum: 12.12.2008 23:15
>
> muss ich noch eigene machen...

Zumindest musst du P****n fragen, ob sie mit der Benutzung der Bilder 
auf deiner Page einverstanden sind - ich könnte mir aber vorstellen, 
dass sie nichts dagegen haben...

Gruß,
tiemo

von Stephan G. (son)


Lesenswert?

gefragt hatte ich, bisher keine Antwort.
hab jetzt aber eigene in Arbeit, bzw. fertig.
werd mich jetzt ma so langsam um Inhalte bemühen....

von Stefan S. (kami)


Lesenswert?

Hi,

ich wolle gerade mit diesem File hier das LCD an den EXT Port 
anschliessen:

http://www.mikrocontroller.net/attachment/43395/LCD_PORTD.zip

Wie muss den die Pinbelegung sein für alle 14 Pins?

Cu kami

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.