Skip to content

leolobato/bambu-gateway-ios

Repository files navigation

BambuGateway iOS

iOS client for Bambu Gateway — browse printers, upload 3MF files, preview G-code, and start prints from your phone.

No external dependencies — built entirely with Foundation, SwiftUI, and SceneKit.

Features

  • Connect to a local Bambu Gateway server
  • Browse and manage 3MF files for printing
  • Preview G-code before printing
  • AMS dashboard with per-unit humidity, filament remaining, and tray details
  • Auto-match project filaments to AMS trays by filament ID or type, even custom profiles from OrcaSlicer
  • Configure printer profiles, filaments, and plates
  • Browse MakerWorld for models
  • Share Extension for quick file imports from MakerWorld and other apps

Screenshots

Dashboard Print — file import Print — settings G-code preview

How it works

The app does not talk to Bambu printers directly. It communicates with a Bambu Gateway server on your local network that proxies printer commands, handles slicing, and manages custom profiles.

Print workflow

  1. Import a .3mf file — pick from Files, download from the built-in MakerWorld browser, or share a link from Safari via the Share Extension.
  2. The file is uploaded to the gateway, which returns project metadata (plates, filaments, whether it's pre-sliced).
  3. Configure filament-to-AMS-tray mappings, machine/process profiles, and plate type. The app auto-matches custom filament profiles when possible.
  4. Tap Preview to slice and render a 3D G-code preview, or Print to send the job directly.

Deep links

The app registers the bambugateway:// URL scheme:

URL Action
bambugateway://open?url=<encoded-url> Download a 3MF from the given URL and open it

Requirements

Building

# Install XcodeGen if needed
brew install xcodegen

# Generate the Xcode project
xcodegen generate

# Build (no signing required for simulator)
xcodebuild -project BambuGateway.xcodeproj -scheme BambuGateway \
  -destination 'platform=iOS Simulator,name=iPhone 16' build

Signing for a physical device

Copy the example config and set your Apple Development Team ID:

cp Configuration/LocalSigning.xcconfig.example Configuration/LocalSigning.xcconfig
# Edit LocalSigning.xcconfig and set your DEVELOPMENT_TEAM and APP_BUNDLE_ID
xcodegen generate

LocalSigning.xcconfig is gitignored and won't be committed.

Configuration

Point the app at your Bambu Gateway server URL in the Settings screen (e.g. http://192.168.1.10:4844).

Disclaimer

This project was built almost entirely through agentic programming using Claude Code. The architecture and implementation were generated through AI-assisted development with human guidance and review.

License

Bambu Gateway is available under the MIT License. See LICENSE for details.

About

iOS client for Bambu Gateway — browse printers, upload 3MF files, preview G-code, and start prints from your phone. Print 3MF files directly from MakerWorld.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages