ATMega644 + LoRa Prototype IoT Building Block

This Sensor IT Building Block is especially designed for making IoT wireless nodes prototyping, using LoRa wireless communication, a breeze, either implementing your own communication protocol or a LoRaWAN-compatible stack, such as The Things Network

£21.00

Clear

Description

The Building Block includes everything you need: a low-consumption, powerful microcontroller, based on the Atmel ATmega644 microcontroller, which benefits from a host of tools and Integrated Development Environments (IDE) already available for compatible platforms such as Arduino, and the wireless LoRa chip. The microcontroller chosen for this Building Block is, in our view, a better choice than those including the likes of Arduino (ATmega328), as it provides double the capability from the memory point of view:

  • 64K of In-System Self-Programmable Flash

  • 4Kbytes EEPROM

  • 8Kbytes Internal SRAM

The microcontroller on this board runs on a 8Mhz Crystal, and it is fitted with a low-consumption, 250mA voltage regulator that allows the module to be powered by an external power source of up to 12V through the RAW pin. The internal operating voltage is 3.3V. The VCC pin allows to bypass the voltage regulator, requiring then an externally regulated 3.3V power source.

The LoRa module is based on a SX1278 (433Mhz) or SX1276(868Mhz and 915Mhz) which is internally connected through the PCB to the microcontroller using the SPI lines (MISO, MOSI and SCK)

Usage Notes

This module does not come with any firmware (or bootloader) pre-loaded, either for the microcontroller or the LoRa module. Programming would need to be done through the In-circuit Serial Programmer (ISP) header (SPI connection), an ISP external device and an Atmel-compatible tool, such as avrdude. For more information, visit https://www.arduino.cc/en/Tutorial/ArduinoISP. The board is fully compatible with Lauszus’ Sanguino bootloader and hardware profile definition, which can be downloaded from https://github.com/Lauszus/sanguino.

If you opt for the bootloader option, you can upload sketches through the UART interface (accessible through a header), using an USB to TTL serial adapter – I would recommend those based on the FT232RL over the CH340G, since the latter tend to cause a bit of a headache depending on the Operating System, but that is your choice. These are readily available and quite inexpensive, for instance on eBay – just search USB to TTL converter.? If they give you the option to power the module with 3.3V, you can also use that power source whilst uploading your sketch.

Serial communication lines between the microcontroller and the LoRa? module (SPI: MISO, MOSI and SCK) are already wired on the PCB. Other LoRa lines required need to be wired through the available pin headers, which include: NSS (Chip Select), Digital I/O and RESET.

The LoRa antenna pad allows the module to be connected to a spring antenna (soldered) or to an external antenna through a u.FL connector.

Since the board uses a 3.3V voltage regulator, the fuses for the ATmega644 should be programmed so that the microcontroller uses the external (8Mhz) crystal and the brown-out detection is configured for an internal operating voltage of 3.3V, as per below:

  • Low Fuse: FF
  • High Fuse: DE
  • Extended Fuse: FF

The above can be achieved using Atmel’s avrdude utility, with the following command line, once the hardware profile has been installed:

avrdude -C<avrdude conf file> -v -patmega644p -c<programmer used> -P<device file> -b<bauds> -U lfuse:w:0xff:m -U hfuse:w:0xde:m -U efuse:w:0xff:m

For more information of Atmel AVR fuses, check the online fuses calculator on:

http://www.eleccelerator.com/fusecalc/fusecalc.php?chip=atmega644p

Additional information

Band

868Mhz, 915Mhz, 433Mhz

Specifications

  • High Performance, Low Power Atmel® AVR® 8-Bit Microcontroller
  • Advanced RISC Architecture
  • High Endurance Non-volatile Memory Segments
    • 64K of In-System Self-Programmable Flash
    • 4Kbytes EEPROM
    • 8Kbytes Internal SRAM
    • Write/Erase Cycles:10,000 Flash/100,000 EEPROM
    • Data retention: 20 years at 85C/ 100 years at 25C
  • Atmel® QTouch® library support
    • Capacitive touch buttons, sliders and wheels
    • QTouch and QMatrix acquisition
    • Up to 64 sense channels
  • Peripheral Features
    • 2 x 8-bit Timer/Counters with Separate Prescaler and Compare Mode
    • One 16-bit Timer/Counter with Separate Prescaler, Compare- and Capture Mode
    • Real Time Counter with Separate Oscillator
    • Four 8-bit PWM Channels
    • SixPWM Channels
    • 8 x 10-bit ADC
    • 2 x Programmable Serial USART
    • Master/Slave SPI Serial Interface
    • Byte Oriented 2-wire Serial Interface
    • Programmable Watchdog Timer with Separate On-chip Oscillator
    • On-chip Analog Comparator
    • Interrupt and Wake-up on Pin Change
  • Special Microcontroller Features
    • Power-on Reset and Programmable Brown-out Detection
    • Internal Calibrated Oscillator
    • External and Internal Interrupt Sources
    • Six Sleep Modes: Idle, ADC Noise Reduction, Power-save, Power-down, Standby, and Extended Standby
  • Temperature Range:
    • -40C to 85C Industrial
  • Ultra-Low Power Consumption
    • Active Mode: 1MHz, 1.8V: 500μA
    • Power-down Mode: 0.1μA at 1.8V

Board

  • Main header:
    • Digital Input/Ouput: D0-D23
    • Analogue Input/Output: A0-A7
    • ADC REF
    • RESET
    • VCC: 3.3V input
    • RAW: 4V-12C input
    • GND
  • COM Header:
    • DTR
    • RX
    • TX
    • GND
    • VCC
  • LoRa Header
    • RESET
    • NSS (Chip select)
    • D0
    • D1
    • D2
    • D3

Dimensions