What is the difference between BIGTREE_OCTOPUS_V1 and BIGTREE_OCTOPUS_V1_USB
When building Marlin firmware for the BigTreeTech Octopus from the official BigTreeTech GitHub repository Marlin directory, you can see two different targets in PlatformIO:
- BIGTREE_OCTOPUS_V1
- BIGTREE_OCTOPUS_V1_USB
It is not immediately made clear what the difference between those is, but a short description can be found in ini/stm32f4.ini
:
BIGTREE_OCTOPUS_V1_USB
has support for using USB flashdrives directly on the board and serial-over-USB while BIGTREE_OCTOPUS_V1
has not.
In most cases, you want to build BIGTREE_OCTOPUS_V1_USB
if printing via USB (e.g. via Octoprint) because the BIGTREE_OCTOPUS_V1
configuration does not allow printing via USB.
The compiler definitions for BIGTREE_OCTOPUS_V1
in ini/stm32f4.ini
are:
build_flags = ${stm32_variant.build_flags}
-DSTM32F446_5VX -DUSE_USB_HS_IN_FS
whereas BIGTREE_OCTOPUS_V1_USB
enabled more USB-related features:
build_flags = ${stm_flash_drive.build_flags}
-DSTM32F446_5VX -DUSE_USB_HS_IN_FS
-DUSE_USBHOST_HS -DUSBD_IRQ_PRIO=5
-DUSBD_IRQ_SUBPRIO=6
-DUSBD_USE_CDC_MSC