diff --git a/boards/mellow-fly-sht-36-pro/98-mellow-fly-sht-36-pro.rules b/boards/mellow-fly-sht-36-pro/98-mellow-fly-sht-36-pro.rules new file mode 100644 index 00000000..a2634108 --- /dev/null +++ b/boards/mellow-fly-sht-36-pro/98-mellow-fly-sht-36-pro.rules @@ -0,0 +1,4 @@ +# Mellow FLY-SHT 36 PRO +SUBSYSTEMS=="usb", ATTRS{idProduct}=="614e", ATTRS{idVendor}=="1d50", ATTRS{serial}=="mellow-fly-sht-36-pro", ACTION=="add", SYMLINK+="mellow-fly-sht-36-pro", RUN+="/home/pi/printer_data/config/RatOS/scripts/klipper-mcu-added.sh" + +ACTION=="remove", ENV{DEVLINKS}=="/dev/mellow-fly-sht-36-pro" diff --git a/boards/mellow-fly-sht-36-pro/board-definition.json b/boards/mellow-fly-sht-36-pro/board-definition.json new file mode 100644 index 00000000..1b4c560c --- /dev/null +++ b/boards/mellow-fly-sht-36-pro/board-definition.json @@ -0,0 +1,35 @@ +{ + "$schema": "../board-definition.schema.json", + "boardImageFileName": "board.webp", + "wireDiagramFileName": "wiring.drawio.svg", + "isToolboard": true, + "name": "FLY-SHT36-PRO", + "manufacturer": "Mellow", + "id": "mellow-fly-sht-36-pro", + "firmwareBinaryName": "firmware-mellow-fly-sht-36-pro.bin", + "compileScript": "compile.sh", + "flashScript": "flash.sh", + "flashInstructions": "After initial flashing, make sure the RST jumper is not inserted.", + "documentationLink": "https://os.ratrig.com/docs/boards/mellow/fly-sht-36", + "driverCount": 1, + "integratedDrivers": { + "extruder": "MELLOW-FLY-TMC5160" + }, + "dfu": { + "flashDevice": "0483:df11", + "dfuBootImage": "dfubooting.png", + "instructions": [ + "Add the jumper as shown in the picture", + "Connect the board via USB to the Raspberry Pi", + "Make sure the board is powered on", + "If the board was already connected and powered when you inserted the jumper, click the boot button on the board." + ], + "hasBoot0Jumper": true + }, + "ADXL345SPI": { + "cs_pin": "gpio9", + "hardware": { + "bus": "spi1" + } + } +} diff --git a/boards/mellow-fly-sht-36-pro/board.webp b/boards/mellow-fly-sht-36-pro/board.webp new file mode 100644 index 00000000..dfbba868 Binary files /dev/null and b/boards/mellow-fly-sht-36-pro/board.webp differ diff --git a/boards/mellow-fly-sht-36-pro/compile.sh b/boards/mellow-fly-sht-36-pro/compile.sh new file mode 100644 index 00000000..1eed2b07 --- /dev/null +++ b/boards/mellow-fly-sht-36-pro/compile.sh @@ -0,0 +1,19 @@ +#!/bin/bash +if [ "$EUID" -ne 0 ] + then echo "ERROR: Please run as root" + exit +fi +cp -f /home/pi/printer_data/config/RatOS/boards/mellow-fly-sht-36-pro/firmware.config /home/pi/klipper/.config +pushd /home/pi/klipper || exit +make olddefconfig +make clean +make + +if [ ! -d "/home/pi/printer_data/config/firmware_binaries" ] +then + mkdir /home/pi/printer_data/config/firmware_binaries + chown pi:pi /home/pi/printer_data/config/firmware_binaries +fi +cp -f /home/pi/klipper/out/klipper.bin /home/pi/printer_data/config/firmware_binaries/firmware-mellow-fly-sht-36-pro.bin +chown pi:pi /home/pi/printer_data/config/firmware_binaries/firmware-mellow-fly-sht-36-pro.bin +popd || exit diff --git a/boards/mellow-fly-sht-36-pro/dfubooting.png b/boards/mellow-fly-sht-36-pro/dfubooting.png new file mode 100644 index 00000000..a9ccc7c5 Binary files /dev/null and b/boards/mellow-fly-sht-36-pro/dfubooting.png differ diff --git a/boards/mellow-fly-sht-36-pro/firmware.config b/boards/mellow-fly-sht-36-pro/firmware.config new file mode 100644 index 00000000..d7710059 --- /dev/null +++ b/boards/mellow-fly-sht-36-pro/firmware.config @@ -0,0 +1,72 @@ +CONFIG_LOW_LEVEL_OPTIONS=y +# CONFIG_MACH_AVR is not set +# CONFIG_MACH_ATSAM is not set +# CONFIG_MACH_ATSAMD is not set +# CONFIG_MACH_LPC176X is not set +# CONFIG_MACH_STM32 is not set +# CONFIG_MACH_HC32F460 is not set +CONFIG_MACH_RP2040=y +# CONFIG_MACH_PRU is not set +# CONFIG_MACH_AR100 is not set +# CONFIG_MACH_LINUX is not set +# CONFIG_MACH_SIMU is not set +CONFIG_BOARD_DIRECTORY="rp2040" +CONFIG_MCU="rp2040" +CONFIG_CLOCK_FREQ=12000000 +CONFIG_USBSERIAL=y +CONFIG_FLASH_SIZE=0x200000 +CONFIG_FLASH_BOOT_ADDRESS=0x10000100 +CONFIG_RAM_START=0x20000000 +CONFIG_RAM_SIZE=0x42000 +CONFIG_STACK_SIZE=512 +CONFIG_FLASH_APPLICATION_ADDRESS=0x10004000 +CONFIG_RP2040_SELECT=y +CONFIG_RP2040_HAVE_BOOTLOADER=y +# CONFIG_RP2040_FLASH_START_0100 is not set +CONFIG_RP2040_FLASH_START_4000=y +CONFIG_RP2040_STAGE2_FILE="boot2_w25q080.S" +CONFIG_RP2040_STAGE2_CLKDIV=2 +CONFIG_RP2040_USB=y +# CONFIG_RP2040_SERIAL_UART0_PINS_0_1 is not set +# CONFIG_RP2040_SERIAL_UART0_PINS_12_13 is not set +# CONFIG_RP2040_SERIAL_UART0_PINS_16_17 is not set +# CONFIG_RP2040_SERIAL_UART0_PINS_28_29 is not set +# CONFIG_RP2040_SERIAL_UART1_PINS_4_5 is not set +# CONFIG_RP2040_SERIAL_UART1_PINS_8_9 is not set +# CONFIG_RP2040_SERIAL_UART1_PINS_20_21 is not set +# CONFIG_RP2040_SERIAL_UART1_PINS_24_25 is not set +# CONFIG_RP2040_CANBUS is not set +# CONFIG_RP2040_USBCANBUS is not set +CONFIG_RP2040_CANBUS_GPIO_RX=4 +CONFIG_RP2040_CANBUS_GPIO_TX=5 +CONFIG_USB=y +CONFIG_USB_VENDOR_ID=0x1d50 +CONFIG_USB_DEVICE_ID=0x614e +CONFIG_USB_SERIAL_NUMBER_CHIPID=y +CONFIG_USB_SERIAL_NUMBER="12345" + +# +# USB ids +# +# end of USB ids + +CONFIG_WANT_GPIO_BITBANGING=y +CONFIG_WANT_DISPLAYS=y +CONFIG_WANT_SENSORS=y +CONFIG_WANT_LIS2DW=y +CONFIG_WANT_LDC1612=y +CONFIG_WANT_SOFTWARE_I2C=y +CONFIG_WANT_SOFTWARE_SPI=y +CONFIG_NEED_SENSOR_BULK=y +CONFIG_CANBUS_FREQUENCY=1000000 +CONFIG_INITIAL_PINS="" +CONFIG_HAVE_GPIO=y +CONFIG_HAVE_GPIO_ADC=y +CONFIG_HAVE_GPIO_SPI=y +CONFIG_HAVE_GPIO_I2C=y +CONFIG_HAVE_GPIO_HARD_PWM=y +CONFIG_HAVE_STRICT_TIMING=y +CONFIG_HAVE_CHIPID=y +CONFIG_HAVE_STEPPER_BOTH_EDGE=y +CONFIG_HAVE_BOOTLOADER_REQUEST=y +CONFIG_INLINE_STEPPER_HACK=y diff --git a/boards/mellow-fly-sht-36-pro/flash.sh b/boards/mellow-fly-sht-36-pro/flash.sh new file mode 100644 index 00000000..d38fd13a --- /dev/null +++ b/boards/mellow-fly-sht-36-pro/flash.sh @@ -0,0 +1,9 @@ +#!/bin/bash +MCU=/dev/mellow-fly-sht-36-pro +if [ "$EUID" -ne 0 ] + then echo "ERROR: Please run as root" + exit +fi +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +FLASH_SCRIPT=$(realpath "$SCRIPT_DIR/../../scripts/flash-path.sh") +$FLASH_SCRIPT $MCU diff --git a/boards/mellow-fly-sht-36-pro/make-and-flash-mcu.sh b/boards/mellow-fly-sht-36-pro/make-and-flash-mcu.sh new file mode 100644 index 00000000..ce94f472 --- /dev/null +++ b/boards/mellow-fly-sht-36-pro/make-and-flash-mcu.sh @@ -0,0 +1,11 @@ +#!/bin/bash + +if [ "$EUID" -ne 0 ] + then echo "ERROR: Please run as root" + exit +fi + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +"$SCRIPT_DIR"/compile.sh +"$SCRIPT_DIR"/flash.sh diff --git a/boards/mellow-fly-sht-36-pro/toolboard-config.cfg b/boards/mellow-fly-sht-36-pro/toolboard-config.cfg new file mode 100644 index 00000000..fbdd4500 --- /dev/null +++ b/boards/mellow-fly-sht-36-pro/toolboard-config.cfg @@ -0,0 +1,36 @@ +# WARNING. DO NOT EDIT THIS FILE. +# To override settings from this file, you can copy and paste the relevant +# sections into your printer.cfg and change it there. +# WARNING: it is NOT recommended to override board_pins aliases, +# use the boards pin names directly in your printer.cfg instead. +# Look up the pins you need in the boards pinout diagram. + +[board_pins mellow-fly-sht-36] +mcu: toolboard +aliases: + x_endstop_pin=gpio21, + e_step_pin=gpio23, e_dir_pin=gpio24, e_enable_pin=gpio25, e_uart_pin=20, e_diag_pin=gpio22, e_heater_pin=gpio8, e_sensor_pin=gpio26, + thermocouple_cs=gpio1, thermocouple_miso=gpio12, thermocouple_mosi=gpio11, thermocouple_clk=gpio10, + # accel + adxl345_cs_pin=gpio9, adxl345_miso=gpio12, adxl345_mosi=gpio11, adxl345_clk=gpio10, + # leveling + bltouch_sensor_pin=gpio3, bltouch_control_pin=gpio7, + probe_pin=gpio7, + # fans + fan_part_cooling_pin=gpio15, + fan_toolhead_cooling_pin=gpio14 + +[mcu toolboard] +serial: /dev/mellow-fly-sht-36-pro + +[adxl345 toolboard] +cs_pin: toolboard:adxl345_cs_pin +spi_bus: spi1 + +[temperature_sensor toolboard] +sensor_type: temperature_mcu +sensor_mcu: toolboard + +# The fly sht's use a 1000 ohm pullup resistor on the thermistor ports. +[extruder] +pullup_resistor: 1000 diff --git a/boards/mellow-fly-sht-36-pro/wiring.drawio.svg b/boards/mellow-fly-sht-36-pro/wiring.drawio.svg new file mode 100644 index 00000000..2797456b --- /dev/null +++ b/boards/mellow-fly-sht-36-pro/wiring.drawio.svg @@ -0,0 +1,4 @@ + + + +24V PSU5V INDUCTIVE PROBEBLTOUCHX ENDSTOPPART COOLING FANHOTEND FANHEATERTHERMISTOREXTRUDER \ No newline at end of file diff --git a/boards/mellow-super-8-pro-h723/98-mellow-super-8-pro-h723.rules b/boards/mellow-super-8-pro-h723/98-mellow-super-8-pro-h723.rules new file mode 100644 index 00000000..f9e41104 --- /dev/null +++ b/boards/mellow-super-8-pro-h723/98-mellow-super-8-pro-h723.rules @@ -0,0 +1,4 @@ +# Mellow Super 8 Pro w/ STM32H723 +SUBSYSTEMS=="usb", ATTRS{idProduct}=="614e", ATTRS{idVendor}=="1d50", ATTRS{serial}=="mellow-super-8-pro-h723", ACTION=="add", SYMLINK+="mellow-super-8-pro-h723", RUN+="/home/pi/printer_data/config/RatOS/scripts/klipper-mcu-added.sh" + +ACTION=="remove", ENV{DEVLINKS}=="/dev/mellow-super-8-pro-h723" diff --git a/boards/mellow-super-8-pro-h723/board-definition.json b/boards/mellow-super-8-pro-h723/board-definition.json new file mode 100644 index 00000000..036b859e --- /dev/null +++ b/boards/mellow-super-8-pro-h723/board-definition.json @@ -0,0 +1,148 @@ +{ + "$schema": "../board-definition.schema.json", + "boardImageFileName": "board.webp", + "manualFileName": "manual.pdf", + "wireDiagramFileName": "wiring.drawio.svg", + "name": "Mellow Super 8 Pro", + "manufacturer": "Mellow", + "id": "mellow-super-8-pro-h723", + "firmwareBinaryName": "firmware-mellow-super-8-pro-h723.bin", + "compileScript": "compile.sh", + "flashScript": "flash.sh", + "flashInstructions": "Flashing only works if the SD card slot on the Mellow Super 8 Pro is empty.", + "documentationLink": "https://os.ratrig.com/docs/boards/mellow/super-8-pro-h723", + "driverCount": 8, + "driverVoltages": [24, 36, 48, 56], + "dfu": { + "flashDevice": "0483:df11", + "dfuBootImage": "dfubooting.drawio.png", + "instructions": [ + "Connect the board via USB to the Raspberry Pi", + "Add the jumper to BT0/3.3V as shown in the picture", + "Make sure the board is powered on", + "If the board was already connected and powered when you inserted the jumper, click the reset button on the board." + ], + "hasBoot0Jumper": true + }, + "motorSlots": { + "MOTOR0": { + "title": "MOTOR 0", + "enable_pin": "PF11", + "step_pin": "PE2", + "dir_pin": "PC5", + "uart_pin": "PC4", + "cs_pin": "PC4", + "diag_pin": "PG12", + "endstop_pin": "PG12", + "spi_software_mosi_pin": "PB5", + "spi_software_miso_pin": "PB4", + "spi_software_sclk_pin": "PB3" + }, + "MOTOR1": { + "title": "MOTOR 1", + "enable_pin": "PF14", + "step_pin": "PE3", + "dir_pin": "PF13", + "uart_pin": "PF12", + "cs_pin": "PF12", + "diag_pin": "PG11", + "endstop_pin": "PG11", + "spi_software_mosi_pin": "PB5", + "spi_software_miso_pin": "PB4", + "spi_software_sclk_pin": "PB3" + }, + "MOTOR2": { + "title": "MOTOR 2", + "enable_pin": "PG1", + "step_pin": "PE4", + "dir_pin": "PG0", + "uart_pin": "PF15", + "cs_pin": "PF15", + "diag_pin": "PG10", + "endstop_pin": "PG10", + "spi_software_mosi_pin": "PB5", + "spi_software_miso_pin": "PB4", + "spi_software_sclk_pin": "PB3" + }, + "MOTOR3": { + "title": "MOTOR 3", + "enable_pin": "PE9", + "step_pin": "PE14", + "dir_pin": "PE8", + "uart_pin": "PE7", + "cs_pin": "PE7", + "diag_pin": "PG9", + "endstop_pin": "PG9", + "spi_software_mosi_pin": "PB5", + "spi_software_miso_pin": "PB4", + "spi_software_sclk_pin": "PB3" + }, + "MOTOR4": { + "title": "MOTOR 4", + "enable_pin": "PF2", + "step_pin": "PE15", + "dir_pin": "PE11", + "uart_pin": "PF10", + "cs_pin": "PF10", + "diag_pin": "PD7", + "endstop_pin": "PD7", + "spi_software_mosi_pin": "PB5", + "spi_software_miso_pin": "PB4", + "spi_software_sclk_pin": "PB3" + }, + "MOTOR5": { + "title": "MOTOR 5", + "enable_pin": "PC15", + "step_pin": "PE1", + "dir_pin": "PF0", + "uart_pin": "PF1", + "cs_pin": "PF1", + "diag_pin": "PD6", + "endstop_pin": "PD6", + "spi_software_mosi_pin": "PB5", + "spi_software_miso_pin": "PB4", + "spi_software_sclk_pin": "PB3" + }, + "MOTOR6": { + "title": "MOTOR 6", + "enable_pin": "PG4", + "step_pin": "PE0", + "dir_pin": "PG3", + "uart_pin": "PG2", + "cs_pin": "PG2", + "diag_pin": "PA8", + "endstop_pin": "PA8", + "spi_software_mosi_pin": "PB5", + "spi_software_miso_pin": "PB4", + "spi_software_sclk_pin": "PB3" + }, + "MOTOR7": { + "title": "MOTOR 7", + "enable_pin": "PG7", + "step_pin": "PE6", + "dir_pin": "PG6", + "uart_pin": "PG5", + "cs_pin": "PG5", + "diag_pin": "PF8", + "endstop_pin": "PF8", + "spi_software_mosi_pin": "PB5", + "spi_software_miso_pin": "PB4", + "spi_software_sclk_pin": "PB3" + } + }, + "ADXL345SPI": { + "cs_pin": "PD0", + "software": { + "sclk": "PD3", + "mosi": "PD5", + "miso": "PD4" + } + }, + "stepperSPI": { + "software": { + "sclk": "PB3", + "mosi": "PB5", + "miso": "PB4" + } + } +} diff --git a/boards/mellow-super-8-pro-h723/board.webp b/boards/mellow-super-8-pro-h723/board.webp new file mode 100644 index 00000000..888e5c7f Binary files /dev/null and b/boards/mellow-super-8-pro-h723/board.webp differ diff --git a/boards/mellow-super-8-pro-h723/compile.sh b/boards/mellow-super-8-pro-h723/compile.sh new file mode 100644 index 00000000..2382c5b4 --- /dev/null +++ b/boards/mellow-super-8-pro-h723/compile.sh @@ -0,0 +1,22 @@ +#!/bin/bash + +if [ "$EUID" -ne 0 ] + then echo "ERROR: Please run as root" + exit +fi + +cp -f /home/pi/printer_data/config/RatOS/boards/mellow-super-8-pro-h723/firmware.config /home/pi/klipper/.config +pushd /home/pi/klipper || exit +make olddefconfig +make clean +make + +if [ ! -d "/home/pi/printer_data/config/firmware_binaries" ] +then + mkdir /home/pi/printer_data/config/firmware_binaries + chown pi:pi /home/pi/printer_data/config/firmware_binaries +fi +cp -f /home/pi/klipper/out/klipper.bin /home/pi/printer_data/config/firmware_binaries/firmware-mellow-super-8-pro-h723.bin +chown pi:pi /home/pi/printer_data/config/firmware_binaries/firmware-mellow-super-8-pro-h723.bin + +popd || exit diff --git a/boards/mellow-super-8-pro-h723/config.cfg b/boards/mellow-super-8-pro-h723/config.cfg new file mode 100644 index 00000000..3b3c6e44 --- /dev/null +++ b/boards/mellow-super-8-pro-h723/config.cfg @@ -0,0 +1,58 @@ +# WARNING. DO NOT EDIT THIS FILE. +# To override settings from this file, you can copy and paste the relevant +# sections into your printer.cfg and change it there. +# WARNING: it is NOT recommended to override board_pins aliases, +# use the boards pin names directly in your printer.cfg instead. +# Look up the pins you need in the boards pinout diagram. + +[board_pins super_8_pro_h723_tmc2209] +aliases: +# steppers + x_step_pin=PE6, x_dir_pin=PG6, x_enable_pin=PG7, x_uart_pin=PG5, x_diag_pin=PG10, x_endstop_pin=PG10, + y_step_pin=PE0, y_dir_pin=PG3, y_enable_pin=PG4, y_uart_pin=PG2, y_diag_pin=PG11, y_endstop_pin=PG11, + z0_step_pin=PE4, z0_dir_pin=PG0, z0_enable_pin=PG1, z0_uart_pin=PF15, z0_diag_pin=null, + z1_step_pin=PE3, z1_dir_pin=PF13, z1_enable_pin=PF14, z1_uart_pin=PF12, z1_diag_pin=null, + z2_step_pin=PE2, z2_dir_pin=PC5, z2_enable_pin=PF11, z2_uart_pin=PC4, z2_diag_pin=null, + z3_step_pin=PE14, z3_dir_pin=PE9, z3_enable_pin=PE9, z3_uart_pin=PE7, z3_diag_pin=null, # Voron 2.4 support + e_step_pin=PE1, e_dir_pin=PF0, e_enable_pin=PC15, e_uart_pin=PF1, e_diag_pin=null, e_heater_pin=PB0, e_sensor_pin=PF4, + stepper_spi_mosi_pin=PB5, stepper_spi_miso_pin=PB4, stepper_spi_sclk_pin=PB3, +# Hybrid CoreXY Single Toolhead + y1_step_pin=PE15, y1_dir_pin=PE11, y1_enable_pin=PF2, y1_uart_pin=PE10, y1_diag_pin=PG12, + x1_step_pin=PE14, x1_dir_pin=PE8, x1_enable_pin=PE9, x1_uart_pin=PE7, x1_diag_pin=PG9, +# Hybrid CoreXY IDEX + dual_carriage_step_pin=PE15, dual_carriage_dir_pin=PE11, dual_carriage_enable_pin=PF2, dual_carriage_uart_pin=PE10, dual_carriage_diag_pin=PG11, + dual_carriage_heater_pin=PB1, dual_carriage_sensor_pin=PF5, +# accel + adxl345_cs_pin=PD0, +# auto leveling + bltouch_sensor_pin=PC3, bltouch_control_pin=PC6, + probe_pin=PF3, +# fans + fan_part_cooling_pin=PA0, + fan_toolhead_cooling_pin=PA1, + fan_controller_board_pin=PA2, +# Bed heater + heater_bed_heating_pin=PE5, + heater_bed_sensor_pin=PC1, + +## Expansion ports + # EXP1 header + EXP1_1=PE12, EXP1_3=PB2, EXP1_5=PC14, EXP1_7=PG14, EXP1_9=, + EXP1_2=PE13, EXP1_4=PG8, EXP1_6=PC13, EXP1_8=PG13, EXP1_10=<5V>, + # EXP2 header + EXP2_1=PA6, EXP2_3=PB7, EXP2_5=PB6, EXP2_7=PG15, EXP2_9=, + EXP2_2=PA5, EXP2_4=PA4, EXP2_6=PA7, EXP2_8=, EXP2_10=, + + + +[mcu] +serial: /dev/mellow-super-8-pro-h723 + +[temperature_sensor Super_8_Pro] +sensor_type: temperature_mcu +min_temp: 0 +max_temp: 100 + +[adxl345] +spi_bus: spi1 +cs_pin: adxl345_cs_pin diff --git a/boards/mellow-super-8-pro-h723/dfubooting.drawio.svg b/boards/mellow-super-8-pro-h723/dfubooting.drawio.svg new file mode 100644 index 00000000..6f40dd38 --- /dev/null +++ b/boards/mellow-super-8-pro-h723/dfubooting.drawio.svg @@ -0,0 +1,4 @@ + + + +RESETBOOT \ No newline at end of file diff --git a/boards/mellow-super-8-pro-h723/fan-wiring.drawio.svg b/boards/mellow-super-8-pro-h723/fan-wiring.drawio.svg new file mode 100644 index 00000000..532aa89d --- /dev/null +++ b/boards/mellow-super-8-pro-h723/fan-wiring.drawio.svg @@ -0,0 +1,4 @@ + + + +PART COOLING FANHOTEND FANCONTROLLER FAN \ No newline at end of file diff --git a/boards/mellow-super-8-pro-h723/firmware.config b/boards/mellow-super-8-pro-h723/firmware.config new file mode 100644 index 00000000..b0e57691 --- /dev/null +++ b/boards/mellow-super-8-pro-h723/firmware.config @@ -0,0 +1,95 @@ +CONFIG_LOW_LEVEL_OPTIONS=y +# CONFIG_MACH_AVR is not set +# CONFIG_MACH_ATSAM is not set +# CONFIG_MACH_ATSAMD is not set +# CONFIG_MACH_LPC176X is not set +CONFIG_MACH_STM32=y +# CONFIG_MACH_RP2040 is not set +# CONFIG_MACH_PRU is not set +# CONFIG_MACH_LINUX is not set +# CONFIG_MACH_SIMU is not set +CONFIG_BOARD_DIRECTORY="stm32" +CONFIG_MCU="stm32h723xx" +CONFIG_CLOCK_FREQ=400000000 +CONFIG_USBSERIAL=y +CONFIG_FLASH_SIZE=0x40000 +CONFIG_FLASH_BOOT_ADDRESS=0x8000000 +CONFIG_RAM_START=0x20000000 +CONFIG_RAM_SIZE=0x20000 +CONFIG_STACK_SIZE=512 +CONFIG_FLASH_APPLICATION_ADDRESS=0x8020000 +CONFIG_STM32_SELECT=y +# CONFIG_MACH_STM32F103 is not set +# CONFIG_MACH_STM32F207 is not set +# CONFIG_MACH_STM32F401 is not set +# CONFIG_MACH_STM32F405 is not set +# CONFIG_MACH_STM32F407 is not set +# CONFIG_MACH_STM32F429 is not set +# CONFIG_MACH_STM32F446 is not set +# CONFIG_MACH_STM32F031 is not set +# CONFIG_MACH_STM32F042 is not set +# CONFIG_MACH_STM32F070 is not set +# CONFIG_MACH_STM32F072 is not set +# CONFIG_MACH_STM32G070 is not set +# CONFIG_MACH_STM32G071 is not set +# CONFIG_MACH_STM32G0B0 is not set +# CONFIG_MACH_STM32G0B1 is not set +# CONFIG_MACH_STM32G431 is not set +CONFIG_MACH_STM32H723=y +# CONFIG_MACH_STM32H743 is not set +# CONFIG_MACH_STM32H750 is not set +# CONFIG_MACH_STM32L412 is not set +CONFIG_MACH_STM32H7=y +CONFIG_HAVE_STM32_USBOTG=y +CONFIG_HAVE_STM32_FDCANBUS=y +CONFIG_HAVE_STM32_USBCANBUS=y +CONFIG_STM32_DFU_ROM_ADDRESS=0x1ff09800 +CONFIG_STM32_FLASH_START_20000=y +# CONFIG_STM32_FLASH_START_0000 is not set +# CONFIG_STM32_CLOCK_REF_8M is not set +# CONFIG_STM32_CLOCK_REF_12M is not set +# CONFIG_STM32_CLOCK_REF_16M is not set +# CONFIG_STM32_CLOCK_REF_20M is not set +CONFIG_STM32_CLOCK_REF_25M=y +# CONFIG_STM32_CLOCK_REF_INTERNAL is not set +CONFIG_CLOCK_REF_FREQ=25000000 +CONFIG_STM32F0_TRIM=16 +CONFIG_STM32_USB_PA11_PA12=y +# CONFIG_STM32_SERIAL_USART1 is not set +# CONFIG_STM32_SERIAL_USART1_ALT_PB7_PB6 is not set +# CONFIG_STM32_SERIAL_USART2 is not set +# CONFIG_STM32_SERIAL_USART2_ALT_PD6_PD5 is not set +# CONFIG_STM32_SERIAL_USART3 is not set +# CONFIG_STM32_SERIAL_USART3_ALT_PD9_PD8 is not set +# CONFIG_STM32_SERIAL_UART4 is not set +# CONFIG_STM32_CANBUS_PA11_PA12 is not set +# CONFIG_STM32_CANBUS_PA11_PB9 is not set +# CONFIG_STM32_MMENU_CANBUS_PB8_PB9 is not set +# CONFIG_STM32_MMENU_CANBUS_PD0_PD1 is not set +# CONFIG_STM32_MMENU_CANBUS_PB0_PB1 is not set +# CONFIG_STM32_MMENU_CANBUS_PD12_PD13 is not set +# CONFIG_STM32_MMENU_CANBUS_PC2_PC3 is not set +# CONFIG_STM32_USBCANBUS_PA11_PA12 is not set +CONFIG_USB=y +CONFIG_USB_VENDOR_ID=0x1d50 +CONFIG_USB_DEVICE_ID=0x614e +# CONFIG_USB_SERIAL_NUMBER_CHIPID is not set +CONFIG_USB_SERIAL_NUMBER="btt-octopus-pro-h723-11" + +# +# USB ids +# +# end of USB ids + +CONFIG_CANBUS_FREQUENCY=500000 +CONFIG_INITIAL_PINS="" +CONFIG_HAVE_GPIO=y +CONFIG_HAVE_GPIO_ADC=y +CONFIG_HAVE_GPIO_SPI=y +CONFIG_HAVE_GPIO_HARD_PWM=y +CONFIG_HAVE_GPIO_BITBANGING=y +CONFIG_HAVE_STRICT_TIMING=y +CONFIG_HAVE_CHIPID=y +CONFIG_HAVE_STEPPER_BOTH_EDGE=y +CONFIG_HAVE_BOOTLOADER_REQUEST=y +CONFIG_INLINE_STEPPER_HACK=y diff --git a/boards/mellow-super-8-pro-h723/flash.sh b/boards/mellow-super-8-pro-h723/flash.sh new file mode 100644 index 00000000..3c52d5c1 --- /dev/null +++ b/boards/mellow-super-8-pro-h723/flash.sh @@ -0,0 +1,9 @@ +#!/bin/bash +MCU=/dev/mellow-super-8-pro-h723 +if [ "$EUID" -ne 0 ] + then echo "ERROR: Please run as root" + exit +fi +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) +FLASH_SCRIPT=$(realpath "$SCRIPT_DIR/../../scripts/flash-path.sh") +$FLASH_SCRIPT $MCU diff --git a/boards/mellow-super-8-pro-h723/make-and-flash-mcu.sh b/boards/mellow-super-8-pro-h723/make-and-flash-mcu.sh new file mode 100644 index 00000000..5d90ffdc --- /dev/null +++ b/boards/mellow-super-8-pro-h723/make-and-flash-mcu.sh @@ -0,0 +1,20 @@ +#!/bin/bash +# NOTE: This script ONLY WORKS if there's no SD card in the board AND the +# board has already been flashed with klipper via SD card. +# NEXT SECTION IS ONLY RELEVANT IF USING THE bt0/3.3v JUMPER (NOT RECOMMENDED) +# The first time the board is booted after the jumper has been installed +# the board needs to be flashed via the dfu vendor:device id. After that +# it can be flashed via the /dev/mellow-super-8-pro path, but it then fails +# to exit dfu mode, and then one needs to flash it yet again with the +# vendor:device id. Then it correctly exits DFU mode. Except those times +# where it doesn't, for that we have a 3rd pass... + +if [ "$EUID" -ne 0 ] + then echo "ERROR: Please run as root" + exit +fi + +SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd ) + +"$SCRIPT_DIR"/compile.sh +"$SCRIPT_DIR"/flash.sh diff --git a/boards/mellow-super-8-pro-h723/manual.pdf b/boards/mellow-super-8-pro-h723/manual.pdf new file mode 100644 index 00000000..8b137891 Binary files /dev/null and b/boards/mellow-super-8-pro-h723/manual.pdf differ diff --git a/boards/mellow-super-8-pro-h723/wiring.drawio.svg b/boards/mellow-super-8-pro-h723/wiring.drawio.svg new file mode 100644 index 00000000..0c956492 --- /dev/null +++ b/boards/mellow-super-8-pro-h723/wiring.drawio.svg @@ -0,0 +1,4 @@ + + + +24V PSU5V INDUCTIVE PROBEBLTOUCHX ENDSTOPHEATERTHERMISTORY ENDSTOPLEFTRIGHTEXTRUDERRIGHT ZBEDADXL345REAR ZLEFT ZSSR \ No newline at end of file