This directory contains all hardware-related documentation, 3D models, schematics, and assembly procedures for the LAN IoT project.
Disclosure: As an Amazon Associate I earn from qualifying purchases made with links from the products on this document.
hardware/
├── iotbox-v1/ # IoTBox Version 1 enclosure
├── iotbox-v2/ # IoTBox Version 2 enclosure (latest)
├── soldering-rig/ # Assembly fixture for hardware assembly
├── assembly/ # Assembly procedures and instructions
└── bom.md # Bill of Materials (Coming Soon)
First generation enclosure design for the ESP32-S3 based LAN IoT device.
- Status: Superseded by V2
- Files: STL for 3D printing, FreeCAD source files
- View Details
Second generation enclosure with improvements based on V1 feedback.
- Status: Current production design
- Files: STL for 3D printing, FreeCAD source files
- View Details
Custom fixture for assembling and soldering LAN IoT hardware.
- Purpose: Ensures consistent assembly quality
- Files: STL for 3D printing, FreeCAD source files
- View Details
A comprehensive list of all components needed to build a LAN IoT device.
- View BOM (Coming Soon)
Step-by-step instructions for assembling the hardware.
- Assembly Guide - Includes PDF procedures and reference photos
All enclosure files are provided in STL format for 3D printing.
- Material: PLA or PETG
- Layer Height: 0.2mm
- Infill: 20%
- Supports: May be required for some parts
- Print Speed: Standard (50-60mm/s)
FreeCAD files (.FCStd) are provided for customization. You can modify dimensions, add mounting holes, or adapt the design for your specific needs.
Software Required: FreeCAD (Free and Open Source)
- Module: Seed Studio XIAO ESP32S3 or compatible
- Flash: 2MB minimum
- PSRAM: 2MB QSPI (recommended)
- GPIO Requirements:
- GPIO0: Button input (built-in on most dev boards)
- GPIO18, GPIO19: UART2 (RS-232 interface)
- Perfboard: 47x34mm for component mounting
- RS232 Module: RS232 to TTL Serial Port Module
- Tactile Button: Right angle tactile switch
- Pin Headers: 6 PIN Single Row Female connectors
- Jumper Wires: Connecting cables for breadboard
- Input: 5V DC via USB-C or external power
- Current: 500mA minimum (1A recommended)
- Backup: Optional battery backup capability
| GPIO | Function | Description |
|---|---|---|
| GPIO0 | Button Input | System control (wipe/reset, test messages) |
| GPIO18 | UART2 RX | RS-232 receive data |
| GPIO19 | UART2 TX | RS-232 transmit data |
| USB | Power/Programming | USB-C for power and firmware flashing |
Hardware reference photos are available in the images directory, including:
- Assembled devices
- Component placement
- Cable routing
- Installation examples
We welcome hardware contributions! If you have:
- Improved enclosure designs
- Custom mounting solutions
- Alternative form factors
- New assembly fixtures
Please see our Contributing Guidelines for how to submit your designs.
All hardware designs in this repository are licensed under:
- Hardware Files: CERN Open Hardware License v2.0 or Apache 2.0
- Documentation: Apache License 2.0
See LICENSE for details.
- Core Firmware - ESP32-S3 firmware setup
- Quick Start Guide - Get started quickly
- Troubleshooting - Hardware issues
Questions? Contact via GitHub Issues or LinkedIn