Bambu Dashboard for viewing real time data from the Bambu X1 Carbon 3D printer. Are you looking for the best Bambu printer OBS overlay? Scroll to the bottom, we have OBS support also! Check out a live stream here: https://www.youtube.com/channel/UChDOFv_-8TxYOfkteSlvAqA/live
For more detailed project information visit: https://t0nyz.com/projects/bambuboard
Screenshot (Updated version: 1/14/24):
Before running the BambuBoard in Docker, ensure that Docker is installed on your system.
-
Windows and macOS:
- Download and install Docker Desktop from Docker's official website.
- Follow the installation instructions provided on the website.
-
Linux:
- Open a terminal and run the following commands to install Docker:
sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io
- Start the Docker service:
sudo systemctl start docker sudo systemctl enable docker
- Open a terminal and run the following commands to install Docker:
For detailed instructions, visit the Docker installation documentation.
Important
Be sure to update these values. The minimum settings you should update:
- BAMBUBOARD_PRINTER_URL (Printer IP)
- BAMBUBOARD_BAMBU_USERNAME (Your BambuLabs email address)
- BAMBUBOARD_BAMBU_PASSWORD (Your BambuLabs password)
- BAMBUBOARD_PRINTER_ACCESS_CODE (Located on printer)
- BAMBUBOARD_PRINTER_SN (Located on printer)
docker run -d \
-p 8080:8080 \
-e BAMBUBOARD_HTTP_PORT=8080 \
-e BAMBUBOARD_PRINTER_URL=10.0.0.1 \
-e BAMBUBOARD_PRINTER_PORT=8883 \
-e BAMBUBOARD_PRINTER_SN=bambu_serialnumber \
-e BAMBUBOARD_PRINTER_ACCESS_CODE=bambu_accesscode \
-e BAMBUBOARD_BAMBU_USERNAME=bambu_email_address \
-e BAMBUBOARD_BAMBU_PASSWORD=bambu_password \
-e BAMBUBOARD_TEMP_SETTING=both \
-e BAMBUBOARD_FAN_PERCENTAGES=false \
-e BAMBUBOARD_FAN_ICONS=true \
-e BAMBUBOARD_LOGGING=false \
--name bambuboard-instance \
ghcr.io/t0nyz0/bambuboard:latest
Node.js is required to run the BambuBoard application. Here's how to install it on your Raspberry Pi:
- Open a terminal on your Raspberry Pi.
- Update your package list:
sudo apt update
- Upgrade your packages to their latest versions:
sudo apt full-upgrade
- Install Node.js:
sudo apt install nodejs
- (Optional) Install npm, Node.js' package manager:
sudo apt install npm
- Verify the installation by checking the version of Node.js and npm:
node -v npm -v
To get the BambuBoard code, you need to clone its repository from GitHub:
- Navigate to the directory where you want to clone the repository:
cd /path/to/directory
- Clone the repository:
git clone https://github.com/t0nyz0/BambuBoard.git
- Change into the cloned repository's directory:
cd BambuBoard
- Update the config.json with your settings! This is important.
sudo nano config.json
Note: CTRL+X to exit nano, make sure to hit Y to confirm saving changes.
BambuBoard may have Node.js dependencies that need to be installed:
- Within the BambuBoard directory, install the dependencies:
npm install
To start the BambuBoard dashboard:
- Run the application:
node bambuConnection.js
Once the application is running, you can access the BambuBoard dashboard. Open your browser and navigate to:
http://ipaddress:8080
Replace 8080
with the actual port number if BambuBoard runs on a different port. (Configured in bambuConnection.js)
Note: If this doesnt work, try IP address of Raspberry Pi.
If you encounter any issues, consider the following:
- Check that you have the correct permissions to clone the repository and install Node.js packages.
- Verify that the firewall settings are not blocking the BambuBoard application.
- Important: Bambu Account 2-factor authentication currently does not allow this program to communicate with Bambu API, right now 2FA is not supported. If you have 2FA on the program might fail to load, or freeze.
OBS widgets are now supported as of 1/7/24
Screen.Recording.2024-02-13.at.12.02.18.PM.mov
I have provided a sample scene file that you can import into OBS, using "Scene Collection > Import".
Note: Before importing, you will need to open the JSON and replace the IP address listed with your server IP. Also make sure to update the media feed to the ffmpeg provided to you from the Bambu software folder. Please refer to the Bambu GO Live documentation for more: https://wiki.bambulab.com/en/software/bambu-studio/virtual-camera
In the "OBS_Settings" folder in the project root you will find the scene file for importing. If you run into any widgets not working, first check case sensitivity of the widget URL's. Depending on setup this can be an issue.
List of all widget addresses:
"AMS widget": "https://127.0.0.1:8080/widgets/ams/index.html"
"AMS Temp widget: "https://127.0.0.1:8080/widgets/ams-temp/index.html"
"Bed Temp widget": "https://127.0.0.1:8080/widgets/bed-temp/index.html"
"Chamber Temp widget": "https://127.0.0.1:8080/widgets/chamber-temp/index.html"
"Fan widget": "https://127.0.0.1:8080/widgets/fans/index.html"
"Model image widget": "https://127.0.0.1:8080/widgets/model-image/index.html"
"Nozzle temperature widget": "https://127.0.0.1:8080/widgets/nozzle-temp/index.html"
"Nozzle info widget": "https://127.0.0.1:8080/widgets/nozzle-info/index.html"
"Print info widget": "https://127.0.0.1:8080/widgets/print-info/index.html"
"Progress bar widget": "https://127.0.0.1:8080/widgets/progress-info/index.html"
"Wifi widget": "https://127.0.0.1:8080/widgets/wifi/index.html"
"Notes EDIT widget": "https://127.0.0.1:8080/widgets/notes/edit.html"
"Notes VIEW widget": "https://127.0.0.1:8080/widgets/notes/index.html"
"Version widget": "https://127.0.0.1:8080/widgets/version/index.html"
Note: If you want to EDIT notes go to this URL: https://server:8080/widgets/notes/edit.html
Celcius / Fahrenheit preference setting- Rebuild using React?
- Better settings configuration
Add AMS humidty / tempAMS Active tray tracking- Address bug with the "Total Prints" data point, the API does not appear to keep an entire record of all cloud prints. Total print count might always been inaccurate and may need to be removed in future versions.
The AMS (Automated Material System) filament remaining percentage displayed on the dashboard may not always be 100% accurate, as the printer estimates filament usage. Stay tuned for updates and enhancements to BambuBoard, and feel free to contribute to its development. Your feedback and suggestions are always welcome!