Here are the finished PCBs – my first steps on the road to custom electronics:

Component side at the bottom, with the radio SMD-like pads on the right.
This board is by PCB-POOL in Ireland. I omitted the silk screen for this first run. The board looks very well made, with a very clean and smooth outside border.
The big question of course is: is the board correct, will the circuit work?
Step 1 – resistor, IC socket, and ISP/SPI connector (actually, I also needed the 16 MHz resonator):

Step 2 – add ATmega168 and program the boot loader:

It works! (no errors)
Step 3 – add all 5 capacitors:

Step 4 – add 3.3V regulator and FTDI connector:

It works! (ASCIITable example)
Step 5 – add the RFM12B radio module. Note that it’s slightly too close to the ISP/SPI connector:

But that’s hardly noticeable in the end (also added the 85 mm wire antenna):

It works! (using RF12demo).
Here is one more view from the bottom side:

The remaining pads are four “ports” (to be used for sensors and all sorts of goodies), and a 4-pin power/I2C bus which can be used to tie multiple units together – or simply to supply power instead of the FTDI connection.
All four “port” pinouts are identical (top/outside view, left-to-right):
- IRQ – a pin shared with all ports and tied to INT1
- DIO – digital input/output
- GND – ground
- AIO – analog in, or digital input/output
- VCC – 3.3V regulated, ≈ 50 mA max per port
- PWR – ≥ 4V, as supplied to the on-board regulator
In some cases, you’ll only need the center pins 3 & 4. In most cases the middle 4 pins are probably sufficient to hook up all sorts of physical devices. And for advanced port use, all 6 pins are available.
The 4-pin power/I2C connector has the following pinout:
- PWR – ≥ 4V, as supplied to the on-board regulator
- GND – ground
- SCL – I2C clock
- SDA – I2C data
(as seen from the top FTDI connector side, left-to-right)
The ISP/SPI connector is a hybrid 2×4-pin connector, with a standard 2×3-pin ISP layout for programming on pins 3..8, plus the ATmega168’s PB0 & PB1 lines on pins 1 & 2, respectively (Arduino pins 8 & 9).
Note that this board requires a ≥ 4V external power supply, and runs internally on 3.3V. The FTDI connector is very convenient as it can supply 5V (make sure it’s set to work with 3.3V signals), I used a “USB BUB” from Modern Device (with the jumper set to 3.3V). Small quirk: the FTDI board has to be inserted upside down.
Oh well. My first Arduino-compatible setup with on-board 868 MHz wireless, and IT WORKS!!!
EAGLE schematic (PDF) & board files (jee-pcb-002).
Update – The listing of the “port” pins was reversed: pin 1 is IRQ.
Update #2 – There’s now some basic documentation at JeeNode-v1 as PDF.