Skip to content

Alteriom/alteriom-ebyte-lora-e220-library

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

124 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Alteriom EByte LoRa E220 Series Library

Build and Test Release Arduino Library Manager PlatformIO


Experience our modern, interactive documentation with live search, mobile-friendly design, and copy-paste Arduino examples!

Documentation Preview Quick Start API Reference Doxygen API


This is the Alteriom fork of the EByte LoRa E220 Series Library, enhanced with modern CI/CD practices, automated releases, and improved package management.

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

πŸ“– Community Wiki

Our GitHub Wiki provides community-driven content that supplements the main documentation:

πŸ’‘ Note: For complete documentation and getting started guides, visit our πŸ“š Modern Documentation Site

πŸ’‘ Tip: For the most comprehensive and up-to-date documentation, start with our πŸ“š Live Documentation

πŸš€ What's New in the Alteriom Fork

  • βœ… Automated CI/CD with GitHub Actions
  • βœ… Automatic releases with semantic versioning
  • βœ… Arduino Library Manager ready
  • βœ… PlatformIO fully supported
  • βœ… NPM package for MCP server integration
  • βœ… Comprehensive testing across multiple platforms
  • βœ… Enhanced documentation and examples

πŸ“‹ Features

  • Long Range Communication: 5-10km range with LLCC68 chipset
  • Multi-Platform Support: Arduino, ESP32, ESP8266, STM32, Raspberry Pi Pico, SAMD
  • Power Management: Wake-on-Radio (WOR) support for low power applications
  • Flexible Communication: Transparent, fixed, and broadcast messaging modes
  • RSSI Monitoring: Signal strength measurement and monitoring
  • Easy Configuration: Simple API for device setup and management

πŸ› οΈ Installation

Arduino Library Manager

  1. Open Arduino IDE
  2. Go to Tools β†’ Manage Libraries
  3. Search for "Alteriom_EByte_LoRa_E220"
  4. Click Install

PlatformIO

Add to your platformio.ini:

lib_deps = 
    Alteriom/Alteriom_EByte_LoRa_E220@^1.0.0

Manual Installation

  1. Download the latest release from GitHub Releases
  2. Extract to your Arduino libraries folder
  3. Restart Arduino IDE

NPM Package (Node.js/MCP Integration)

NPM Registry (Public):

npm install alteriom-ebyte-lora-e220

GitHub Packages (Requires Authentication):

# Configure registry
echo "@alteriom:registry=https://npm.pkg.github.com" >> .npmrc
# Install package
npm install @alteriom/alteriom-ebyte-lora-e220

πŸ”Œ Quick Start

#include "Alteriom_EByte_LoRa_E220.h"

// Initialize with Serial pins (adjust for your board)
LoRa_E220 e220ttl(&Serial2, 15, 21, 19); // ESP32: RX, TX, AUX, M0, M1

void setup() {
    Serial.begin(9600);
    e220ttl.begin();
    
    // Get current configuration
    ResponseStructContainer c = e220ttl.getConfiguration();
    Configuration configuration = *(Configuration*) c.data;
    
    Serial.println("LoRa E220 initialized successfully!");
    c.close();
}

void loop() {
    // Send a message
    ResponseStatus rs = e220ttl.sendMessage("Hello from Alteriom LoRa!");
    
    delay(5000);
}

πŸ“š Examples

The library includes comprehensive examples:

  • 01_getConfiguration - Read device configuration
  • 01_setConfiguration - Configure device parameters
  • 02_sendTransparentTransmission - Simple message sending
  • 04_sendFixedTransmission - Targeted message delivery
  • 05_sendFixedTransmissionStructure - Send structured data
  • 06_sendWORMessage - Wake-on-Radio messaging
  • 07_receiveMessages - Message reception handling

πŸ”§ Supported Platforms

Platform Framework Status
Arduino UNO/Nano Arduino βœ… Tested
ESP32 Arduino/ESP-IDF βœ… Tested
ESP8266 Arduino βœ… Tested
STM32 Arduino/STM32Cube βœ… Tested
Raspberry Pi Pico Arduino βœ… Tested
SAMD21/SAMD51 Arduino βœ… Tested

πŸ—οΈ Building and Testing

PlatformIO

# Build for all platforms
pio run

# Run tests
pio test

# Build specific platform
pio run -e esp32dev

Arduino CLI

# Compile example
arduino-cli compile --fqbn esp32:esp32:esp32 examples/01_getConfiguration/

πŸ“– Documentation

Experience our modern, interactive documentation with:

✨ Beautiful responsive design - Works perfectly on desktop, tablet, and mobile
πŸ” Live search - Find what you need instantly
πŸ’‘ Interactive examples - Copy-paste ready Arduino code
🎯 Guided tutorials - Step-by-step instructions for every platform
πŸ“± Mobile-friendly - Read docs anywhere, anytime
⚑ Fast loading - Optimized for quick access


