SparkFun Blocks for Intel® Edison - Arduino Block
Using the Arduino Block
To use the Arduino Block, attach it to either an Edison or add it to a stack of other SparkFun Block's.
In order to supply power to your Edison, you'll need at least one additon Block in your stack. You can use a Base Block or Battery Block, for example.
Programming the Arduino
The Arduino on the Arduino Block can be programmed while it's either on or off the Edison. Depending on your application, though, it's recommended that you load code on the Arduino while it's disconnected from your Edison stack, before adding it to the rest of the system.
If you've ever uploaded an Arduino sketch to an Arduino Pro or Pro Mini, you're already familiar with uploading code to the Arduino block. Connect a 3.3V FTDI Basic to the 6-pin FTDI header on the board.
In Arduino (the non-Edison version of Arduino!), select "Arduino Pro or Pro Mini 3.3V/8MHz" from the Tools > Board menu. If you're using the latest release of Arduino (1.6 or later), first select Arduino Pro or Pro Mini from the "Board" menu.
Then select ATmega328 (3.3V, 8MHz) from the "Processor" menu.
Then upload away!
Using the Arduino Pins
The Arduino's I/O pins are all broken out to a pair of headers. These headers match up exactly to the Arduino Pro Mini. If you have any shields or piggyback boards for a Pro Mini, it should work seamlessly with the Arduino Block.
You can solder headers, wires, or any other connectors to these pins.
If you're soldering headers to the pins, take extra care deciding which side to solder to. Depending on the rest of your Edison stackup, those headers might get in the way of connectors on other boards (the USB connectors on the Base and Console Blocks, in particular).
Connecting the Edison to the Arduino
The Arduino Block connects the Arduino to the Edison through a serial (UART) connection. Jumpers on the back of the board allow you select which of the Edison's two UARTs mate with the Arduino. Unless you can't avoid it, we recommend leaving the jumpers in the default configuration -- the Edison's UART2 is usually devoted to console access.
To program the Edison to control and interact with the Arduino, you'll need to use the UART to establish a communication protocol between the devices. See the next section for an easy example of UART communication between Arduino and Edison.