Version: 0.1.0 | Last Updated: 2025-12-18
This document describes the hardware requirements and assembly instructions for building a MoMo-Nexus communication hub.
Best for: Full-featured deployment, development, testing
┌─────────────────────────────────────────────────────────────────────────────┐
│ PI-BASED NEXUS │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ RASPBERRY PI 4/5 │ │
│ │ │ │
│ │ ┌─────────────────────────────────────────────────────────────┐ │ │
│ │ │ GPIO HEADER │ │ │
│ │ │ [not used - all peripherals via USB] │ │ │
│ │ └─────────────────────────────────────────────────────────────┘ │ │
│ │ │ │
│ │ ┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐ │ │
│ │ │ USB1 │ │ USB2 │ │ USB3 │ │ USB4 │ │ │
│ │ │ LoRa │ │ 4G │ │ GPS │ │ SSD │ │ │
│ │ │ T-Beam │ │ SIM7600│ │ U-blox │ │ │ │ │
│ │ └────────┘ └────────┘ └────────┘ └────────┘ │ │
│ │ │ │
│ │ Built-in: WiFi 5GHz/2.4GHz | Bluetooth 5.0 | Ethernet │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
Best for: Portable deployment, battery-powered, outdoor
┌─────────────────────────────────────────────────────────────────────────────┐
│ ESP32-BASED NEXUS │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ┌─────────────────────────────────────────────────────────────────────┐ │
│ │ CUSTOM PCB / MODULES │ │
│ │ │ │
│ │ ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ │
│ │ │ ESP32-S3 │ │ SX1262 │ │ SIM7600G │ │ │
│ │ │ │ │ │ │ │ │ │
│ │ │ • 240 MHz │ │ • LoRa │ │ • 4G LTE │ │ │
│ │ │ • WiFi │ │ • 868/915 MHz │ │ • GPS │ │ │
│ │ │ • BLE 5.0 │ │ • 15+ km range │ │ • Global │ │ │
│ │ └─────────────────┘ └─────────────────┘ └─────────────────┘ │ │
│ │ │ │
│ │ ┌─────────────────────────────────────────────────────────────┐ │ │
│ │ │ POWER SYSTEM │ │ │
│ │ │ [18650 x2] ──► [TP4056] ──► [3.3V LDO] ──► System │ │ │
│ │ │ ──► [Solar Panel 6V/2W] │ │ │
│ │ └─────────────────────────────────────────────────────────────┘ │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
| Component | Model | Purpose | Price | Link |
|---|---|---|---|---|
| SBC | Raspberry Pi 4 (4GB) | Main processor | ~$55 | raspberrypi.com |
| LoRa | Lilygo T-Beam v1.2 | LoRa transceiver + GPS | ~$35 | lilygo.cc |
| 4G Modem | SIM7600E-H Hat | LTE connectivity | ~$45 | waveshare.com |
| GPS | (included in T-Beam) | Location | - | - |
| Storage | 256GB NVMe SSD | Data storage | ~$30 | - |
| USB Adapter | NVMe to USB 3.0 | SSD connection | ~$15 | - |
| LoRa Antenna | 868/915 MHz, SMA | Extended range | ~$10 | - |
| 4G Antenna | LTE, SMA x2 | Better signal | ~$15 | - |
| Case | Weatherproof IP65 | Outdoor protection | ~$25 | - |
| Power | 5V 3A USB-C | Power supply | ~$10 | - |
| SD Card | 32GB Class 10 | Boot drive | ~$10 | - |
| Total | ~$250 |
| Component | Model | Purpose | Price |
|---|---|---|---|
| MCU | ESP32-S3 DevKit | Main processor | ~$10 |
| LoRa | SX1262 module | LoRa transceiver | ~$15 |
| 4G | SIM7600G-H mini | LTE + GPS | ~$40 |
| Battery | 18650 x2 + holder | Power | ~$10 |
| Charger | TP4056 module | Battery charging | ~$2 |
| Solar | 6V 2W panel | Solar charging | ~$8 |
| Case | IP65 junction box | Protection | ~$10 |
| Antennas | LoRa + 4G + GPS | Range | ~$20 |
| Total | ~$115 |
┌─────────────────────────────────────────────────────────────────────────────┐
│ PI CONNECTIONS │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ RASPBERRY PI 4 │
│ ══════════════ │
│ │
│ USB 3.0 Port 1 ─────► T-Beam (LoRa) │
│ └── /dev/ttyUSB0 or /dev/ttyACM0 │
│ │
│ USB 3.0 Port 2 ─────► SIM7600 (via USB) │
│ └── /dev/ttyUSB1 │
│ │
│ USB 3.0 Port 3 ─────► NVMe SSD │
│ └── /dev/sda │
│ │
│ USB 2.0 Port ───────► Available for expansion │
│ │
│ Internal WiFi ──────► wlan0 (management/fallback) │
│ │
│ Internal BLE ───────► hci0 (local device comms) │
│ │
│ Ethernet ───────────► eth0 (optional wired connection) │
│ │
│ GPIO (optional): │
│ • GPIO 17 ─────► Status LED (green) │
│ • GPIO 27 ─────► Alert LED (red) │
│ • GPIO 22 ─────► Buzzer │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────────────────┐
│ ESP32-S3 CONNECTIONS │
├─────────────────────────────────────────────────────────────────────────────┤
│ │
│ ESP32-S3 │
│ ════════ │
│ │
│ SX1262 (LoRa) - SPI │
│ ─────────────────── │
│ GPIO 5 ─────► NSS (CS) │
│ GPIO 18 ─────► SCK │
│ GPIO 23 ─────► MOSI │
│ GPIO 19 ─────► MISO │
│ GPIO 27 ─────► RESET │
│ GPIO 26 ─────► DIO1 (IRQ) │
│ GPIO 35 ─────► BUSY │
│ │
│ SIM7600G - UART │
│ ─────────────── │
│ GPIO 16 ─────► TX (SIM RX) │
│ GPIO 17 ─────► RX (SIM TX) │
│ GPIO 4 ─────► PWRKEY │
│ GPIO 25 ─────► STATUS │
│ │
│ Power │
│ ───── │
│ VIN ─────────► 5V from battery/solar │
│ GND ─────────► Common ground │
│ 3V3 ─────────► SX1262 VCC │
│ │
│ Status LEDs │
│ ─────────── │
│ GPIO 2 ─────► Built-in LED (status) │
│ GPIO 12 ─────► External LED (LoRa TX) │
│ GPIO 13 ─────► External LED (4G status) │
│ │
└─────────────────────────────────────────────────────────────────────────────┘
# Download Raspberry Pi OS Lite (64-bit)
# Use Raspberry Pi Imager
# Configure:
# - Hostname: nexus
# - Enable SSH
# - Set WiFi credentials
# - Set username/password1. Insert SD card
2. Connect SSD via USB 3.0
3. Connect T-Beam via USB 3.0
4. Connect SIM7600 via USB
5. Attach antennas (BEFORE powering on!)
6. Insert SIM card in SIM7600
7. Connect power supply
# SSH into Pi
ssh pi@nexus.local
# Update system
sudo apt update && sudo apt upgrade -y
# Install dependencies
sudo apt install -y python3-pip python3-venv git
# Clone Nexus
git clone https://github.com/Momo-Master/MoMo-Nexus.git
cd MoMo-Nexus
# Create virtual environment
python3 -m venv venv
source venv/bin/activate
# Install requirements
pip install -r requirements.txt# Find device ports
ls -la /dev/ttyUSB* /dev/ttyACM*
# Expected output:
# /dev/ttyUSB0 -> T-Beam (LoRa)
# /dev/ttyUSB1 -> SIM7600
# Test T-Beam
screen /dev/ttyUSB0 115200
# Test SIM7600
screen /dev/ttyUSB1 115200
# Type: AT
# Should respond: OK# Format SSD (if needed)
sudo mkfs.ext4 /dev/sda1
# Mount SSD
sudo mkdir -p /data
sudo mount /dev/sda1 /data
# Add to fstab
echo '/dev/sda1 /data ext4 defaults 0 2' | sudo tee -a /etc/fstab
# Set permissions
sudo chown -R pi:pi /data┌─────────────────────────────────────────────────────────────────┐
│ LORA ANTENNA │
├─────────────────────────────────────────────────────────────────┤
│ │
│ Frequency: 868 MHz (EU) or 915 MHz (US) │
│ Type: Omnidirectional whip or collinear │
│ Gain: 3-6 dBi recommended │
│ Connector: SMA male │
│ │
│ Placement: │
│ • Vertical orientation │
│ • As high as possible │
│ • Away from metal objects │
│ • Outside enclosure (or use IP65 antenna) │
│ │
│ ⚠️ NEVER power on without antenna connected! │
│ This can damage the LoRa radio. │
│ │
└─────────────────────────────────────────────────────────────────┘
┌─────────────────────────────────────────────────────────────────┐
│ 4G ANTENNA │
├─────────────────────────────────────────────────────────────────┤
│ │
│ Type: LTE full-band │
│ Bands: 700-2700 MHz │
│ Connectors: SMA male x2 (MIMO) │
│ │
│ Placement: │
│ • Both antennas connected (MIMO) │
│ • Separated by at least 10cm │
│ • Different polarization if possible │
│ │
│ Signal Check: │
│ AT+CSQ # Signal strength (0-31, higher=better) │
│ AT+CPSI? # Current network info │
│ │
└─────────────────────────────────────────────────────────────────┘
5V 3A USB-C Power Supply
└── Direct to Raspberry Pi
Pros: Simple, reliable
Cons: Needs AC outlet
┌─────────────────────────────────────────────────────────────────┐
│ SOLAR SETUP │
├─────────────────────────────────────────────────────────────────┤
│ │
│ Solar Panel (12V, 10W+) │
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ MPPT Charge │ │
│ │ Controller │ │
│ └──────┬──────┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ 12V Battery │ (12V 12Ah = ~24 hour runtime) │
│ │ (LiFePO4) │ │
│ └──────┬──────┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ 5V 3A │ │
│ │ Buck Conv │ │
│ └──────┬──────┘ │
│ │ │
│ ▼ │
│ Raspberry Pi │
│ │
└─────────────────────────────────────────────────────────────────┘
AC Power ──► UPS with battery backup ──► Raspberry Pi
Recommended:
• APC Back-UPS 400VA
• Any USB-C PD power bank with pass-through
┌─────────────────────────────────────────────────────────────────┐
│ OUTDOOR ENCLOSURE │
├─────────────────────────────────────────────────────────────────┤
│ │
│ Requirements: │
│ • IP65 or higher rating │
│ • Ventilation holes (with filters) │
│ • Cable glands for antenna/power │
│ • UV resistant material │
│ • Mounting holes │
│ │
│ Thermal Management: │
│ • Operating range: -10°C to +50°C │
│ • Add heatsinks to Pi │
│ • Consider active cooling in hot climates │
│ • Shade from direct sunlight │
│ │
│ Mounting: │
│ • Pole mount (highest point) │
│ • Wall mount (protected location) │
│ • Ground stake (temporary) │
│ │
└─────────────────────────────────────────────────────────────────┘
□ SD card flashed and configured
□ All USB devices connected
□ All antennas attached (before power!)
□ SIM card inserted
□ Power supply connected
□ SSH access working
□ T-Beam responding on serial
□ SIM7600 responding to AT commands
□ WiFi connected
□ Storage mounted
□ Nexus software installed
□ All channels tested
MoMo-Nexus Hardware Guide v0.1.0