# ESP Embassy LoRa Project

Welcome to the **ESP Embassy LoRa** project! This is a working example of how to configure an AP using embassy.

## Features

## Features

- Demonstrates LoRa sending and receiving functionality.
- Tested on a LoRa32 T3 v1.6.1 board.
- Adapted for the SX1276 module in New Zealand.
- Includes integration with an SSD1306 display for send and receive status.
- Based on the [lora-rs project](https://github.com/lora-rs/lora-rs/tree/main/examples/esp32).

 
## Requirements
- [espup](https://github.com/esp-rs/espup) for setting up the ESP32 Rust environment.
- [Rust](https://www.rust-lang.org/) (latest stable version recommended).
- A LoRa32 T3 v1.6.1 board with an SX1276 LoRa module.
- An SSD1306-compatible display (optional, for status updates).

## Installation

1. Clone the repository:
    ```bash
    git clone https://github.com/bibble235/esp-lora.git
    ```

2. Navigate to the project directory:
    ```bash
    cd esp-lora
    ```

## Usage

1. For receiving

Build and run the application with the receiver application:
```bash
ESPFLASH_PORT=/dev/ttyACM0 cargo run --bin receive
```

2. For sending 

Build and run the application with the send application:
```bash
ESPFLASH_PORT=/dev/ttyACM1 cargo run --bin send
```

## License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

## Demonstration

Below is a screenshot of a Lora32 T3 v1.6.1 running this application:

![Screenshot of a Lora32 T3 v1.6.1 running this app.](./assets/images/two_loras.jpg)

## Contact

For questions or feedback, please contact [iwiseman@bibble.co.nz](mailto:iwiseman@bibble.co.nz).

---

![Rust](https://img.shields.io/badge/Rust-Language-black?logo=rust&logoColor=white)
![ESP32](https://img.shields.io/badge/ESP32-Microcontroller-blue)
![LoRa](https://img.shields.io/badge/LoRa-Wireless-green?logo=wifi&logoColor=white)