Firmware

HM330x Sleep Fixes and SPS30 Support

The AttNode v3 firmware now has support for the Sensirion SPS30 Particulate Matter Sensor . At the moment the PM1, PM2.5, PM4 and PM10 values in µg/m³ are reported by the sensor. There is only support for the I2C-Mode for now. Since the Sensor needs a 5V power supply, you’ll need a power source that can provide that (e.g. USB), and connect the ATTNode via a PowerPack. the I2C-Pins of the Sensor can be directly connected to the ATTNode

Support for HM330x Particulate Matter Sensor

The AttNode v3 firmware now has support for the HM3301 particulate matter sensor from Seeed Studios . At the moment the PM1, PM2.5 and PM10 values in µg/m³ for atmospheric environment will be added to the payload if the sensor is connected and enabled. The sensor can be connected to the regular I2C-pins (Vin, GND, SCL, SDA) and will run from a 3.3V power source. Be aware that the sensor can use up to 120mA of current, so your power source has to be able to provide at least 250mA (combined current of the sensor and the RFM95W while sending).

ATTNode v3 Firmware Now Uses PlatformIO

Recently PlatformIO added support for the Microchip ATTiny3216 used on the ATTNode v3. Starting today, all further development of the official firmware will use PlatformIO as the coding environment instead of Arduino IDE, because of the far better IDE, sensible library management and automated project configuration. The old Arduino IDE variant of the firmware is archived as a separate branch arduinoide in the Git repository for reference purposes, but any new development will use the PlatformIO variant.

ATTNode v3 Set Send Interval via Downlink

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.

ATTNode v3 Case and SHT21 Support

An adapted 3D-printable case for the ATTNode v3 is now available. Here is a first look of it (on the left in white) next to the case of an ATTNode v2: Also the Firmware now supports the SHT21 Sensor in addition to the BME280.

ATTNode v3 Minimal Firmware Available

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.

Measuring Brightness with a LED

twentysixer has developed a simple but effective way to detect brightness with the TinyLoRa. All that is needed is a simple LED: With the TinyLoRa and a simple led you can detect brightness and darkness. The LED is connected to 2 GPIOs in the reverse direction. The LED is charged and measured until it is discharged again. The darker it is, the longer it will take to discharge it. Clear LEDs with a low forward voltage are best suited, e.

LoRa FrameCounter now Saved Across Reset/Power Loss

Up until now the Lora Frame Counter, which is a security feature to prevent replay attacks, was reset every time the ATTiny rebooted (e.g. because of reset or power loss). Because of this the Frame Counter Check in the settings of the Lora devices had to be disabled, or messages after a reset wouldn’t be processed by the TTN Backend. I have now implemented a way to save the Frame Counter in the ATTinys integrated EEPROM, so it will survive resets and power loss.