avr-chat
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avr-chat] Can't program fuse bytes on USBKey via avarice.


From: Andy Warner
Subject: [avr-chat] Can't program fuse bytes on USBKey via avarice.
Date: Sun, 21 Dec 2008 22:56:27 -0600

I posted this question a while back to the avarice-users list, to
deafening silence. I'm reposting here in the hope of more (any)
feedback:

My setup is a Fedora 8 host, running avarice, talking
to a stock USBKey via a MKII JTAGICE.

I am having problems programming fuse bytes on an
AT90USB1287 (on a stock USBKey) using avarice
and a usb-connected JTAG MKII.

Simple stuff like enabling CLKO doesn't stick.

I have not had problems programming fuse
bytes on other parts, but this is my first attempt
to program a USBKey with anything other than
dfu-programmer.

Below are read-write-read sequences (and
avarice, honestly does report that there was
some kind of problem.)

Below that is the debug output from the -W
command - which I don't know enough (yet) to
really parse.

Does this sound familiar to any other avarice users
out there ?

$ avarice -r -2 -j usb -B 100000
AVaRICE version 2.7, Mar  5 2008 23:04:27

JTAG config starting.
Found a device: JTAGICEmkII
Serial number:  00:a0:00:00:22:ab
Reported JTAG device ID: 0x9782
Configured for device ID: 0x9782 at90usb1287
JTAG config complete.

Reading Fuse Bytes:
 Extended Fuse byte -> 0xf3
     High Fuse byte -> 0x99
      Low Fuse byte -> 0x5e
$ avarice -W f3991e -2 -j usb -B 100000
AVaRICE version 2.7, Mar  5 2008 23:04:27

JTAG config starting.
Found a device: JTAGICEmkII
Serial number:  00:a0:00:00:22:ab
Reported JTAG device ID: 0x9782
Configured for device ID: 0x9782 at90usb1287
JTAG config complete.

Writing Fuse Bytes:
 Extended Fuse byte -> 0xf3
     High Fuse byte -> 0x99
      Low Fuse byte -> 0x1e
Error verifying written fuses
$ avarice -r -2 -j usb -B 100000
AVaRICE version 2.7, Mar  5 2008 23:04:27

JTAG config starting.
Found a device: JTAGICEmkII
Serial number:  00:a0:00:00:22:ab
Reported JTAG device ID: 0x9782
Configured for device ID: 0x9782 at90usb1287
JTAG config complete.

Reading Fuse Bytes:
 Extended Fuse byte -> 0xf3
     High Fuse byte -> 0x99
      Low Fuse byte -> 0x5e
$

$ avarice -W f3991e -2 -j usb -B 100000 -d
AVaRICE version 2.7, Mar  5 2008 23:04:27

Found JTAG ICE, serno: 00A0000022AB
JTAG config starting.
Attempting synchronisation at bitrate 19200

command[0x01, 1]: 01
recv: 0x1b
recv: 0x00
recv: 0x00
recv: 0x1c
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 28 bytes
read:  86 01 ff 00 04 00 ff 01 04 00 00 a0 00 00 22 ab 4a 54 41 47 49
43 45 6d 6b 49 49 00
recv: 0x44
recv: 0xd9
CRC OK
Got message seqno 0 (command_sequence == 0)
response: 86 01 FF 00 04 00 FF 01 04 00 00 A0 00 00 22 AB 4A 54 41 47
49 43 45 6D 6B 49 49 00
Found a device: JTAGICEmkII
Serial number:  00:a0:00:00:22:ab
JTAG ICE mkII sign-on message:
Communications protocol version: 1
M_MCU:
 boot-loader FW version:        255
 firmware version:              4.00
 hardware version:              0
S_MCU:
 boot-loader FW version:        255
 firmware version:              4.01
 hardware version:              0

