This is an AVR and RFM board designed for use as a cheap and simple UKHASnet Node.
It also features a 3.3V LDO, broken out AVR GPIO and connection for a switched Sensor.
Layout Repository: github.com/philcrump/UKHASnet-avr-sensor/V3
Sensor Device: DHT22
Power Source: 3x Asda Alkaline AA
Antenna: 8.2cm of wire connected to Antenna Pad
Code: github.com/UKHASnet/UKHASnet_Firmware/arduino_sensor
In this setup the node could be configured to transmit Temperature, Humidity and Battery Voltage every couple of minutes. Due to the powersaving used on the Microcontroller and Radio, as well as the switching of the DHT22 Supply, the expected battery life would be around 9 months.
Power Source: 1x LiPO charged by Solar Panel
Antenna: SMA Dipole
Code: github.com/UKHASnet/UKHASnet_Firmware/arduino_repeater
In this setup the node is configured to listen, repeating other nodes that are heard and helping extend the network.
In addition the UART output could be enabled to allow an IP-connected device to upload packets to ukhas.net
Datasheet: DS18B20
Cheap Humidity and Temperature Sensor
Datasheet: DHT22
This is the cheapest and will work well for sensors where the average current draw is tiny, and so no recharging will be required.
This is the cheapest rechargeable solution. Research into easy methods of trickle charging Ni-MH is currently underway,
If you're confined on space, LiPOs can give you the best energy density. Cells with protection circuits should always be used. You can charge these crudely from 5V solar panels using the very cheap USB LiPO chargers on ebay, however this doesn't appear to work well in winter.
The PCB has an SMA footprint with a plated through-hole, allowing a variety of options.
This is the cheapest and easiest by far. Solder one end of the wire onto the center pad of the SMA footprint, then bend it vertically and cut so that you have a length of 8.2cm from the PCB surface.
The more exact the length, the better. Ideally you'd want to check it with an antenna analyser, however very few people own one suitable for 869 MHz.
This antenna does rely on a ground-plane. The PCB appears to perform this function adequately. You can extend the PCB using wires from the four corner Ground Pads.
By soldering on an SMA socket, you can then purchase a factory-tuned version of the 1/4 wave wire whip. This is guaranteed to be the correct length and comes cased in plastic for durability.
This antenna does rely on a ground plane and if not mounted directly to the PCB, one should be provided.
This also requires an SMA socket. The dipole is a lot more efficient than the 1/4 wave and does not rely on a ground-plane.
It is also a lot longer and may need additional mechanical support!
1x 28DIP ATMega328P
1x RFM69[H]W
1x TO-92 MCP1700 3.3V LDO
6x 100nF 50V Cap
1/4W Through-Hole Resistors
1x 6-pin ICSP Header
1x JST-PH 2 Pin Socket
1x 28-pin DIP Socket (Optional)
sensorv3i.name=UKHASnet Sensor V3 (8MHz internal) sensorv3i.upload.protocol=arduino sensorv3i.upload.maximum_size=30720 sensorv3i.upload.speed=57600 sensorv3i.bootloader.low_fuses=0xE2 sensorv3i.bootloader.high_fuses=0xDA sensorv3i.bootloader.extended_fuses=0x07 sensorv3i.bootloader.path=atmega sensorv3i.bootloader.file=ATmegaBOOT_168_atmega328_pro_8MHz.hex sensorv3i.bootloader.unlock_bits=0x3F sensorv3i.bootloader.lock_bits=0x0F sensorv3i.build.mcu=atmega328p sensorv3i.build.f_cpu=8000000L sensorv3i.build.core=arduino:arduino sensorv3i.build.variant=arduino:standard
sensorv3.name=UKHASnet Sensor V3 (8MHz resonator) sensorv3.upload.protocol=arduino sensorv3.upload.maximum_size=32256 sensorv3.upload.speed=115200 sensorv3.bootloader.low_fuses=0xff sensorv3.bootloader.high_fuses=0xde sensorv3.bootloader.extended_fuses=0x05 sensorv3.bootloader.path=optiboot sensorv3.bootloader.file=optiboot_atmega328.hex sensorv3.bootloader.unlock_bits=0x3F sensorv3.bootloader.lock_bits=0x0F sensorv3.build.mcu=atmega328p sensorv3.build.f_cpu=8000000L sensorv3.build.core=arduino sensorv3.build.variant=standard