Skip to the content
2 layers64 × 24 mmOpen lora com, the printed circuit board in 3D

This project is a compact, embedded hardware system designed to securely transmit data over LoRa. Built around the STM32F103 microcontroller, this system supports real-time SHA encryption, flexible protocol configuration, and communication via a CH340 USB-to-UART interface.

Size
64 × 24 mm
Copper layers
2
Thickness
1.6 mm
Parts
36
Nets
64
Pads
170
Tracks, vias
397, 71
Pours
1
Routed
Yes
KiCad
KiCad 8.0 (file 20240108)
Created
15 May 2025
Updated
12 Jun 2025

Overview

Open lora com is an open-source printed circuit board by rmingon, from the rmingon/open-lora-com repository on GitHub. It is a 2-layer board of 64 × 24 mm with 36 parts on 64 nets, routed with 397 tracks and 71 vias.

It is built around the CH340C and RFM95W-868S2. Its parts include 13 capacitors, 9 resistors, 4 ICs, 4 connectors and 2 diodes. It belongs with the radio and wireless and interfaces and adapters boards and the STM32 boards of this library.

Main components

2

README

README.md

STM32F103 LoRa Secure Transmitter

This project is a compact, embedded hardware system designed to securely transmit data over LoRa. Built around the STM32F103 microcontroller, this system supports real-time SHA encryption, flexible protocol configuration, and communication via a CH340 USB-to-UART interface.

Features

  • MCU: STM32F103C8T6
  • LoRa Module: RFM95W-868S2
  • USB Communication: CH340C USB-to-UART bridge
  • Encryption: Real-time SHA key-based encryption
  • LoRa Configurable: Change frequency, bandwidth, spreading factor, and power
  • User Input: Push buttons for RESET and BOOT
  • UART Configuration: Baud rate, data bits, and parity selectable
  • Power Supply:
    • USB input: 5V
    • Onboard LDO regulator: 3.3V for logic and LoRa
  • External Interfaces:
    • JTAG/SWD for programming/debugging
    • UART via USB
    • Antenna SMA connector

Hardware Overview

Main Components

ComponentDescription
U5STM32F103C8T6 - 32-bit ARM Cortex-M3 MCU
U1RFM95W LoRa module (868 MHz)
U4CH340C USB-UART bridge
U2LM317 3.3V voltage regulator
Y18 MHz crystal for MCU clock
J2USB Type-A input
J4SMA antenna connector

Circuit Blocks

  • LoRa Communication: SPI interface between STM32 and RFM95
  • Encryption: SHA operations handled on-chip with optimized library routines
  • Programming/Debugging: SWD header and serial boot configuration
  • Indicators: Two user-controllable LEDs
  • User Controls: BOOT and RESET tactile switches

Firmware & Software

The firmware handles:

  • Initialization of the LoRa module (SX1276/SX1278 compatible)
  • Serial communication over CH340
  • SHA-256 encryption of user data before transmission
  • Real-time user configuration parsing from USB input

A PC-side software GUI (in development) will provide:

  • Serial interface via CH340
  • Baud rate and LoRa parameter configuration
  • SHA key input
  • File/data input for transmission

Configuration Parameters

LoRa Settings

  • Frequency: 868 MHz (default)
  • Spreading Factor: SF7–SF12
  • Bandwidth: 125 kHz, 250 kHz, 500 kHz
  • Coding Rate: 4/5, 4/6, 4/7, 4/8
  • Preamble Length: User-defined

UART Settings

  • Baud Rate: 9600 / 19200 / 38400 / 57600 / 115200
  • Stop Bits: 1 / 2
  • Parity: None / Even / Odd

Security

  • SHA Key: 128–256 bit user-defined key via software
  • Mode: One-way hashing of data payloads before LoRa TX

Getting Started

  1. Connect via USB to your PC.
  2. Flash firmware via SWD or UART bootloader.
  3. Launch software and connect to the detected COM port.
  4. Configure LoRa & UART settings and set your SHA key.
  5. Transmit securely over LoRa.

Gallery

PCB Layout

PCB

Schematic

Schematic

3D Model

3D

Dependencies

  • STM32 HAL or LL library
  • SHA256 library (mbedTLS or custom-optimized)
  • LoRa library (Semtech-compatible)
  • CH340 driver (auto-install on most systems)

License

This project is licensed under the MIT License — use it, modify it, and share it freely.

Parts