🌟 Modern Documentation Features

This library features world-class documentation built with modern web technologies:

  • πŸ“š Complete API Reference: Interactive documentation with live examples
  • πŸš€ Modern Web Interface: Beautiful, responsive design powered by Docsify
  • πŸ’‘ Step-by-Step Guides: 8+ Arduino sketches with detailed explanations
  • πŸ”§ Platform-Specific Setup: Tailored instructions for each supported platform
  • ⚑ 5-Minute Quick Start: Get your first LoRa message working fast
  • πŸ” Full-Text Search: Find any information instantly
  • πŸ“± Mobile Optimized: Perfect experience on any device

πŸ“‹ Quick Access Links

Section Description Link
🏠 Home Main documentation portal πŸ“š Live Docs
πŸš€ Quick Start Get running in 5 minutes ⚑ Start Here
πŸ“– API Reference Complete method documentation οΏ½ API Docs
πŸ’» Examples Working Arduino code πŸ“‹ Examples
βš™οΈ Configuration Device setup guide πŸ”§ Config
πŸ†˜ Troubleshooting Solutions to common issues πŸ› οΈ Help

🎯 LoRa-Specific Documentation

Wake-on-Radio (WOR) Power Management

Maximize battery life in your LoRa projects with Wake-on-Radio mode:

Range Optimization Strategies

Achieve maximum communication range (5-10km) with proper configuration:

  • πŸ“ Range Optimization Guide - Maximize transmission distance
  • πŸ”§ Configuration Guide - Optimize power, speed, and channel settings
  • πŸ“Ά Wiring Guide - Proper antenna connections
  • Key Factors:
    • Transmission Power: Up to 30dBm (1W) configurable
    • Air Data Rate: Lower rates = longer range (1.2kbps to 62.5kbps)
    • Antenna Quality: Use proper 50Ξ© antennas matched to frequency
    • Line of Sight: Clear path significantly improves range
    • Frequency Band: Choose appropriate band (433MHz, 868MHz, 915MHz)

Communication Modes

Choose the right mode for your application:

  • πŸ”„ Transparent Mode - Simple peer-to-peer communication

    • No address configuration needed
    • Broadcast to all devices on same channel
    • Best for: Simple point-to-point links
  • 🎯 Fixed Mode - Addressed messaging with channel control

    • Target specific devices by address
    • Control channel and power per message
    • Best for: Complex networks, multiple nodes
  • πŸ“’ Broadcast Mode - One-to-many communication

    • Send to all devices simultaneously
    • Efficient for sensor networks
    • Best for: Environmental monitoring, alerts

Multi-Platform Support

Platform-specific guides for seamless integration:

LLCC68 Chipset Features

  • Frequency Bands: 433MHz, 868MHz, 915MHz (region-specific)
  • Range: 5-10km line-of-sight, 1-2km urban environments
  • Data Rates: 1.2kbps to 62.5kbps (configurable)
  • Power Output: Up to 30dBm (1W) maximum
  • Interface: UART (3.3V/5V compatible with level shifter)
  • Current: 100mA TX, 15mA RX, <10ΞΌA sleep mode

πŸ“š Documentation Highlights

🎯 Documentation Features

  • βœ… 100% API Coverage: Every method documented with examples
  • βœ… Multi-Platform: Arduino, ESP32, STM32, Pi Pico specific notes
  • βœ… Real Examples: Working code for every major feature
  • βœ… Error Handling: Comprehensive status codes and recovery
  • βœ… Performance Data: Range testing and power consumption
  • βœ… Auto-Generated: Always up-to-date with latest code changes

πŸ”„ Documentation Updates

Documentation is automatically updated on every code change:

Documentation

View Latest: https://alteriom.github.io/EByte_LoRa_E220_Series_Library/

πŸ“‘ Complete Documentation Index

For a comprehensive list of all documentation resources, including LoRa-specific guides, see: πŸ“š Documentation Index - Complete documentation reference with categorized links

🀝 Contributing

We welcome contributions! Please see our Contributing Guidelines for details.

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE.md file for details.

πŸ™ Acknowledgments

  • Renzo Mischianti - Original author and creator of the EByte LoRa E220 library
  • Original Repository: xreef/EByte_LoRa_E220_Series_Library
  • Alteriom Team - CI/CD enhancements and modern packaging

πŸ”— Links


Ready to get started? Check out our Quick Start Guide and start building your LoRa projects today!

About

Arduino LoRa EBYTE E220 LLCC68 device library complete and tested with Arduino, esp8266, esp32, STM32 and Raspberry Pi Pico (rp2040 boards)..

Resources

License

MIT, Unknown licenses found

Licenses found

MIT
LICENSE
Unknown
LICENSE.md

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors