I'd like to share my latest design. It's a mother/daughter board design using an RFM69 radio (though it would be easy to change it to an NRF). I have about 10 sensors I need to make and they're all similar, but not quite the same. This system allows be to mix and match what I need for each application. It's designed to be AC powered (which isn't a problem for my needs) and uses the following case for all of them (~$3/apiece for 10). I'm not trying to get the smallest form factor - I want something that's easy to build and looks nice. I needed a decent size case because I use a lot of detachable connectors and have at least one switch and 1-4 LED's on the front all of which intrude into the interior volume.
The main board has the basic components and supports two daughter boards (roughly 25mm x 35mm) which plug into the side so the whole assembly is basically flat (leaving more room in the case for the switches, connectors, and LED's). An additional third daughter board can be used for small boards mounted perpendicular to the main boards (the sensor board below does that) or mounting over the top of the arduino.
The main board contains:
- 3.3V Arduino Pro Mini
- RFM69 radio
- side mount for external dipole antenna
- interior mount with enough space for a helical antenna mounted parallel or perpendicular to the board
- 5V->3.3V power supply
- digital signing chip
- flash memory chip
- input and output shift registers
- headers for a switch, LED, and piezo buzzer
- header for SPI (MISO, MOSI, SCK) pins
- 2 side mounted daughter board headers with inputs and outputs from the shift registers
- 1 top mounted daughter board header with pins from the mini including D3 (IRQ), D5 and D6 (PWM), A3, A4 (SDA), and A5 (SCL)
- 5cm x 5cm footprint for cheap production
- all components are top mounted for easier soldering and a bigger ground plane for better antenna performance
Here's a 3D view of the main board with the Arduino removed:
Each daughter board header has 5V, 3.3V, ground, 3 input pins, and 3 output pins. I've designed five different daughter boards so far. The first four fit in a single 5cm x 5cm package so I can get 10 copies of each for about $15. Other daughter boards are generally small enough that OSHPark is a viable source if I only need a few boards made (like for the car parking board).
- Relay board. I'm using this to control simple switching (like the garage door opener) and AC loads (hot water recirculating pump).
- 1 solid state opto-isolated relay with screw header with LED for AC loads
- 2 switched transistors for simple connections
- 3 sensor inputs with pull up resistors
- Protected input board. I'm using this to trigger when external security cameras and motion sensors trip (they both operate on 12V signals).
- 3 opto-isolator circuits for triggering on 12V lines
- Valve/motor control board. I'm using this for articulated water valves for controlling leaks at the water heater, washing machine, etc.
- L9110 motor controller with LED and valve open/closed sensors.
- Generic LED/sensor board. This board adds pull up resistors on the inputs and LED resistors on the outputs so it can be used with the shift registers.
- 3 sensor inputs with pull up resistors
- 3 LED's with resistors
- Car parking board
- 3.3V<->5V level shifters for the distance sensor
- Ultrasonic distance sensor
- LED ring
To give you an example of how this works, here are some of the builds I'm going to use:
- Garage sensor
- relay board for monitoring and controlling the garage door
- parking board for LED parking sensor
- could add a 3rd sensor board for temp, humidity, or air quality later
- Water heater sensor
- sensor board for monitoring water leaks
- valve board for shutting off hot water intake
- relay board for a hot water recirculating pump
- Refrigerator and bathroom sensor
- sensor board for monitoring water leaks
- valve board for shutting off water to the ice machine or toilet
- Washing machine sensor
- sensor board for monitoring water leaks
- valve board for shutting off the hot water
- valve board for shutting off the cold water
I've finished all of the board designs and am now bread-boarding the schematics to make sure everything works properly before I put in my order. Once I get everything tested and confirm the boards work, I'll post the schematics and board files for anyone else that's interested. If you have any suggestions or comments, I'd love to hear them.