The ATTNode (short for ATTiny Node) is a minimalistic node for the LoraWAN Network. It is based on the widely available ATTiny MCU from Atmel/Microchip and the HopeRF RFM95W LoRa Wireless Module. It can be used with a variety of sensors, the provided firmware does support the I²C-sensors SHT21 and BME280 for measuring climate data (Temperature/Humidity/Atmospheric Pressure) and is meant to be used with The Things Network
as backend. The node can last for several months using only a CR2032 button cell sending values from the above mentioned sensors every 10 minutes.
Features
Small Size, only 47x36mm (v1) / 34x26mm (v2) / 37.5x30.5 (v3)
Based on widely available Atmel ATTiny84(v1,v2) / ATTiny3216(v3) MCU and RFM95W LoRa-module
Free GPIO-Pins from the ATTiny + Power to connect sensors on a 2.54mm pitch header
Firmware support for SHT21/BME280 Climate Sensors, Brightness Measurement, Alarm Trigger and Beacon Mode
Optional on-board LED for status signaling
Powered by a single CR2032 lithium battery
Long battery runtime using the ATTinys deep sleep mode
Integrated 6-Pin programming header
Small component count
Possibility for edge-mount SMA connector or u.fl SMD connector (v2/v3)
Open Hardware and Software, KiCad Project for the PCB, Firmware and Case Designs can be found in the git repository
Downloads for Gerber- and STL-files as well as the BoM and assembly hints can be found at the subsites for the corresponding ATTNode Version.
grauzone
has developed a simple voltage regulator board to make more power sources usable for the ATTNode:
Overview
This is an add-on for the ATTNode to supply it with operating voltages between 3.5-16V. The voltage source must provide at least 120 mA. The PCB has the format of the CR2032 battery clip and is soldered to the back of the node instead of the clip. This allows the node to be powered by a USB power supply, a LiPo or any other fixed voltage power supply. Here are some pictures of the add-on:
In the newest revision of the ATTNode v3 firmware it is now possible to change the send interval at runtime using LoRa Downlink packets. This makes it possible to remote-configure nodes without reflashing them.
To set a sending interval it has to be scheduled as a downlink paket for the node as a 2-Byte uint value. To set an interval of 10 minutes for example, one has to send the value 0x000A (10 as a 2-Byte Hex), for 5 minutes it would be 0x0005 and so on. If you want to reset the node to the compiled in value just send 0xFFFF. Here is an example setting the interval to 10 at the TTN-Console:
Since yesterday evening there is a first minimal firmware for the ATTNode v3 Available in the Git Repository
. This Firmware does support the basic functionality of the Node as in:
Uses the MCCI LoRa LMIC for maximum LoRaWAN compatibility
Uses OTAA for Device Activation
Supports DeepSleep between Measuring/Sending for Maximum Power Savings
Implements the BME280 Sensor
As there is no support for the ATTiny3216 in PlatformIO yet, the firmware uses ArduinoIDE with the MetaTinyCore
for the time being. Some hints about Configuring the ArduinoIDE are in the Repo. When PlatformIO Support becomes available for the 3216 I will switch to using it again as it has been with the ATTNodes v1/v2.
Today the final Prototypes of the ATTNode v3 arrived and where successfully tested for basic functionality. With this I have now added the ATTNode v3 to the Site. Firmware is still in the very early stages at the moment, but the Hardware should work as expected. See the ATTNode v3 subpage
for more info.