8000 Home · realtag-github/X1Plus Wiki · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
realtag-github edited this page Mar 20, 2024 · 9 revisions

Your new community enhanced experience for X1 and X1C printers

TEST git commit

Important Information

Upgrading X1Plus

Following initial install of X1Plus, if you wish to continue to use custom firmware, never use the OEM firmware or Bambu Handy to upgrade or downgrade your firmware. If you ever use the OEM firmware or Bambu Handy to perform future upgrades or downgrades on your printer then it may be possible for the manufacturer to stop installation of custom firmware. Only perform upgrades in the ways recommended below:

.x1p upgrade method

X1Plus upgrade files are provided in .x1p format (eg. 1.0.x1p ) and can simply be copied to the root of your micro SD card (ideally via FTP/SFTP) and then on reboot, select "Startup Options", then "Start X1Plus installer", and select the appropriate file version from the drop-down menu.
New .x1p versions can be found here

Desktop installer

Similar to the initial install of X1Plus, it will soon be possible to use a desktop installer to update to the latest version.

SD Card Handling

X1Plus runs directly off your micro SD card. When booted into X1Plus, never remove your micro SD card. The SD “Format” button in the UI has been removed from X1Plus so you do not inadvertently wipe your running X1Plus install!

If your normal printing workflow involves removing the micro SD card to transfer files to your printer, we'd recommend using FTP/SFTP instead, or only transferring files while your printer is powered off.

Consider keeping several SD card installs of X1Plus around

As anyone used to using Raspberry Pis knows, micro SD cards are not always particularly reliable and can sometimes fail with no little notice, or in weird ways. You can mitigate against these issues by using high endurance or industrial cards, but it may be prudent to have more than one card with X1Plus installed on it.

OEM Features and OEM User Guide

Due to minor changes to OEM features, our documentation here may overlap or vary slightly from Bambu's OEM documentation, but for reference that's available here. We would recommend still reading the guides and documentation from Bambu Lab even if you plan to run CFW full time. Features which do not really differ from OEM firmware are not mentioned in this guide.

X1Plus Features

Settings - General

On this page, there are a number of quality of life improvements made to the OEM firmware.

Network Section

  • Network: Bambu Cloud
    • Printer has full access to the internet + bambu cloud. All outbound connections are allowed.
  • Network: LAN
    • Printer connections are restricted to LAN by software-based permission checks performed internally within the firmware.
  • Network: LAN + shield
    • An enhancement to LAN mode that uses linux iptables to block outbound connections from the printer. Outbound UDP (for example, DNS, NTP and SSDP) and outbound ICMP are not blocked. The purpose behind this enhancement is to block outbound connections at the OS level, so even software bugs or malware would not be able to establish outbound connections.

Enable SSH Server

This is used to toggle the SSH server as well as rotate the SSH password. The user for SSH is ‘root’. The SSH server is disabled by default.

Firmware Version

In this screen you can see all of the firmware versions for individual components of the machine. You can tap on each item for more information and to see the hardware revision for that component (if applicable).

Screen Lock

The screen lock provides a low-security anti-tamper option for curious hands, public spaces etc.

  • Screen Saver Only
    • Provides simply a screensaver, similar to stock
  • Swipe to unlock
    • Classic swipe-to-unlock mode
  • Passcode
    • Basic numerical password protected lock screen
    • Once you've set a passcode, you can unset it by clicking to set it again and not entering a code.
    • If you ever forget your screen lock passcode, you can reset it using the ‘Reset X1Plus settings’ in the bootloader menu.

Device Info

  • In here you can see various statistics for your printer and AMS units (if attached). This data can be helpful when determining when to replace the consumables within your AMS.
  • You can also tell your printer that you've lubricated your lead screws (even if you haven't and you're called Joel)

Settings - Tools

Bed Mesh Calibration

On this page you can run a bed mesh calibration routine (in a similar manner to you can on OEM firmware before a print), but you can also then visualise the measured data to assist with tramming or to establish whether there your bed is warped. If this routine shows that your bed is out of tram, you can run the guided tramming routine to level correct this. This may be needed after the replacement of a heatbed sensor, or a complete bed.

Vibration Compensation

The Vibration Compensation (also known as input shaper) is used to identify resonant frequencies in the printer’s motion system and apply a shaped output of the printers movements in order to reduce ‘ghosting’ on prints. Calibration is done automatically and the data is exported and viewed as a graph. Major shifts in resonant frequencies without relocation can indicate that your printer requires maintenance. The compensation routine within the custom firmware uses a slightly altered frequency range vs stock firmware because this altered range appears to result in a greater calibration success rate.

On-Screen Console

This is a built-in terminal providing root shell access to the printer via on-screen keyboard, as well as a console for sending live G-Code commands. As all shell commands are sent as root, it's quite easy to cause irrecoverable damage to the printer firmware, so be very careful.

Tools -> Hardware

Interface - Buttons

Here you can re-map the physical buttons on the top of the printer to perform custom actions.

Two actions for each button can be saved, and the duration of the button press determines which action is executed. A "short press" is detected when either the e-stop or power button is held down less than 850 milliseconds, while a "long press" is any button press that's held down for over 850 milliseconds.

X1Plus sets the following actions as defaults for the power and e-stop buttons:

Power button
Short Press: Toggle LCD
Long Press: Reboot
E-stop button
Short Press: Pause print
Long Press: Abort print

