Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
6b8b65e
Beginnings of AFC
suchmememanyskill May 5, 2026
892bc88
Forgor to actually include AFC in the build
suchmememanyskill May 5, 2026
d637625
Build CANVAS firmware, fix build issues in afc bb
suchmememanyskill May 5, 2026
d505c61
Fix katapult patch
suchmememanyskill May 5, 2026
2578aa8
Don't forget klipper ver
suchmememanyskill May 5, 2026
df6ecac
oops
suchmememanyskill May 5, 2026
0339d1a
Don't forget to delete unnesesary file
suchmememanyskill May 5, 2026
34fe4fd
We don't have a canvas initscript yet
suchmememanyskill May 6, 2026
1e534b1
oops wrong path
suchmememanyskill May 7, 2026
7feeef6
New AFC version
suchmememanyskill May 8, 2026
0f1ff3f
Add patch to allow excluding sections
suchmememanyskill May 14, 2026
f21f9a8
Bump AFC version
suchmememanyskill May 14, 2026
27078a8
Canvas CFG changes
suchmememanyskill May 14, 2026
b3baf1c
Speed
suchmememanyskill May 14, 2026
f64860a
Bump AFC version
suchmememanyskill May 14, 2026
fc8e945
Add stock bootloader flasher, add way to auto-upgrade canvas firmware
suchmememanyskill May 18, 2026
56fec12
oops upload the correct configs
suchmememanyskill May 18, 2026
91ce9d5
Improve macros for AFC
suchmememanyskill May 24, 2026
a0e4a9d
Remove toolhead cover pin
suchmememanyskill May 25, 2026
e8447a5
oops
suchmememanyskill May 27, 2026
8c9bd7b
Untested: Adapt AFC branch to new macros
suchmememanyskill Jun 27, 2026
80e5a89
Add new thermistor to cfg
suchmememanyskill Jun 27, 2026
d092cb9
Adjust max back position for macros
suchmememanyskill Jun 27, 2026
efd8e47
Fix new wiper position
suchmememanyskill Jun 27, 2026
b5b1638
fix kick
suchmememanyskill Jun 27, 2026
3b78ed9
more fixes
suchmememanyskill Jun 27, 2026
a90646a
Move out out tray at start print
suchmememanyskill Jun 27, 2026
ac912cc
Don't do filament check in AFC during START_PRINT (will be loaded in …
suchmememanyskill Jun 28, 2026
45563c5
Bump version of AFC
suchmememanyskill Jun 28, 2026
b131a2c
Better load macro for AFC
suchmememanyskill Jun 29, 2026
4cdf558
Simplify load macro
suchmememanyskill Jun 30, 2026
e609acd
Free timeout
suchmememanyskill Jun 30, 2026
ab7c032
Add canvas MCU temperature sensor (#230)
Atomique13 Jun 30, 2026
08a714a
Flashing improvements
suchmememanyskill Jul 3, 2026
17e91c0
Bump AFC version
suchmememanyskill Jul 3, 2026
c3a7298
Bump version of mcu flasher
suchmememanyskill Jul 4, 2026
4e8e910
Hopefully fix pause & load stall issues
suchmememanyskill Jul 4, 2026
b066819
Don't jump during cut; bump AFC version
suchmememanyskill Jul 4, 2026
6bbe35a
Bump AFC version
suchmememanyskill Jul 19, 2026
3c42bf6
Push new macros
suchmememanyskill Jul 19, 2026
4dad9c4
Also make kick go to X=181
suchmememanyskill Jul 19, 2026
837fa85
Bump AFC; enable runout detection; increase afc_bowden_length
suchmememanyskill Jul 19, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions meta-opencentauri/images/opencentauri-image-base.bb
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ CORE_IMAGE_EXTRA_INSTALL += "\
v4l-utils \
iproute2 \
chrony \
afc \
"

INITRAMFS_IMAGE = "core-image-tiny-initramfs"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
require katapult_${PV}.inc

SUMMARY = "Stock Canvas Bootloader Deployer"
DESCRIPTION = "Builds the Katapult deployer binary for reverting the canvas bootloader to stock."

SRC_URI += " \
file://config.canvas \
file://canvas-cc1-bootloader-stock.bin \
"

DEPENDS += "gcc-arm-none-eabi-native"

EXTRA_OEMAKE += " \
KCONFIG_CONFIG=../config.canvas \
DEPLOYER_PAYLOAD=../canvas-cc1-bootloader-stock.bin \
"

do_install() {
install -d ${D}/lib/firmware
install -m 0644 ${S}/out/deployer.bin ${D}/lib/firmware/katapult-deployer-stock-canvas.bin
}

FILES:${PN} = " \
/lib/firmware/katapult-deployer-stock-canvas.bin \
"
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
require katapult_${PV}.inc

SUMMARY = "Katapult Canvas Bootloader Deployer"
DESCRIPTION = "Builds the Katapult deployer binary for upgrading the canvas bootloader."

SRC_URI += " \
file://config.canvas \
"

DEPENDS += "gcc-arm-none-eabi-native"

EXTRA_OEMAKE += "KCONFIG_CONFIG=../config.canvas"

do_install() {
install -d ${D}/lib/firmware
install -m 0644 ${S}/out/deployer.bin ${D}/lib/firmware/katapult-deployer-canvas.bin
}

FILES:${PN} = " \
/lib/firmware/katapult-deployer-canvas.bin \
"
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
diff --git a/src/stm32/Kconfig b/src/stm32/Kconfig
index d45234c..df937ef 100644
index d45234c..4727d76 100644
--- a/src/stm32/Kconfig
+++ b/src/stm32/Kconfig
@@ -248,7 +248,7 @@ choice
Expand All @@ -11,19 +11,22 @@ index d45234c..df937ef 100644
config STM32_FLASH_START_10000
bool "64KiB bootloader" if MACH_STM32F103 || MACH_STM32F446 || MACH_STM32F401
config STM32_FLASH_START_800
@@ -496,6 +496,8 @@ choice
@@ -496,6 +496,10 @@ choice
prompt "Application start offset"
config STM32_APP_START_20000
bool "128KiB offset" if MACH_STM32H7 && !MACH_STM32H750
+ config STM32_APP_START_10000
+ bool "64KiB offset" if MACH_STM32F4
+ config STM32_APP_START_C000
+ bool "48KiB offset" if MACH_STM32F4
config STM32_APP_START_8000
bool "32KiB offset" if MACH_STM32F2 || MACH_STM32F4 || MACH_STM32H750
config STM32_APP_START_4000
@@ -509,6 +511,7 @@ endchoice
@@ -509,6 +513,8 @@ endchoice
config LAUNCH_APP_ADDRESS
hex
default 0x8020000 if STM32_APP_START_20000
+ default 0x8010000 if STM32_APP_START_10000
+ default 0x800C000 if STM32_APP_START_C000
default 0x8008000 if STM32_APP_START_8000
default 0x8004000 if STM32_APP_START_4000
Expand Down
Binary file not shown.
85 changes: 85 additions & 0 deletions meta-opencentauri/recipes-apps/katapult/files/config.canvas
Original file line number Diff line number Diff line change
@@ -0,0 +1,85 @@
CONFIG_LOW_LEVEL_OPTIONS=y
# CONFIG_MACH_LPC176X is not set
CONFIG_MACH_STM32=y
# CONFIG_MACH_RPXXXX is not set
CONFIG_BOARD_DIRECTORY="stm32"
CONFIG_MCU="stm32f401xc"
CONFIG_CLOCK_FREQ=84000000
CONFIG_FLASH_SIZE=0x40000
CONFIG_FLASH_BOOT_ADDRESS=0x8000000
CONFIG_RAM_START=0x20000000
CONFIG_RAM_SIZE=0x10000
CONFIG_STACK_SIZE=512
CONFIG_FLASH_APPLICATION_ADDRESS=0x8010000
CONFIG_FLASH_START=0x8000000
CONFIG_LAUNCH_APP_ADDRESS=0x8010000
CONFIG_BLOCK_SIZE=64
CONFIG_STM32_SELECT=y
# CONFIG_MACH_STM32F103 is not set
# CONFIG_MACH_STM32F207 is not set
CONFIG_MACH_STM32F401=y
# 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_STM32G0B0 is not set
# CONFIG_MACH_STM32G0B1 is not set
# CONFIG_MACH_STM32G431 is not set
# CONFIG_MACH_STM32H723 is not set
# CONFIG_MACH_STM32H743 is not set
# CONFIG_MACH_STM32H750 is not set
CONFIG_MACH_STM32F4=y
CONFIG_HAVE_STM32_USBOTG=y
CONFIG_STM32_DFU_ROM_ADDRESS=0x1fff0000
# CONFIG_STM32_FLASH_START_0000 is not set
# CONFIG_STM32_FLASH_START_8000 is not set
CONFIG_STM32_FLASH_START_10000=y
# CONFIG_STM32_FLASH_START_4000 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_24M=y
# CONFIG_STM32_CLOCK_REF_25M is not set
# CONFIG_STM32_CLOCK_REF_32M is not set
# CONFIG_STM32_CLOCK_REF_INTERNAL is not set
CONFIG_CLOCK_REF_FREQ=24000000
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_APP_START_10000=y
# CONFIG_STM32_APP_START_8000 is not set
# CONFIG_STM32_APP_START_4000 is not set
CONFIG_USBSERIAL=y
CONFIG_USB=y
CONFIG_USB_VENDOR_ID=0x1d50
CONFIG_USB_DEVICE_ID=0x6177
CONFIG_USB_SERIAL_NUMBER_CHIPID=y
CONFIG_USB_SERIAL_NUMBER="12345"

#
# USB ids
#
# end of USB ids

CONFIG_CANBUS_FREQUENCY=1000000
CONFIG_HAVE_OPTIMIZE_OS=y
# CONFIG_HAVE_OPTIMIZE_O2 is not set
# CONFIG_HAVE_OPTIMIZE_OZ is not set
# CONFIG_HAVE_OPTIMIZE_OG is not set
# CONFIG_HAVE_OPTIMIZE_O0 is not set
CONFIG_OPTIMIZE_FLAG="-Os"
CONFIG_INITIAL_PINS=""
CONFIG_ENABLE_DOUBLE_RESET=y
# CONFIG_ENABLE_BUTTON is not set
# CONFIG_ENABLE_LED is not set
CONFIG_BUILD_DEPLOYER=y
CONFIG_HAVE_CHIPID=y
CONFIG_KATAPULT_VERSION="v0.0.1-113-gec59b9b-dirty"
4 changes: 2 additions & 2 deletions meta-opencentauri/recipes-apps/katapult/katapult_1.0.0.inc
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,10 @@ FILESEXTRAPATHS:prepend := "${THISDIR}/files:"

SRC_URI = " \
git://github.com/Arksine/katapult.git;protocol=https;branch=master \
file://01-add-support-for-48kib-offset.patch \
file://0001-Add-DEPLOYER_PAYLOAD-parameter.patch \
file://0002-add-support-for-48kib-and-64kib-offset.patch \
"
SRCREV = "32584cbbb66c4dc85fc87c0fa87ed508f7c2df52"
SRCREV = "ec59b9bb9ad6c2ec8d4dc6831fbc77f0b308e29e"

S = "${WORKDIR}/git"

Expand Down
Loading
Loading