jimmyjon711 / InfimechTxUpgrade

GNU General Public License v3.0
5 stars 2 forks source link

Updating Infimech TX 3D Printer from Klipper 10 to Klipper 12

Guide/script still a work in progress but its good enough to upgrade to klipper 12. My end goal is to figure out what services are not needed(yes I think there are some) and remove the un-necessary clutter in the MKS user folder.

Disclaimer

Preform this at your own risk, I am not responsible if something happens while running this script. Making a backup is highly recommended.

What does this script do

What this script does not do

Prerequisites

The following steps are for backing up and moving to a bigger eMMC module.

Backing up eMMC Module (Highly recommended):

Windows (not tested)

Linux

  1. Insert eMMC module into USB module and insert into computer, make sure to insert it the correct way.
  2. Run
    dd bs=4m if=/dev/sdX | gzip > infimechTx_bak.img.gz
  3. Remove eMMC module from computer
  4. Run the following if upgrading to bigger eMMC module
    • Replace eMMC module with larger eMMC module and insert into computer
    • Use balena etcher to flash to new eMMC if going to bigger drive
  5. Remove from computer

Installation:

  1. Insert eMMC back into motherboard (wait till everything is working before putting the bottom back on)
  2. Power on the printer
  3. Access your printer's terminal console (via SSH or Serial)

- SSH (Requires Ethernet Connection to a router/network switch)

- Serial (If ethernet access isn't available);

1) Connect your computer to the printer's USB-C port (1500000 Baud Serial terminal).
a. Windows users can use PuTTY. Here is a useful quick connection Guide.
b. Linux users can use screen for terminal access (linux commands below).

     lsusb
 Find the relevant ttyACM / ttyUSB device then paste yours into the command below.  
 ```
 screen /dev/tty* 1500000
 ```
 To exit screen, press `Ctrl + A` followed by `K`, then confirm with `Y`.  

2) Once connected login using: User: mks. Password: makerbase.

Download and run script

  1. Pull script
     wget https://raw.githubusercontent.com/jimmyjon711/InfimechTxUpgrade/main/infimechTxUpgrade.sh && chmod +x ./infimechTxUpgrade.sh
  2. Run script
    ~/infimechTxUpgrade.sh
  3. Either run all with a or choose each step in order from 1-8
  4. See sections with prompted with input
  5. Once done reboot
    sudo reboot
  6. Perform optional steps if everything is working

- Updating armbian:

  1. Choose Y to update N to continue without updates

- Timezone Configuration:

  1. Navigate to : Personal > Timezone to set your zone.
  2. Exit

- Running Kiauh:

  1. Hit Y to update and relaunch.
  2. Choose Y if Kiauh updated
  3. Enable automatic backups before updates (optional)
  4. Type (6) for Settings
  5. Type (4) for Enable automatic backups before updates
  6. Should now say - Disable automatic backups before updates
  7. Type (b) to navigate back
  8. Time to remove and install all currently installed plugins
    Removal

    1. Type (3) for [Remove]
      • Type (1) for [Klipper]
      • Type (2) for [Moonraker]
      • If you have any others installed (eg. mobileraker) note what you have installed and remove them now.
        ( NOTE: You do not have to remove fluidd, have not tried mainsail )
      • Type (b) to navigate back

    Installation

    1. Type (1) for [Install]
    2. Type (1) for [Klipper] - install with python 3.x then follow on screen prompts
    3. Type (2) for [Moonraker] - follow on screen prompts
    4. If you removed anything else, add it back now
    5. Type (b) to navigate back
    6. Install G-Code Shell Command
      • Type (4) for Advanced
      • Type (8) for [G-Code Shell Command]
        • Select Y to install at your own risk
        • Select N to create and example shell command?
      • Type (b) to navigate back

    Updating Other plugins

    1. Type(2) for [Update]
    2. Type(4) for [Fluidd] Manually update anything else
    3. Type(b) to navigate back
    4. Type(q) to quit kiauh

- Updating RPI mcu:

Reference : https://www.klipper3d.org/RPi_microcontroller.html#install-the-rc-script

  1. In the menu, set "Microcontroller Architecture" to "Linux process," then save and exit.

- Finished

  1. Once all steps 1-8 are completed reboot and everything should be working correctly
  2. If you run into the following error Option 'position_endstop' is not valid in section 'stepper_z' when rebooting, then navigate to your printer.cfg file and search for [stepper_z] then comment out the position_endstop: -4 line. Save and restart.
  3. Put bottom cover back on.
  4. Rerun Temperature calibration, Resonance Compensation, and Auto leveling before using again
    PID_CALIBRATE HEATER=extruder TARGET=200
    PID_CALIBRATE HEATER=heater_bed TARGET=60

- Optional Steps after everything is verified and working

- Enabling Webcam

Manually updating Microcontroller

The following instructions were provided by GoldenGreek

This process assumes that you have already run the InfimechTXUpgrade.sh file from this repository to get to klipper 0.12 first! The directory structure that these steps assume are dependent on this.

  1. SSH to the Infimech and login as mks/makerbase

  2. cd kiauh

  3. ./kiauh.sh

  4. If prompted to update, enter Y, and then rerun the above command to relaunch kiauh.

  5. Select option (4) for advanced

  6. Select option (2) for build only

    You will get the Klipper Firmware Configuration window:

    (Firmware Configuration)

    Change the following settings:

    • Set Micro-Controller Architecture to STMicroelectronics STM32
    • Set Processor Model to STM32F401
    • Ensure that Bootloader offset is set to 32Kib bootloader
    • Ensure that communication interface is set to USB (on PA11/PA12)
    • Press Q, and Yes when prompted to save your configuration

    KIAUH will now compile your firmware:

  7. Type B and hit enter to go back, then type Q and hit enter to quit KIAUH.

  8. Enter the following command to rename and and copy the file so you can download it from fluidd:

    cp ~/klipper/out/klipper.bin ~/printer_data/config/mks_skipr_mini.bin
  9. Go to your printer's web interface and download the mks_skipr_mini.bin file

  10. Copy the file you downloaded to a microSD card.

  11. Properly shutdown the Infimech and power it off then insert the microSD card into the sd-card slot.

    • This slot is located on the mainboard, and is accessible without taking the bottom off. There is an opening on the side that you can sneak the card in if you could see it properly. (But be careful, if you drop it then you are taking the bottom off to retrieve the sd-card)

      It's easiest to remove the left side panel to pop the card in. The bottom does not need to come off.

  12. Power on the printer, once you can get to the web interface navigate to System (second from the bottom option on the left side)

  13. Verify mcu information Version shows v0.12.0-xxx-xxxxxxxxx (See picture below), your x's will be something different depending on when klipper was pulled from github. MCU flashed

  14. Properly shutdown the Infimech and power it off then remove SD-Card from the MCU TF-Card slot.