command[0x02, 1]: 02 03 01
recv: 0x1b
recv: 0x01
recv: 0x00
recv: 0x01
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 1 bytes
read:  80
recv: 0xcd
recv: 0x83
CRC OK
Got message seqno 1 (command_sequence == 1)
response: 80

command[0x0a, 1]: 0A 01
recv: 0x1b
recv: 0x02
recv: 0x00
recv: 0x01
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 1 bytes
read:  80
recv: 0x1d
recv: 0x09
CRC OK
Got message seqno 2 (command_sequence == 2)
response: 80
Automatic device detection:
command[0x03, 1]: 03 0E
recv: 0x1b
recv: 0xff
recv: 0xff
recv: 0x06
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 6 bytes
read:  e0 ff ff ff ff 00
recv: 0xf5
recv: 0x24
CRC OK
Got message seqno 65535 (command_sequence == 3)

got asynchronous event: 0xe0
recv: 0x1b
recv: 0x03
recv: 0x00
recv: 0x05
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 5 bytes
read:  81 3f 20 78 09
recv: 0x48
recv: 0xb4
CRC OK
Got message seqno 3 (command_sequence == 3)
response: 81 3F 20 78 09
JTAG id = 0x978203F : Ver = 0x0 : Device = 0x9782 : Manuf = 0x1f
Reported JTAG device ID: 0x9782
Configured for device ID: 0x9782 at90usb1287

command[0x0c, 1]: 0C FF FF E3 F9 FF 3F B9 F8 00 00 00 00 00 00 00 00
B6 6D 03 E0 FF 1F B8 F8 00 00 00 00 00 00 00 00 73 CF 33 DF F7 3F F7
FF FF 7F 5F 3F 00 37 80 E7 7F FF FD 03 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 73 CF 33 D8 F7 3F F7 FF F3 7F 5F 2F 00 36 80 E5 0F 7F
31 03 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 31 57 3B 00 01 08
00 FE 00 00 FF 00 00 00 02 00 00 00 00 00 00 00 00 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 3E 3D 00 02 00 00 00 00 00 01 00 00 01
00 00 00 00 1F 00
recv: 0x1b
recv: 0x04
recv: 0x00
recv: 0x01
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 1 bytes
read:  80
recv: 0xac
recv: 0x14
CRC OK
Got message seqno 4 (command_sequence == 4)
response: 80
JTAG config complete.

Writing Fuse Bytes:
 Extended Fuse byte -> 0xf3
     High Fuse byte -> 0x99
      Low Fuse byte -> 0x1e

command[0x14, 1]: 14
recv: 0x1b
recv: 0x05
recv: 0x00
recv: 0x01
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 1 bytes
read:  80
recv: 0x13
recv: 0x95
CRC OK
Got message seqno 5 (command_sequence == 5)
response: 80
jtagWrite
command[0x04, 1]: 04 B2 03 00 00 00 00 00 00 00 1E 99 F3
recv: 0x1b
recv: 0x06
recv: 0x00
recv: 0x01
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 1 bytes
read:  80
recv: 0xc3
recv: 0x1f
CRC OK
Got message seqno 6 (command_sequence == 6)
response: 80
jtagRead
command[0x05, 1]: 05 B2 03 00 00 00 00 00 00 00
recv: 0x1b
recv: 0x07
recv: 0x00
recv: 0x04
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 4 bytes
read:  82 5e 99 f3
recv: 0xf1
recv: 0x75
CRC OK
Got message seqno 7 (command_sequence == 7)
response: 82 5E 99 F3

command[0x15, 1]: 15
recv: 0x1b
recv: 0x08
recv: 0x00
recv: 0x01
recv: 0x00
recv: 0x00
recv: 0x00
recv: 0x0e
sDATA: reading 1 bytes
read:  80
recv: 0xce
recv: 0x2f
CRC OK
Got message seqno 8 (command_sequence == 8)
response: 80
Error verifying written fuses

-- 
Andy




reply via email to

[Prev in Thread] Current Thread [Next in Thread]