FilaMan - Filament Management System
FilaMan is a filament management system for 3D printing. It uses ESP32 hardware for weight measurement and NFC tag management. Users can manage filament spools, monitor the status of the Automatic Material System (AMS) and make settings via a web interface. The system integrates seamlessly with Bambulab 3D printers and Spoolman filament management as well as the Openspool NFC-TAG format.
More Images can be found in the img Folder
or my website: FilaMan Website
german explanatory video: Youtube
Discord Server: https://discord.gg/my7Gvaxj2v
Now more detailed informations about the usage: Wiki
ESP32 Hardware Features
- Weight Measurement: Using a load cell with HX711 amplifier for precise weight tracking.
- NFC Tag Reading/Writing: PN532 module for reading and writing filament data to NFC tags.
- OLED Display: Shows current weight, connection status (WiFi, Bambu Lab, Spoolman).
- WiFi Connectivity: WiFiManager for easy network configuration.
- MQTT Integration: Connects to Bambu Lab printer for AMS control.
- NFC-Tag NTAG213 NTAG215: Use NTAG213, better NTAG215 because of enaught space on the Tag
Web Interface Features
- Real-time Updates: WebSocket connection for live data updates.
- NFC Tag Management:
- Write filament data to NFC tags.
- uses NFC-Tag Format of Openspool
- so you can use it with automatic Spool detection in AMS
- Manufacturer Tag Support: Automatic creation of Spoolman entries from manufacturer NFC tags (Learn more)
- Bambulab AMS Integration:
- Display current AMS tray contents.
- Assign filaments to AMS slots.
- Support for external spool holder.
- Spoolman Integration:
- List available filament spools.
- Filter and select filaments.
- Update spool weights automatically.
- Track NFC tag assignments.
- Supports Spoolman Octoprint Plugin
If you want to support my work, i would be happy to get a coffe
Manufacturer Tags Support
🎉 Exciting News! FilaMan now supports Manufacturer Tags - NFC tags that come pre-programmed directly from filament manufacturers!
First Manufacturer Partner: RecyclingFabrik
We're thrilled to announce that RecyclingFabrik will be the first filament manufacturer to support FilaMan by offering NFC tags in the FilaMan format on their spools!
Coming Soon: RecyclingFabrik spools will include NFC tags that automatically integrate with your FilaMan system, eliminating manual setup and ensuring perfect compatibility.
How Manufacturer Tags Work
When you scan a manufacturer NFC tag for the first time:
- Automatic Brand Detection: FilaMan recognizes the manufacturer and creates the brand in Spoolman
- Filament Type Creation: All material specifications are automatically added
- Spool Registration: Your specific spool is registered with proper weight and specifications
- Future Fast Recognition: Subsequent scans use fast-path detection for instant weight measurement
For detailed technical information: Manufacturer Tags Documentation
Benefits for Users
- ✅ Zero Manual Setup - Just scan and weigh
- ✅ Perfect Data Accuracy - Manufacturer-verified specifications
- ✅ Instant Integration - Seamless Spoolman compatibility
- ✅ Future-Proof - Tags work with any FilaMan-compatible system
Detailed Functionality
ESP32 Functionality
- Control and Monitor Print Jobs: The ESP32 communicates with the Bambu Lab printer to control and monitor print jobs.
- Printer Communication: Uses MQTT for real-time communication with the printer.
- User Interactions: The OLED display provides immediate feedback on the system status, including weight measurements and connection status.
Web Interface Functionality
- User Interactions: The web interface allows users to interact with the system, select filaments, write NFC tags, and monitor AMS status.
- UI Elements: Includes dropdowns for selecting manufacturers and filaments, buttons for writing NFC tags, and real-time status indicators.
Hardware Requirements
Components (Affiliate Links)
- ESP32 Development Board: Any ESP32 variant. Amazon Link
- HX711 5kg Load Cell Amplifier: For weight measurement. Amazon Link
- OLED 0.96 Zoll I2C white/yellow Display: 128x64 SSD1306. Amazon Link
- PN532 NFC NXP RFID-Modul V3: For NFC tag operations. Amazon Link
- NFC Tags NTAG213 NTAG215: RFID Tag Amazon Link
- TTP223 Touch Sensor (optional): For reTARE per Button/Touch Amazon Link
Pin Configuration
Component | ESP32 Pin |
---|---|
HX711 DOUT | 16 |
HX711 SCK | 17 |
OLED SDA | 21 |
OLED SCL | 22 |
PN532 IRQ | 32 |
PN532 RESET | 33 |
PN532 SDA | 21 |
PN532 SCL | 22 |
TTP223 I/O | 25 |
!! Make sure that the DIP switches on the PN532 are set to I2C
Use the 3V pin from the ESP for the touch sensor
The load cell is connected to most HX711 modules as follows:
E+ red
E- black
A- white
A+ green
Software Dependencies
ESP32 Libraries
WiFiManager
: Network configurationESPAsyncWebServer
: Web server functionalityArduinoJson
: JSON parsing and creationPubSubClient
: MQTT communicationAdafruit_PN532
: NFC functionalityAdafruit_SSD1306
: OLED display controlHX711
: Load cell communication
Installation
Prerequisites
- Software:
- PlatformIO in VS Code
- Spoolman instance
- Hardware:
- ESP32 Development Board
- HX711 Load Cell Amplifier
- Load Cell (weight sensor)
- OLED Display (128x64 SSD1306)
- PN532 NFC Module
- Connecting wires
Important Note
You have to activate Spoolman in debug mode, because you are not able to set CORS Domains in Spoolman yet.
# Enable debug mode
# If enabled, the client will accept requests from any host
# This can be useful when developing, but is also a security risk
# Default: FALSE
#SPOOLMAN_DEBUG_MODE=TRUE
Step-by-Step Installation
Easy Installation
-
Go to FilaMan Installer
-
Plug you device in and push Connect button
-
Select your Device Port and push Intall
-
Initial Setup:
- Connect to the "FilaMan" WiFi access point.
- Configure WiFi settings through the captive portal.
- Access the web interface at
http://filaman.local
or the IP address.
Compile by yourself
- Clone the Repository:
git clone https://github.com/ManuelW77/Filaman.git cd FilaMan
- Install Dependencies:
pio lib install
- Flash the ESP32:
pio run --target upload
- Initial Setup:
- Connect to the "FilaMan" WiFi access point.
- Configure WiFi settings through the captive portal.
- Access the web interface at
http://filaman.local
or the IP address.
Documentation
Relevant Links
Tutorials and Examples
License
This project is licensed under the MIT License. See the LICENSE file for details.
Materials
Useful Resources
Community and Support
Availability
The code can be tested and the application can be downloaded from the GitHub repository.