seeeduino stalker and bus pirate

I recently bought a seeeduino stalker in your birthday celebration. I didn’t realize at the time that it would need a UartSBee in order to program it.

I have a few bus pirates sitting around and I’m wondering if there is a way to use a bus pirate instead of a UartSBee? Since the bus pirate has the FTDI on it, it seems like it could do the job. I see that the bus pirate has some pads labeled ST for Serial Thru. And I know it has a UART mode.

Does this seem doable, or do I really need to get the UartSBee?

Thank you for your help.

Ok, I’ve figured out quite a bit here, but I’m still searching for how to load a sketch where I can see some sign of life from it.

When I first received the stalker, it would flash the user LED in a constant blink once powered on. Unfortunately ever time I tried to load a sketch using either the bus pirate or the spark fun 3.3v FTDI interface it would think it loaded the sketch, but the board would go right back to the constant blink.

After much searching around and assembling this is what I have working:

  1. avrdude is using the bus pirate to talk to the stalker via the ICSP header.
  2. avrdude can write boot-loader to the seeeduino stalker.
    *** I’d like to locate the original stalker boot-loader if anyone knows where it can be downloaded ***
    I used ATmegaBOOT_168_pro_8MHz.hex but one thing that concerns me is that the oscillator on the stalker is clearly marked at 16.00.
    Is the stalker a Arduino Pro/Pro Mini clone (3.3v 8MHz), or is it a Diecimila clone?
    Here is a log of it writing the diecimila boot loader:

[code]
Detecting BusPirate…
**
** Bus Pirate v3a
** Firmware v5.10 (r559) Bootloader v4.3
** DEVID:0x0447 REVID:0x3043 (24FJ64GA002 B5)
** http://dangerousprototypes.com
**
BusPirate: using BINARY mode
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.10s

avrdude: Device signature = 0x1e9406
avrdude: erasing chip
avrdude: reading input file “0x3f”
avrdude: writing lock (1 bytes):

Writing | ################################################## | 100% 0.03s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x3f:
avrdude: load data lock data from input file 0x3f:
avrdude: input file 0x3f contains 1 bytes
avrdude: reading on-chip lock data:

Reading | ################################################## | 100% 0.03s

avrdude: verifying …
avrdude: 1 bytes of lock verified
avrdude: reading input file “0xdf”
avrdude: writing lfuse (1 bytes):

Writing | ################################################## | 100% 0.10s

avrdude: 1 bytes of lfuse written
avrdude: verifying lfuse memory against 0xdf:
avrdude: load data lfuse data from input file 0xdf:
avrdude: input file 0xdf contains 1 bytes
avrdude: reading on-chip lfuse data:

Reading | ################################################## | 100% 0.03s

avrdude: verifying …
avrdude: 1 bytes of lfuse verified
avrdude: reading input file “0xca”
avrdude: writing hfuse (1 bytes):

Writing | ################################################## | 100% 0.10s

avrdude: 1 bytes of hfuse written
avrdude: verifying hfuse memory against 0xca:
avrdude: load data hfuse data from input file 0xca:
avrdude: input file 0xca contains 1 bytes
avrdude: reading on-chip hfuse data:

Reading | ################################################## | 100% 0.03s

avrdude: verifying …
avrdude: 1 bytes of hfuse verified

avrdude: safemode: Fuses OK

avrdude done. Thank you.

Detecting BusPirate…
**
** Bus Pirate v3a
** Firmware v5.10 (r559) Bootloader v4.3
** DEVID:0x0447 REVID:0x3043 (24FJ64GA002 B5)
** http://dangerousprototypes.com
**
BusPirate: using BINARY mode
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.10s

avrdude: Device signature = 0x1e9406
avrdude: reading input file “ATmegaBOOT_168_diecimila.hex”
avrdude: writing flash (16294 bytes):

Writing | ################################################## | 100% 525.42s

avrdude: 16294 bytes of flash written
avrdude: verifying flash memory against ATmegaBOOT_168_diecimila.hex:
avrdude: load data flash data from input file ATmegaBOOT_168_diecimila.hex:
avrdude: input file ATmegaBOOT_168_diecimila.hex contains 16294 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 521.31s

avrdude: verifying …
avrdude: 16294 bytes of flash verified

avrdude: safemode: Fuses OK

avrdude done. Thank you.

Detecting BusPirate…
**
** Bus Pirate v3a
** Firmware v5.10 (r559) Bootloader v4.3
** DEVID:0x0447 REVID:0x3043 (24FJ64GA002 B5)
** http://dangerousprototypes.com
**
BusPirate: using BINARY mode
avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 0.10s

avrdude: Device signature = 0x1e9406
avrdude: reading input file “0x0f”
avrdude: writing lock (1 bytes):

Writing | ################################################## | 100% 0.10s

avrdude: 1 bytes of lock written
avrdude: verifying lock memory against 0x0f:
avrdude: load data lock data from input file 0x0f:
avrdude: input file 0x0f contains 1 bytes
avrdude: reading on-chip lock data:

Reading | ################################################## | 100% 0.03s

avrdude: verifying …
avrdude: 1 bytes of lock verified

avrdude: safemode: Fuses OK

avrdude done. Thank you.[/code]
3) I’ve replaced the avrdude and avrdude.conf that are in the sketch editor to use the version that supports the bus pirate.
4) I’ve modified board.txt and programmers.txt so that the sketch editor will write sketches to the seeeduino stalker using the BP version of avrdude.

The sketch editor now nicely shows the BusPirate when I press load:
Detecting BusPirate…

Binary sketch size: 1252 bytes (of a 14336 byte maximum) ** ** Bus Pirate v3a ** Firmware v5.10 (r559) Bootloader v4.3 ** DEVID:0x0447 REVID:0x3043 (24FJ64GA002 B5) ** http://dangerousprototypes.com ** BusPirate: using BINARY mode
about a full minute later it says “Done uploading.”

Things seem to be working nicely with no errors both from the command line and from the sketch editor. The problem is that the sketches are still not running. I’m using the Fade sketch with the pin set to 13 to address the user LED on the stalker.

Still not quite sure what I’m be doing wrong.

the user LED is connect to Digital pin 8.

Thanks
Albert