A cross-platform desktop application for monitoring and controlling Bambu Lab 3D printers. Built with Tauri, Rust, and React for performance, security, and native desktop integration.
π Alpha Release: PulsePrint Desktop is in active development. Core features are stable and ready for community testing. See CHANGELOG.md for verified features, FEATURES.md for current implementation status, and ROADMAP.md for future development plans.
- Real-time MQTT Monitoring - Live temperature, progress, and status updates via secure MQTT over TLS
- Dual View Support - Switch between card view and table view with persistent preferences
- Multi-printer Support - Connect and monitor 1-5+ printers simultaneously
- Smart Status Detection - Intelligent status recognition (idle, printing, paused, error, offline)
- Remote Control - Pause, resume, and stop print jobs remotely
- Printer Configuration - Add printers manually or import from JSON, CSV, YAML, TXT files
- Temperature Monitoring - Real-time hotend, bed, and chamber temperature displays
- Progress Tracking - Detailed layer information, completion percentage, and time remaining
- Dark/Light Mode - Theme switching with system preference support
- Responsive Design - Optimized layouts for various screen sizes and printer counts
- Real-time Updates - Live visual indicators with color-coded status and flash animations
- Mock Service Mode - Development and testing mode with simulated printer data
- SQLite Database - Persistent storage for all settings and printer configurations
- Cross-platform Storage - Platform-specific app data directories with automatic migrations
- Settings Persistence - User preferences maintained across application sessions
- Import/Export Support - Backup and share printer configurations in multiple formats
Alpha releases are available on GitHub:
- Windows: Download the
.msiinstaller - macOS: Download the
.dmgfile - Linux: Download the
.AppImagefile
- Download the installer for your platform
- Install the application (double-click installer)
- Launch PulsePrint Desktop
- Add your printer in Settings with:
- Printer name and IP address
- Access code from printer's LAN settings
- Serial number
-
Enable LAN Mode on your printer:
- Go to printer settings β Network β LAN Mode
- Enable LAN access and note the access code
-
Find Printer IP:
- Check your router's connected devices
- Or use network scanning tools
-
Add to PulsePrint:
- Open Settings β Add Printer
- Enter name, IP address, access code, and serial number
- Bambu Lab A1 / A1 mini
- Bambu Lab P1P / P1S
- Bambu Lab X1 / X1C
- More models coming soon
Want to contribute? See CONTRIBUTING.md for setup instructions.
# Prerequisites: Rust, Node.js 16+, yarn
git clone https://github.com/voodu00/pulseprint-desktop-app.git
cd pulseprint-desktop-app
# Install dependencies
cd frontend-react && yarn install && cd ..
# Run development server
cargo tauri devPrinter shows as "offline" or "connecting"
- Verify printer IP address is correct
- Check that LAN Mode is enabled on printer
- Ensure both devices are on the same network
- Try restarting the application
Settings not saving
- Check that the application has write permissions
- Database is stored in your OS app data folder
- Try running as administrator/with elevated permissions
Connection timeout errors
- Verify the access code from printer settings
- Check firewall settings (allow port 8883)
- Ensure printer firmware is up to date
- π Found a bug? Report it here
- β¨ Have a feature idea? Suggest it here
- β Need help? Ask in discussions
We welcome contributions from the community! PulsePrint Desktop is fully open source.
- π» Code contributions - See CONTRIBUTING.md for setup and guidelines
- π Bug reports - Help us improve by reporting issues
- β¨ Feature requests - Share your ideas for new functionality
- π Documentation - Help improve our guides and documentation
- π§ͺ Testing - Try alpha releases and provide feedback
This project is licensed under the MIT License - see the LICENSE file for details.
PulsePrint Desktop is fully open source with no feature restrictions. We believe in transparent development and community-driven innovation for the 3D printing ecosystem.
- Built with Tauri for cross-platform desktop development
- Uses OpenBambuAPI documentation for printer communication
- UI components from shadcn/ui
- Database operations via tauri-plugin-sql