36
QtyValueFootprintReferences
610kResistor_SMD:R_0603_1608MetricR1, R2, R3, R4, R6, R10
4100nCapacitor_SMD:C_0603_1608MetricC6, C7, C8, C10
3C_SmallCapacitor_SMD:C_0603_1608MetricC1, C2, C3
2100kResistor_SMD:R_0603_1608MetricR8, R9
21uCapacitor_SMD:C_0603_1608MetricC9, C13
220pCapacitor_SMD:C_0603_1608MetricC4, C5
2CCapacitor_SMD:C_0603_1608MetricC11, C12
2LEDDiode_SMD:D_0603_1608MetricD1, D2
2SW_PushButton_Switch_SMD:SW_SPST_CK_RS282G05A3SW1, SW2
11MResistor_SMD:R_0603_1608MetricR7
1BOOTConnector_PinHeader_2.54mm:PinHeader_2x03_P2.54mm_VerticalJ3
1CH340CPackage_SO:SOIC-16_3.9x9.9mm_P1.27mmU4
1Conn_CoaxialConnector_Coaxial:SMA_Samtec_SMA-J-P-H-ST-EM1_EdgeMountJ4
1CrystalCrystal:Crystal_SMD_HC49-SDY1
1LM317_SOT-223-3.3VPackage_TO_SOT_SMD:SOT-223-3_TabPin2U2
1RFM95W-868S2RF_Module:HOPERF_RFM9XW_SMDU1
1STM32F103C6TxPackage_QFP:LQFP-48_7x7mm_P0.5mmU5
1SWDConnector_PinHeader_2.54mm:PinHeader_1x05_P2.54mm_VerticalJ1
1SolderJumper_3_Bridged12Jumper:SolderJumper-3_P1.3mm_Bridged12_RoundedPad1.0x1.5mmJP1
1USB_AConnector_USB:USB_Micro-B_Molex-105017-0001J2

Similar boards

  • 2 layers40 × 78 mmHardware v2, the printed circuit board in 3D

    Hardware v2

    rmingon/Falcon-Edge

    A 3D-printable flying-wing airframe with a custom ESP32 flight computer—open hardware you can solder, screw together, and fly.

    56 parts11
  • 2 layers66 × 99.7 mmAirMon, the printed circuit board in 3D

    AirMon

    SG-O/airMon

    ESP32 based air quality monitor PCB

    130 parts2CC-BY-4.0
  • 2 layers74.5 × 89.8 mmA3mesh kicad project, the printed circuit board in 3D

    A3mesh kicad project

    alcaaron/tfg_hardware

    My bachelor's thesis hardware part.

    63 parts
  • 2 layers47.5 × 50.3 mmEsp32-lora, the printed circuit board in 3D

    Esp32-lora

    rmingon/esp32-lora

    esp32 with lora rfm95 and nunchuck connector

    28 parts
  • 4 layers66.3 × 40.2 mmCm4 drone, the printed circuit board in 3D

    Cm4 drone

    dridri/bcflight

    Raspberry Pi based drone flight controller and remote control

    56 parts175GPL-3.0
  • 4 layers83 × 109 mmD4 small pcb panel, the printed circuit board in 3D

    D4 small pcb panel

    unsurv/unsurv-offline

    Offline portable GNSS device based on the ESP32

    522 parts72
  • 2 layers57 × 35.5 mmWARS Birdhouse-2, the printed circuit board in 3D

    WARS Birdhouse-2

    brucemack/WARS-Birdhouse

    LoRa Mesh Network Node

    22 parts66GPL-3.0
  • 2 layers45 × 53 mmLoRa Node, the printed circuit board in 3D

    LoRa Node

    cernohorsky/LoRa-Node

    Simple LoRa Node based on Arduino Pro mini with RFM95W module and PCB antenna.

    35 parts66

Questions

How big is the Open lora com PCB?

It measures 64 × 24 mm and has 2 copper layers, 1.6 mm thick.

What parts does the Open lora com use?

36 parts, built around the CH340C and RFM95W-868S2. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.

Where can I download the Open lora com KiCad files?

From the rmingon/open-lora-com repository on GitHub, at the commit this page was made from: the board is hardware/hardware.kicad_pcb and its schematic hardware/hardware.kicad_sch. PCBKit opens the board in the browser, with nothing to install.

Can I use the Open lora com design in my own project?

Its repository states no licence, so its author keeps all rights: ask rmingon before reusing the design.