DinusExperience

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche

Ziel dieses Projekts

  • mal mit avr's anfangen und verstehen und die "closed software" von pollin durch "open source software" ersetzen

AVR hardware umgebung

Software umgebung

Hilfe

  • Die Community ist hier zu finden,
  • dort ist folgendes mitgeteilt/besprochen worden:

Problem mit ponyprog auf dem Atmel Evaluations-Board in Verbindung mit einem usb-rs232 konverter

  • baudrate /dev/ttyUSB0 auf 9600 8N1
avrdude -p m644 -c ponyser -P /dev/ttyUSB0 -t  (avrdude in terminal mode)
  • verbindung mit dem atmega644, kann fuse bits lesen usw. (zb. r lf gibt das low fuse aus sehe manual avrdude)
  • aber avrdude bleibt beim Versuch mit /dev/ttyUSB0 als interface zu flaschen haengen
  • ersatz durch ein kabel an /dev/ttyS0
  • baudrate /dev/ttyS0 auf 9600 8N1
avrdude -p m644 -c ponyser -P /dev/ttyS0 -U flash:w:ethersex.hex -v
  • laeuft dann problemlos durch
  • Das usb-rs232 interface funktioniert jedoch mit der usart vom board tadellos.

Fuse bits

avrdude -p m644 -c ponyser -P /dev/ttyS0 -U lfuse:w:0xE7:m -U hfuse:w:0xDC:m -U efuse:w:0xFF:m

ecmd interface via rs232/ USART

  • wenn in menuconfig unter general > Enable (serial line) Debugging NICHT aktiviert ist, jedoch unter I/O support > usart ecmnd interface aktiviert ist wird die baudrate 19200 verwendet:
screen /dev/ttyUSB0 19200 8N1
  • wenn in menuconfig unter General > Enable (Serial Line) Debugging aktiviert ist und unter I/O support > Usart ecmd interface NICHT wird die baudrate 115200 verwendet: (Quarz > 16Mhz, kein teensy usw.)
screen /dev/ttyUSB0 115200 8N1
  • wenn eine baurate von 19200 oder 115200 nicht passt, weil zB. anderer Quarz oder AVR, dann kann die baudrate in: /protocols/ecmd/via_usart/ecmd_usart.h bzw. /core/debug.h auf den gewuenschten Wert eingestellt werden.

Port I/O und Ecmd

  • der atmega644 hat 4 ports PA PB PC PD
  • PORTNUM ist dann PA=0 PB=1 PC=2 PD=3
  • das Beispiel gibt dann die werten von port PA aus:
io get port 0

Named Pins und Ecmd

  • macht das steuern uebers http einfach und schoen (wenn http server im menuconfig aktiviert ist).
  • in /core/portio/config gibts du pins symbolische namen. Zum Beispiel:
PD7 OUTPUT HIGH Verstaerker

dann kannst du mit ecmnd

 pin set Verstaerker on

an das Ethersex senden, um den pin PD7 zu aktivieren

pin set Verstaerker off

schaltet den Verstaerker, bzw. pin PD7, wieder aus

Netzwerk-Einstellung aendern

zB. mit:

ip 10.0.0.180

wird die ip geaendert

netmask 255.255.0.0

aendert die netmask

gw 10.0.0.222

das gateway

und dann ein

reset

eingeben, um die aenderungen zu uebernehmen.

yport

  • ist ein ethernetz zu rs232 konverter.

zu erreichen mit portnummer 7970 /den uart lauft standard mit 115200 baud /den baudrate ist unter: ~/protocols/yport/yport.h zu aendern (#define YPORT_BAUDRATE 115200) /zb. #define YPORT_BAUDRATE 9600 gibt ein baudrate von 9600 /zb. mit

nc ipnummer-ethersex 7970

bekommt dann ein geraet an den rs232 ein terminal.