Learning About AVR JTAGICE mkII
: Description : My attempts to get Atmel's AVR JTAGICE mkII working under OS X.
Links
- Product page: AVR JTAGICE mkII
Project Log
- ( 7 August 2008 )
- While there is a quick start PDF the majority of the documentation is in chm form and installed when AVR Studio is installed.
- I used Chmox to view the chm help files under Mac OS X 10.5 with partial success—some pages didn't display at all. Oddly enough Chamonix seems to display the pages Chmox didn't but not the ones it did! (xchm seems to show the same pages as Chmox.) Someone should probably file a bug report. :-)
- There are other chm convertors available but I haven't tried any yet.
- Somehow I thought the device could supply power to the circuit but this doesn't seem to be the case. This error from avrdude indicates this:
avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_NO_TARGET_POWER avrdude: jtagmkII_getsync(): ISP activation failed, trying debugWire avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_NO_TARGET_POWER avrdude: failed to sync with the JTAG ICE mkII in ISP mode
- Using the following command line results in an error:
avrdude -c jtag2isp -p m3290p -P usb -t
- I also tried it under Ubuntu 8.04 in a VirtualBox session without success.
- This is the error that occurs under OS X:
avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_FAILED avrdude: jtagmkII_getsync(): ISP activation failed, trying debugWire avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_DEBUGWIRE_SYNC_FAILED avrdude: failed to sync with the JTAG ICE mkII in ISP mode avrdude: jtagmkII_close(): timeout/error communicating with programmer (status -1)
- Here's the same result with the '-v' option:
avrdude: Version 5.5, compiled on Jul 16 2008 at 15:57:18
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
System wide configuration file is "/usr/local/AVRMacPack-20080716/etc/avrdude.conf"
User configuration file is "/Users/<user>/.avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : usb
Using Programmer : jtag2isp
avrdude: usbdev_open(): Found JTAGICE mkII, serno: <serialnum>
JTAG ICE mkII sign-on message:
Communications protocol version: 1
M_MCU:
boot-loader FW version: 255
firmware version: 4.32
hardware version: 0
S_MCU:
boot-loader FW version: 255
firmware version: 4.32
hardware version: 1
Serial number: <serialnum>
Device ID: JTAGICEmkII
avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_FAILED
avrdude: jtagmkII_getsync(): ISP activation failed, trying debugWire
avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_DEBUGWIRE_SYNC_FAILED
avrdude: failed to sync with the JTAG ICE mkII in ISP mode
avrdude: jtagmkII_close(): timeout/error communicating with programmer (status -1)
- And the same result with '-vvvv':
avrdude: Version 5.5, compiled on Jul 16 2008 at 15:57:18
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
System wide configuration file is "/usr/local/AVRMacPack-20080716/etc/avrdude.conf"
User configuration file is "/Users/<user>/avrduderc"
User configuration file does not exist or is not a regular file, skipping
Using Port : usb
Using Programmer : jtag2isp
avrdude: stk500v2_jtagmkII_open()
avrdude: usbdev_open(): Found JTAGICE mkII, serno: <serialnum>
avrdude: jtagmkII_getsync()
avrdude: jtagmkII_getsync(): Sending sign-on command:
avrdude: jtagmkII_send(): sending 1 bytes
avrdude: Sent: . [1b] . [00] . [00] . [01] . [00] . [00] . [00] . [0e] . [01] . [f3] . [97]
avrdude: jtagmkII_recv():
avrdude: Recv: . [1b]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [1c]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [0e]
avrdude: Recv: . [86] . [01] . [ff] [20] . [04] . [00] . [ff] [20] . [04] . [01] . [00] . [b0] . [00] . [00] N [4e] . [bc] J [4a] T [54] A [41] G [47] I [49] C [43] E [45] m [6d] k [6b] I [49] I [49] . [00]
avrdude: Recv: . [9f]
avrdude: Recv: . [9f]
avrdude: jtagmkII_recv(): CRC OK
avrdude: jtagmkII_recv(): Got message seqno 0 (command_sequence == 0)
Raw message:
0x860x010xff0x200x040x000xff0x200x040x010x000xb00x000x000x4e0xbc
0x4a0x540x410x470x490x430x450x6d0x6b0x490x490x00
Sign-on succeeded
JTAG ICE mkII sign-on message:
Communications protocol version: 1
M_MCU:
boot-loader FW version: 255
firmware version: 4.32
hardware version: 0
S_MCU:
boot-loader FW version: 255
firmware version: 4.32
hardware version: 1
Serial number: <serialnum>
Device ID: JTAGICEmkII
avrdude: jtagmkII_setparm()
avrdude: jtagmkII_setparm(): Sending set parameter command (parm 0x03, 1 bytes):
avrdude: jtagmkII_send(): sending 3 bytes
avrdude: Sent: . [1b] . [01] . [00] . [03] . [00] . [00] . [00] . [0e] . [02] . [03] . [03] . [89] f [66]
avrdude: jtagmkII_recv():
avrdude: Recv: . [1b]
avrdude: Recv: . [01]
avrdude: Recv: . [00]
avrdude: Recv: . [01]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [0e]
avrdude: Recv: . [a0]
avrdude: Recv: . [cf]
avrdude: Recv: . [a2]
avrdude: jtagmkII_recv(): CRC OK
avrdude: jtagmkII_recv(): Got message seqno 1 (command_sequence == 1)
Raw message:
0xa0
FAILED
avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_FAILED
avrdude: jtagmkII_getsync(): ISP activation failed, trying debugWire
avrdude: jtagmkII_setparm()
avrdude: jtagmkII_setparm(): Sending set parameter command (parm 0x03, 1 bytes):
avrdude: jtagmkII_send(): sending 3 bytes
avrdude: Sent: . [1b] . [02] . [00] . [03] . [00] . [00] . [00] . [0e] . [02] . [03] . [00] { [7b] [20]
avrdude: jtagmkII_recv():
avrdude: Recv: . [1b]
avrdude: Recv: . [02]
avrdude: Recv: . [00]
avrdude: Recv: . [01]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [0e]
avrdude: Recv: . [ac]
avrdude: Recv: s [73]
avrdude: Recv: . [e2]
avrdude: jtagmkII_recv(): CRC OK
avrdude: jtagmkII_recv(): Got message seqno 2 (command_sequence == 2)
Raw message:
0xac
unknown message 0xac
avrdude: jtagmkII_setparm(): bad response to set parameter command: RSP_DEBUGWIRE_SYNC_FAILED
avrdude: failed to sync with the JTAG ICE mkII in ISP mode
avrdude: jtagmkII_close()
avrdude: jtagmkII_close(): Sending sign-off command:
avrdude: jtagmkII_send(): sending 1 bytes
avrdude: Sent: . [1b] . [03] . [00] . [01] . [00] . [00] . [00] . [0e] . [00] . [aa] . [0c]
avrdude: jtagmkII_recv():
avrdude: Recv: . [1b]
avrdude: Recv: . [ff]
avrdude: Recv: . [ff]
avrdude: Recv: . [01]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [00]
avrdude: Recv: . [0e]
avrdude: Recv: . [e3]
avrdude: Recv: c [63]
avrdude: Recv: / [2f]
avrdude: jtagmkII_recv(): CRC OK
avrdude: jtagmkII_recv(): Got message seqno 65535 (command_sequence == 3)
avrdude: jtagmkII_recv(): got asynchronous event
avrdude: jtagmkII_recv():
avrdude: usb_fill_buf(): usb_bulk_read() error usb_bulk_read: An error occured during read (see messages above)
avrdude: jtagmkII_recv(): Timeout receiving packet
avrdude: jtagmkII_close(): timeout/error communicating with programmer (status -1)
- Unfortunately I've encountered the "error usb_bulk_read: An error occured during read (see messages above)" error before when I've been trying to get libusb working with the Atmel Ravens under OS X. :-/
- (*14 August 2008*)
- See also: Learning About Mac OS X Native Python Programming for some OS X USB related things.