You can adjust each of these settings, and the changes to the defined actions take effect immediately. Please note that the e-stop button functions differently than it does on stock firmware, and it will immediately abort your print rather than displaying a dialog box asking if you want to abort.

The "Set Temp" action will only be run if the printer is not running a print or calibration sequence. Each button can be mapped to set the bed or nozzle temperature to the value specified.

The "Run Macro" action allows you to run a Gcode file or a Python script with a button press. To test this feature, a sample macro is provided in /usr/etc/macros/preheat.py. Any changes you make to this script will be overwritten when you update X1Plus, so it is recommended to store your macros on your SD card. The sample macro lifts the build plate up to the toolhead and enables the bed heater and fans, and then it will monitor chamber temperature until it reaches 45°C (or the temperature you have set).

Personalization

Home Screen, Printing Screen, and Screenlock images:

You may personalize both the home screen, printing progress screen, and screenlock images by uploading files to your SD card to the default filepaths listed below or to custom filepaths which can be defined in /config/screen/printer.json.

Home screen image:
Default: /x1plus/printers/<serialnumber>/images/home.png
Custom: cfw_home_image

Printing progress screen image:
Default: /x1plus/printers/<serialnumber>/images/printing.png
Custom: cfw_print_image

Lock screen image:
Default: /x1plus/lockscreen.png
Custom: cfw_lockscreen_image

Images with a transparent background are recommended. Aspect ratios are preserved, but if an image with a large filesize is selected, this can create lag in the UI, so it is recommended to scale file sizes down ahead of time.

Lock Screen

You can also add text and imagery to the X1Plus lock screen, see Screen Lock

Advanced Features

Quick Boot

If you want to skip the X1Plus boot prompt during startup and boot right into X1Plus, you can enable this by placing an empty file with the name "quick-boot" (minus quotes) in the directory x1plus/printers/<serialnumber>/ on the SD card. Upon bootup, if no new .x1p update files are found on the root of the SD card, the printer will boot right into X1Plus. Note that if uninstalled .x1p files are found on the root of the SD card, you will be shown the normal startup menu.

eMMC backup

You can backup the contents of your emmc to SD card by placing an empty file with the name “dump-emmc” (minus quotes) in the directory x1plus/printers/<serialnumber>/ on the SD card. Upon bootup, the emmc will be backed up to a file named emmc.bin in the same directory. Approximately 3.7gb of free space on the SD card will be required and the process will take 5-10 minutes. The idea with an emmc backup is that tools may be developed in the future to allow even severely bricked printers to be recovered using an emmc backup image.

VNC control

VNC control of your printer permits remote control of functions that are only accessible via the printer's screen. You can also take screenshots of UI elements or faults using this method. SSH login to the printer and run the script /usr 8646 /bin/start_bbl_screen_vnc.sh and you can connect to the printer with a VNC client on the default port 5900. Screen responsiveness will be relatively slow due to the slow wifi speed, although this is still improved compared to stock firmware.

Custom NTP Time Server

X1Plus will accept and use NTP time servers provided to it via DHCP option 42. You can use the command ntpq -p from the terminal to confirm that this is working. Correct time is not critically important on the X1 series of printers, but without it, anything that gives a time (eg. calibration results) may not display correctly. A local network NTP server can facilitate correct time without giving the printer direct access to the internet.

Toolhead camera access

It's worth noting that this camera was previously inaccessible to end-users, which is what makes it particularly exciting now.

⚠ However, it's important to be aware that executing this script will stop the GUI on the LCD screen, and you may have to reboot your printer to return to the normal screen. Proceed with caution. ⚠

Executing the script located at /usr/bin/camera_debug.sh enables real-time viewing of images from webcams. Option 10, in particular, streams video from the second webcam positioned near the Lidar sensor to the LCD screen. The image will be displayed in a small rectangle and may appear very dark, potentially appearing entirely black on the screen. Activating the Nozzle LED beforehand from the Gcode Terminal on the printer's LCD GUI could be helpful in such situations.

Currently, this feature may not seem very useful. However, it holds potential for creating interesting timelapses or videos in the future.

Screen service restart

If your screen service needs a restart, you may use this command from the SSH console: /etc/init.d/S99screen_service restart. This is especially useful after running VNC server or camera debug scripts, as they may stop the screen service.

It is still recommended to reboot your printer after running those scripts to ensure that all scripts are launched in the order they are intended.

Bootloader Menu

  • Start X1Plus from SD card

    • Loads the X1Plus you have installed on the currently inserted SD card
  • Start X1Plus installer

    • The preferred method for upgrading your X1Plus installations. Place the latest .x1p file in the root of the SD card and use this option.
  • Reset X1Plus Settings
    • Resets X1Plus-specific configuration settings to default. For example resets the screen lock PIN.
  • Emergency Recovery Console
    • Starts up a number of features (ssh, serial console, etc) intended to allow troubleshooting and repair of a broken X1Plus bootloader. EXTREMELY DANGEROUS! It is very easy to permanently brick your printer using the recovery console.
  • Start built-in firmware with updater disabled
    • If you absolutely need to boot into the OEM firmware, this option will try to disable the OEM update function to prevent inadvertently erasing the bootloader and losing your ability to run or install X1Plus. Still, tread with extreme caution when running the OEM firmware, operating in LAN mode and avoiding use of Bambu Handy is still highly recommended.
  • Start built-in firmware unmodified
    • Can be dangerous if you intend to retain your ability to run or install X1Plus. Not generally recommended.

photo_2024-03-19_19-38-23

0