RS485LP
PublicLoading…
RS-485LP (Low Power RS485 Node)
RS-485LP is an open-source RS485 converter featuring a custom PCB and optimized PlatformIO firmware. It is designed to minimize power consumption for battery-operated sensors and remote monitoring systems.
🔗 Official Project Website: https://belenseptian.github.io/RS485LP/
📟 Board Design Preview
Below are the top and bottom views of the RS-485LP PCB.
| Top View (Components) | Bottom View (Traces) |
|---|---|
🚀 Features
- Sleep & Shutdown Optimization: Optimized for deep-sleep and hardware shutdown modes to achieve micro-amp current draw during periods of inactivity.
- RS485 Protocol: Reliable differential signaling for long-range data transmission.
- PlatformIO Integrated: Easy-to-compile and upload firmware using VS Code.
- Compact Form Factor: Small PCB footprint suitable for tight enclosures.
🛠 Hardware Fabrication
1. Obtain KiCad Files
The PCB design is created using KiCad. You can find the project files in the pcb/ directory.
- Clone this repository to get the full KiCad project.
- Open the project in KiCad to view the schematic or modify the layout.
2. Ordering from PCBWay (or similar)
Most modern PCB manufacturers allow you to upload the KiCad file directly:
- Option A (Direct): Upload the
.kicad_pcbfile from thepcb/folder directly to PCBWay's Instant Quote. - Option B (Manual Gerber Export): - In KiCad, go to File > Fabrication Outputs > Gerbers (.gbr).
- Generate the drill files and zip all outputs together.
- Upload the resulting
.zipfile to the manufacturer.
💻 Software Setup
This project uses PlatformIO inside Visual Studio Code.
Prerequisites
- VS Code: Download here
- PlatformIO IDE Extension: Install this via the VS Code Extensions marketplace.
Project Installation
- Clone the repository:
git clone https://github.com/belenseptian/RS485LP.git - Open VS Code and go to PlatformIO Home > Open Project.
- Navigate to the
firmware/folder and select it.
📤 Uploading & Testing Sleep Mode
- Connect Hardware: Connect your board to your computer using a USB-to-Serial adapter.
- Build & Upload: Use the Checkmark (✅) to compile and the Arrow (➡️) to flash.
- Verify Shutdown:
- Open the Serial Monitor (🔌) (Baud rate:
115200). - The monitor should display "Entering Sleep Mode..." or "Shutting Down...".
- Use a Multimeter or Power Profiler to measure the current draw; it should drop significantly as the MCU enters the deep sleep/shutdown state.
- Open the Serial Monitor (🔌) (Baud rate:
- Wake-up Trigger: Ensure you have configured the wake-up source (e.g., Timer or External Interrupt on the RS485 RX pin).
🔌 Wiring Diagram
| Pin Name | Description | Connection |
|---|---|---|
| VCC | Power Input | Depend on the sensor specifications |
| GND | Ground | Ground |
| A | RS485 Data+ | Connect to Bus A |
| B | RS485 Data- | Connect to Bus B |
📂 Project Structure
RS-485LP/
├── firmware/ # PlatformIO project files
│ ├── src/ # Main application code (Sleep/Shutdown logic)
│ └── platformio.ini # Project configuration
├── pcb/ # KiCad project files (.kicad_pcb, .kicad_sch)
├── docs/ # Datasheets and additional documentation
└── README.md # This file
📜 License
This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.
🤝 Contributing
Contributions are welcome! If you have suggestions for better power-gating or further reducing shutdown current, feel free to open an Issue or submit a Pull Request.
Developed by Belen Septian
No comments yet. Be the first to ask about this board.