We now have dedicated cable and adapter for this – see External Programming Adapter. The IDE setup is the same in both cases.
The Sleepy Pi can run quite happily as a standalone board without the need for a Raspberry Pi. In some cases, it can be faster to develop code on a traditional desktop machine which can compile a lot quicker than the Raspberry Pi and you also have access to other more alternative development environments.
To program the Arduino from a normal desktop machine you can use a USB to serial cable / adapter board and link it into the extended GPIO header as shown.
IMPORTANT: The USB to Serial Cable needs to be a 3V3 variant and NOT the 5V one.
The cable that I have tested is the FTDI: TTL-232R-3V3 which you can get from Farnell element 14 part number: 132-9311, but any USB to serial converter should do as long as it’s 3V3.
The connections for this cable are as follows:
- Black (GND) -> RaspPi GPIO pin 6 (Gnd)
- Orange (TXD) -> RaspPi GPIO pin 8 (TX)
- Yellow (RXD) -> RaspPi GPIO pin 10 (RX)
- Green (RTS) -> RaspPi GPIO pin 15 via a capacitor e.g 1uF
(Remember we are replacing the Raspberry Pi connections so TXD replaces TX etc rather than TXD goes to RXD)
In order to auto upload the code from the Arduino IDE the reset line needs to be connected to the RTS of the serial cable. In order to pulse the reset low a capacitor needs to be placed inline. I’ve found that 1uF works very well, but other values around that should work.
Once setup on your desktop machine you can use the Arduino IDE as you would any other Arduino board, there is no special configuration needed. You can setup the Sleepy Pi board as a proper target board by adding / editing the Boards.txt file or you can just select Arduino FIO which is a standard board option and that works perfectly well as a target for the Sleepy Pi.