Hei Leute,
ich kann mein COC nicht flashen. Bzw. ich kann schon, nur bekomme ich immer einen Fehler ausgegeben.
Habe es schon tausende male versucht. Anderer Pi, verschiedene .hex-Versionen, nur Funk Version, Volle Version, beim Booten, nach stoppen von FHEM.. Auf nackter Wheezydistro. Nichts klappt und ich bekomme immer einen Fehler wie:
[...]
avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0025
0x31 != 0x30
avrdude: verification error; content mismatch
avrdude done. Thank you.
[...]
Ich hoffe ihr könnt mir weiterhelfen.
Habe noch ein paar Tage Zeit zum zurücksenden. Was meint ihr??
LG und bitte helft mir schnell, sonst habe ich die Möglichkeit nicht mehr.. Danke ;)
Hallo,
Bei mir tritt jetzt genau das gleiche Problem auf. Vor ein paar Wochen hatte ich erfolgreich den COC geflashed, wollte jetzt aber aufgrund von Problemen bei der Kommunikation mit einem EM1000-HSM eine neue Firmware ausprobieren. Jetzt kann ich weder die neue noch die alte Firmware einspielen. Das Flashen endet immer mit "verification error" (siehe unten). Test for COC existence ist scheinbar ok (siehe weiter unten). Die COC LED blinkt beim Flashen, danach ist sie aus.
Hast du das Problem gelöst oder hat sonst jemand eine Idee, was hier schiefgeht?
Danke, Jens
root@raspberrypi:/home/pi# ./coc_update.sh
stopping FHEM
Stopping fhem...
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = (unset),
LC_ALL = (unset),
LC_CTYPE = "UTF-8",
LANG = "en_US"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Can't connect to localhost:7072
calling COC bootloader...
Connecting to programmer: .
Found programmer: Id = "AVRBOOT"; type = S
Software Version = 0.8; No Hardware Version given.
Programmer supports auto addr increment.
Programmer supports buffered memory access with buffersize=128 bytes.
Programmer supports the following devices:
Device code: 0x46
avrdude: AVR device initialized and ready to accept instructions
Reading | ################################################## | 100% 0.00s
avrdude: Device signature = 0x1e9705
avrdude: current erase-rewrite cycle count is 1426131071 (if being tracked)
avrdude: reading input file "COC.hex"
avrdude: input file COC.hex auto detected as Intel Hex
avrdude: writing flash (23130 bytes):
Writing | ################################################## | 100% 7.29s
avrdude: 23130 bytes of flash written
avrdude: verifying flash memory against COC.hex:
avrdude: load data flash data from input file COC.hex:
avrdude: input file COC.hex auto detected as Intel Hex
avrdude: input file COC.hex contains 23130 bytes
avrdude: reading on-chip flash data:
Reading | ################################################## | 100% 6.31s
avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
0x40 != 0x00
avrdude: verification error; content mismatch
avrdude done. Thank you.
pi@raspberrypi ~ $ sudo hexdump -C /sys/bus/i2c/devices/0-0050/eeprom
00000000 43 4f 43 20 56 31 2e 31 20 46 55 4c 4c 20 32 30 |COC V1.1 FULL 20|
00000010 31 33 2d 31 31 2d 32 38 0a ff ff ff ff ff ff ff |13-11-28........|
00000020 ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff |................|
*
00000100
So, habe den Fehler gefunden :D
Ich hatte avrdude mit -D (disable auto-erase) laufen lassen. Das funktioniert nicht. Ohne diesen Parameter geht das super.
Der avrdude Aufruf mit -D wird in diesem PDF beschrieben: Hausautomation_mit_dem_RaspberryPi___FHEM-1.pdf von chili.hackerspacebremen.de.
Weiss nicht, ob das initial oder bei anderen COC's funktioniert..
Nach der offiziellen Anleitung vom Hersteller (Busware) gehts direkt ohne Probleme
avrdude -p atmega1284p -P /dev/ttyAMA0 -b 38400 -c avr109 -U flash:w:COC.hex