Cirkit Designer LogoCirkit DesignerYour all-in-one circuit design IDE Launch Cirkit Designer App

Arduino Nano and LoRa SX1278 Battery-Powered Wireless Display

View and Edit Project In Cirkit DesignerImage of Arduino Nano and LoRa SX1278 Battery-Powered Wireless Display

Circuit Documentation

Summary

This document provides a detailed overview of a circuit that integrates an Arduino Nano microcontroller with a LoRa Ra-02 SX1278 module, a LiPo battery charger module, a 3.7V battery, an LED, a push switch, a diode, and several resistors. The circuit is designed to receive data via LoRa communication and display it on an LCD screen. The Arduino Nano is programmed to handle the LoRa communication and display the received data.

Component List

  1. Arduino Nano

    • Description: A small, complete, and breadboard-friendly board based on the ATmega328P.
    • Pins: D1/TX, D0/RX, RESET, GND, D2, D3, D4, D5, D6, D7, D8, D9, D10, D11/MOSI, D12/MISO, VIN, 5V, A7, A6, A5, A4, A3, A2, A1, A0, AREF, 3V3, D13/SCK
  2. LoRa Ra-02 SX1278

    • Description: A long-range transceiver module for LoRa communication.
    • Pins: GND, NSS, MOSI, MISO, SCK, D105, DI04, 3.3V, RST, DI00, DI01, D102, DI03
  3. LiPo Battery Charger Module

    • Description: A module for charging LiPo batteries.
    • Pins: B-, B+, OUT-, OUT+
  4. 3.7V Battery

    • Description: A rechargeable lithium polymer battery.
    • Pins: +, -
  5. 2-Pin Push Switch

    • Description: A simple push-button switch.
    • Pins: Input +, Output +
  6. LED: Two Pin (Red)

    • Description: A red LED with two pins.
    • Pins: cathode, anode
  7. Diode

    • Description: A semiconductor device that allows current to flow in one direction.
    • Pins: cathode, anode
  8. Resistors

    • Description: Various resistors used for current limiting and voltage division.
    • Pins: pin1, pin2
    • Properties:
      • Resistance: 1000 Ohms
      • Resistance: 10000 Ohms (multiple instances)
  9. Terminal Block 12

    • Description: A terminal block with 12 connection points.
    • Pins: T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, L1, L2, L3, L4, L5, L6, L7, L8, L9, L10, L11, L12

Wiring Details

Arduino Nano

LoRa Ra-02 SX1278

LiPo Battery Charger Module

3.7V Battery

2-Pin Push Switch

LED: Two Pin (Red)

Diode

Resistors

Terminal Block 12

Documented Code

#include <NewPing.h>
#include <LiquidCrystal_I2C.h>
#include <SPI.h>
#include <LoRa.h>

LiquidCrystal_I2C lcd(0x27, 16, 2);
String inString = "";
int counter = 0;

// Pinout on Arduino Nano
// LoRa module > Arduino: GND:GND, GND:GND, 3.3V:3.3V, RST:D9, DI00:D2, NSS:D10, MOSI:D11, MISO:D12, SCK:D13
// LCD 16x2 > Arduino: GND:GND, 5V:5V, SDA:A4, SCL:A5

void setup() {
  // initialize display
  lcd.init();
  lcd.backlight();
  lcd.setCursor(0, 0);

  // Begin Serial communication at a baudrate of 9600:
  Serial.begin(9600);
  while (!Serial);
  Serial.println("LoRa Receiver");
  if (!LoRa.begin(433E6)) {
    Serial.println("Starting LoRa failed!");
    while (1);
  }
  LoRa.setSpreadingFactor(12);
  LoRa.setSignalBandwidth(62.5E3);
}

void loop() {
  int packetSize = LoRa.parsePacket();
  if (packetSize) {
    // received a packet
    Serial.println("");
    Serial.println(".................");
    Serial.println("Received packet: ");

    // read packet
    inString