I’ve been trying to compile firmware for my 3D Printer but I keep getting this error, I asked in Marlin discord and saw posts on the Marlin Github and was told to forward it here.
The board’s chip is STM32F103RE
This is the error I am getting:
Error: Traceback (most recent call last):
File "C:\.platformio\penv\lib\site-packages\platformio\__main__.py", line 102, in main
cli() # pylint: disable=no-value-for-parameter
File "C:\.platformio\penv\lib\site-packages\click\core.py", line 1130, in __call__
return self.main(*args, **kwargs)
File "C:\.platformio\penv\lib\site-packages\click\core.py", line 1055, in main
rv = self.invoke(ctx)
File "C:\.platformio\penv\lib\site-packages\platformio\cli.py", line 71, in invoke
return super().invoke(ctx)
File "C:\.platformio\penv\lib\site-packages\click\core.py", line 1657, in invoke
return _process_result(sub_ctx.command.invoke(sub_ctx))
File "C:\.platformio\penv\lib\site-packages\click\core.py", line 1404, in invoke
return ctx.invoke(self.callback, **ctx.params)
File "C:\.platformio\penv\lib\site-packages\click\core.py", line 760, in invoke
return __callback(*args, **kwargs)
File "C:\.platformio\penv\lib\site-packages\click\decorators.py", line 26, in new_func
return f(get_current_context(), *args, **kwargs)
File "C:\.platformio\penv\lib\site-packages\platformio\run\cli.py", line 147, in cli
process_env(
File "C:\.platformio\penv\lib\site-packages\platformio\run\cli.py", line 204, in process_env
result = {"env": name, "duration": time(), "succeeded": ep.process()}
File "C:\.platformio\penv\lib\site-packages\platformio\run\processor.py", line 83, in process
install_project_env_dependencies(
File "C:\.platformio\penv\lib\site-packages\platformio\package\commands\install.py", line 131, in install_project_env_dependencies
_install_project_env_platform(project_env, options),
File "C:\.platformio\penv\lib\site-packages\platformio\package\commands\install.py", line 148, in _install_project_env_platform
PlatformPackageManager().install(
File "C:\.platformio\penv\lib\site-packages\platformio\platform\base.py", line 184, in configure_project_packages
self.configure_default_packages(options, targets or [])
File "C:\.platformio\platforms\ststm32\platform.py", line 35, in configure_default_packages
if board.startswith("portenta"):
AttributeError: 'NoneType' object has no attribute 'startswith'
============================================================
An unexpected error occurred. Further steps:
* Verify that you have the latest version of PlatformIO using
`pip install -U platformio` command
* Try to find answer in FAQ Troubleshooting section
https://docs.platformio.org/page/faq/index.html
* Report this problem to the developers
https://github.com/platformio/platformio-core/issues
============================================================
I’ve tried completely deleting and reinstalling Platform.io, and using the latest version
I’ve also tried many different Marlin versions, including latest and bug fixes
and I’ve tried creating my own board file similar to it and it gave the same error
here is my platformio.ini
#
# Marlin Firmware
# PlatformIO Configuration File
#
# For detailed documentation with EXAMPLES:
#
# https://docs.platformio.org/en/latest/projectconf/index.html
#
# Automatic targets - enable auto-uploading
#targets = upload
[platformio]
src_dir = Marlin
boards_dir = buildroot/share/PlatformIO/boards
default_envs = STM32F103RE_creality_smartPro
include_dir = Marlin
extra_configs =
Marlin/config.ini
ini/avr.ini
ini/due.ini
ini/esp32.ini
ini/features.ini
ini/lpc176x.ini
ini/native.ini
ini/samd21.ini
ini/samd51.ini
ini/stm32-common.ini
ini/stm32f0.ini
ini/stm32f1-maple.ini
ini/stm32f1.ini
ini/stm32f4.ini
ini/stm32f7.ini
ini/stm32h7.ini
ini/stm32g0.ini
ini/teensy.ini
ini/renamed.ini
#
# The 'common' section applies to most Marlin builds.
#
# By default platformio build will abort after 5 errors.
# Remove '-fmax-errors=5' from build_flags below to see all.
#
[common]
build_flags = -g3 -D__MARLIN_FIRMWARE__ -DNDEBUG
-fmax-errors=5
extra_scripts =
pre:buildroot/share/PlatformIO/scripts/configuration.py
pre:buildroot/share/PlatformIO/scripts/common-dependencies.py
pre:buildroot/share/PlatformIO/scripts/common-cxxflags.py
pre:buildroot/share/PlatformIO/scripts/preflight-checks.py
post:buildroot/share/PlatformIO/scripts/common-dependencies-post.py
lib_deps =
default_src_filter = +<src/*> -<src/config> -<src/HAL> +<src/HAL/shared> -<src/tests>
-<src/lcd/HD44780> -<src/lcd/TFTGLCD> -<src/lcd/dogm> -<src/lcd/tft> -<src/lcd/tft_io>
-<src/HAL/STM32/tft> -<src/HAL/STM32F1/tft>
-<src/lcd/e3v2/common> -<src/lcd/e3v2/creality> -<src/lcd/e3v2/proui> -<src/lcd/e3v2/jyersui> -<src/lcd/e3v2/marlinui>
-<src/lcd/menu>
-<src/lcd/menu/game/game.cpp> -<src/lcd/menu/game/brickout.cpp> -<src/lcd/menu/game/invaders.cpp>
-<src/lcd/menu/game/maze.cpp> -<src/lcd/menu/game/snake.cpp>
-<src/lcd/menu/menu_backlash.cpp>
-<src/lcd/menu/menu_bed_leveling.cpp>
-<src/lcd/menu/menu_bed_tramming.cpp>
-<src/lcd/menu/menu_cancelobject.cpp>
-<src/lcd/menu/menu_delta_calibrate.cpp>
-<src/lcd/menu/menu_filament.cpp>
-<src/lcd/menu/menu_info.cpp>
-<src/lcd/menu/menu_job_recovery.cpp>
-<src/lcd/menu/menu_language.cpp>
-<src/lcd/menu/menu_led.cpp>
-<src/lcd/menu/menu_media.cpp>
-<src/lcd/menu/menu_mmu2.cpp>
-<src/lcd/menu/menu_password.cpp>
-<src/lcd/menu/menu_power_monitor.cpp>
-<src/lcd/menu/menu_spindle_laser.cpp>
-<src/lcd/menu/menu_temperature.cpp>
-<src/lcd/menu/menu_tmc.cpp>
-<src/lcd/menu/menu_touch_screen.cpp>
-<src/lcd/menu/menu_tramming_wizard.cpp>
-<src/lcd/menu/menu_ubl.cpp>
-<src/lcd/menu/menu_x_twist.cpp>
-<src/lcd/extui/anycubic> -<src/lcd/extui/anycubic_chiron> -<src/lcd/extui/anycubic_vyper> -<src/lcd/extui/anycubic_i3mega>
-<src/lcd/extui/dgus> -<src/lcd/extui/dgus/fysetc> -<src/lcd/extui/dgus/hiprecy> -<src/lcd/extui/dgus/mks> -<src/lcd/extui/dgus/origin>
-<src/lcd/extui/dgus_reloaded>
-<src/lcd/extui/example>
-<src/lcd/extui/ftdi_eve_touch_ui>
-<src/lcd/extui/malyan>
-<src/lcd/extui/mks_ui>
-<src/lcd/extui/nextion>
-<src/lcd/extui/ia_creality>
-<src/lcd/lcdprint.cpp>
-<src/lcd/touch/touch_buttons.cpp>
-<src/sd/usb_flashdrive/lib-uhs2> -<src/sd/usb_flashdrive/lib-uhs3>
-<src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp>
-<src/sd/cardreader.cpp> -<src/sd/Sd2Card.cpp> -<src/sd/SdBaseFile.cpp> -<src/sd/SdFatUtil.cpp> -<src/sd/SdFile.cpp> -<src/sd/SdVolume.cpp>
-<src/HAL/shared/backtrace>
-<src/HAL/shared/cpu_exception>
-<src/HAL/shared/eeprom_if_i2c.cpp>
-<src/HAL/shared/eeprom_if_spi.cpp>
-<src/feature/adc> -<src/gcode/feature/adc>
-<src/feature/ammeter.cpp>
-<src/feature/babystep.cpp>
-<src/feature/backlash.cpp>
-<src/feature/baricuda.cpp> -<src/gcode/feature/baricuda>
-<src/feature/bedlevel/abl> -<src/gcode/bedlevel/abl>
-<src/feature/bedlevel/bdl> -<src/gcode/probe/M102.cpp>
-<src/feature/bedlevel/mbl> -<src/gcode/bedlevel/mbl>
-<src/feature/bedlevel/ubl> -<src/gcode/bedlevel/ubl>
-<src/feature/bedlevel/hilbert_curve.cpp>
-<src/feature/binary_stream.cpp> -<src/libs/heatshrink>
-<src/feature/bltouch.cpp>
-<src/feature/cancel_object.cpp> -<src/gcode/feature/cancel>
-<src/feature/caselight.cpp> -<src/gcode/feature/caselight>
-<src/feature/closedloop.cpp>
-<src/feature/controllerfan.cpp> -<src/gcode/feature/controllerfan>
-<src/feature/cooler.cpp> -<src/gcode/temp/M143_M193.cpp>
-<src/feature/dac> -<src/feature/digipot>
-<src/feature/direct_stepping.cpp> -<src/gcode/motion/G6.cpp>
-<src/feature/e_parser.cpp>
-<src/feature/easythreed_ui.cpp>
-<src/feature/encoder_i2c.cpp>
-<src/feature/ethernet.cpp> -<src/gcode/feature/network/M552-M554.cpp>
-<src/feature/fancheck.cpp>
-<src/feature/fanmux.cpp>
-<src/feature/filwidth.cpp> -<src/gcode/feature/filwidth>
-<src/feature/fwretract.cpp> -<src/gcode/feature/fwretract>
-<src/feature/host_actions.cpp>
-<src/feature/hotend_idle.cpp>
-<src/feature/joystick.cpp>
-<src/feature/leds/blinkm.cpp>
-<src/feature/leds/leds.cpp>
-<src/feature/leds/neopixel.cpp>
-<src/feature/leds/pca9533.cpp>
-<src/feature/leds/pca9632.cpp>
-<src/feature/leds/printer_event_leds.cpp>
-<src/feature/leds/tempstat.cpp>
-<src/feature/max7219.cpp>
-<src/feature/meatpack.cpp>
-<src/feature/mixing.cpp>
-<src/feature/mmu/mmu.cpp>
-<src/feature/mmu/mmu2.cpp> -<src/gcode/feature/prusa_MMU2>
-<src/feature/password> -<src/gcode/feature/password>
-<src/feature/pause.cpp>
-<src/feature/power.cpp>
-<src/feature/power_monitor.cpp> -<src/gcode/feature/power_monitor>
-<src/feature/powerloss.cpp> -<src/gcode/feature/powerloss>
-<src/feature/probe_temp_comp.cpp>
-<src/feature/repeat.cpp>
-<src/feature/runout.cpp> -<src/gcode/feature/runout>
-<src/feature/snmm.cpp>
-<src/feature/solenoid.cpp> -<src/gcode/control/M380_M381.cpp>
-<src/feature/spindle_laser.cpp> -<src/gcode/control/M3-M5.cpp>
-<src/feature/stepper_driver_safety.cpp>
-<src/feature/tmc_util.cpp> -<src/module/stepper/trinamic.cpp>
-<src/feature/tramming.cpp>
-<src/feature/twibus.cpp>
-<src/feature/x_twist.cpp> -<src/gcode/probe/M423.cpp>
-<src/feature/z_stepper_align.cpp>
-<src/gcode/bedlevel/G26.cpp>
-<src/gcode/bedlevel/G35.cpp>
-<src/gcode/bedlevel/G42.cpp>
-<src/gcode/bedlevel/M420.cpp> -<src/feature/bedlevel/bedlevel.cpp>
-<src/gcode/calibrate/G33.cpp>
-<src/gcode/calibrate/G34.cpp>
-<src/gcode/calibrate/G34_M422.cpp>
-<src/gcode/calibrate/G76_M871.cpp>
-<src/gcode/calibrate/G425.cpp>
-<src/gcode/calibrate/M12.cpp>
-<src/gcode/calibrate/M48.cpp>
-<src/gcode/calibrate/M100.cpp>
-<src/gcode/calibrate/M425.cpp>
-<src/gcode/calibrate/M665.cpp>
-<src/gcode/calibrate/M666.cpp>
-<src/gcode/calibrate/M852.cpp>
-<src/gcode/control/M10-M11.cpp>
-<src/gcode/control/M42.cpp> -<src/gcode/control/M226.cpp>
-<src/gcode/config/M43.cpp>
-<src/gcode/config/M217.cpp>
-<src/gcode/config/M218.cpp>
-<src/gcode/config/M221.cpp>
-<src/gcode/config/M301.cpp>
-<src/gcode/config/M302.cpp>
-<src/gcode/config/M304.cpp>
-<src/gcode/config/M305.cpp>
-<src/gcode/config/M540.cpp>
-<src/gcode/config/M575.cpp>
-<src/gcode/config/M672.cpp>
-<src/gcode/control/M7-M9.cpp>
-<src/gcode/control/M211.cpp>
-<src/gcode/control/M350_M351.cpp>
-<src/gcode/control/M605.cpp>
-<src/module/ft_motion.cpp> -<src/gcode/feature/ft_motion/M493.cpp>
-<src/gcode/feature/advance>
-<src/gcode/feature/camera>
-<src/gcode/feature/i2c>
-<src/gcode/feature/input_shaping>
-<src/gcode/feature/L6470>
-<src/gcode/feature/leds/M150.cpp>
-<src/gcode/feature/leds/M7219.cpp>
-<src/gcode/feature/macro>
-<src/gcode/feature/mixing/M163-M165.cpp>
-<src/gcode/feature/mixing/M166.cpp>
-<src/gcode/feature/pause/G27.cpp>
-<src/gcode/feature/pause/G60.cpp>
-<src/gcode/feature/pause/G61.cpp>
-<src/gcode/feature/pause/M125.cpp>
-<src/gcode/feature/pause/M600.cpp>
-<src/gcode/feature/pause/M603.cpp>
-<src/gcode/feature/pause/M701_M702.cpp>
-<src/gcode/feature/trinamic/M122.cpp>
-<src/gcode/feature/trinamic/M569.cpp>
-<src/gcode/feature/trinamic/M906.cpp>
-<src/gcode/feature/trinamic/M911-M914.cpp>
-<src/gcode/feature/trinamic/M919.cpp>
-<src/gcode/geometry/G17-G19.cpp>
-<src/gcode/geometry/G53-G59.cpp>
-<src/gcode/geometry/M206_M428.cpp>
-<src/gcode/host/M16.cpp>
-<src/gcode/host/M113.cpp>
-<src/gcode/host/M154.cpp>
-<src/gcode/host/M360.cpp>
-<src/gcode/host/M876.cpp>
-<src/gcode/lcd/M0_M1.cpp>
-<src/gcode/lcd/M73.cpp>
-<src/gcode/lcd/M117.cpp>
-<src/gcode/lcd/M145.cpp>
-<src/gcode/lcd/M250.cpp> -<src/gcode/lcd/M255.cpp> -<src/gcode/lcd/M256.cpp>
-<src/gcode/lcd/M300.cpp>
-<src/gcode/lcd/M414.cpp>
-<src/gcode/lcd/M995.cpp>
-<src/gcode/motion/G2_G3.cpp>
-<src/gcode/motion/G5.cpp>
-<src/gcode/motion/G80.cpp>
-<src/gcode/motion/M290.cpp>
-<src/gcode/probe/G30.cpp>
-<src/gcode/probe/G31_G32.cpp>
-<src/gcode/probe/G38.cpp>
-<src/gcode/probe/M401_M402.cpp>
-<src/gcode/probe/M851.cpp>
-<src/gcode/probe/M951.cpp>
-<src/gcode/scara>
-<src/gcode/sd>
-<src/gcode/sd/M32.cpp>
-<src/gcode/sd/M808.cpp>
-<src/gcode/temp/M104_M109.cpp>
-<src/gcode/temp/M123.cpp>
-<src/gcode/temp/M155.cpp>
-<src/gcode/temp/M192.cpp>
-<src/gcode/temp/M306.cpp>
-<src/gcode/units/G20_G21.cpp>
-<src/gcode/units/M82_M83.cpp>
-<src/gcode/units/M149.cpp>
-<src/libs/BL24CXX.cpp> -<src/libs/W25Qxx.cpp>
-<src/libs/MAX31865.cpp>
-<src/libs/hex_print.cpp>
-<src/libs/least_squares_fit.cpp>
-<src/libs/nozzle.cpp> -<src/gcode/feature/clean>
-<src/module/delta.cpp>
-<src/module/planner_bezier.cpp>
-<src/module/polargraph.cpp>
-<src/module/printcounter.cpp>
-<src/module/probe.cpp>
-<src/module/scara.cpp>
-<src/module/servo.cpp> -<src/gcode/control/M280.cpp> -<src/gcode/config/M281.cpp> -<src/gcode/control/M282.cpp>
-<src/module/stepper/TMC26X.cpp>
#
# Default values apply to all 'env:' prefixed environments
#
[env]
framework = arduino
extra_scripts = ${common.extra_scripts}
build_flags = ${common.build_flags}
lib_deps = ${common.lib_deps}
monitor_speed = 250000
monitor_eol = LF
monitor_echo = yes
monitor_filters = colorize, time, send_on_enter
#
# Just print the dependency tree
#
[env:include_tree]
platform = atmelavr
board = megaatmega2560
build_flags = -c -H -std=gnu++11 -Wall -Os -D__MARLIN_FIRMWARE__
build_src_filter = +<src/MarlinCore.cpp>
here is the stm32f1.ini file, it is unchanged, I included it if needed
[env:STM32F103RE_creality_smartPro]
extends = STM32F103Rx_creality
board_build.offset = 0x10000
board_upload.offset_address = 0x08010000
[STM32F103Rx_creality]
extends = stm32_variant
board_build.variant = MARLIN_F103Rx
board_build.offset = 0x7000
board_upload.offset_address = 0x08007000
build_flags = ${stm32_variant.build_flags}
-DMCU_STM32F103RE -DHAL_SD_MODULE_ENABLED
-DSS_TIMER=4 -DTIMER_SERVO=TIM5
-DENABLE_HWSERIAL3 -DTRANSFER_CLOCK_DIV=8
build_unflags = ${stm32_variant.build_unflags}
-DUSBCON -DUSBD_USE_CDC
extra_scripts = ${stm32_variant.extra_scripts}
pre:buildroot/share/PlatformIO/scripts/random-bin.py
monitor_speed = 115200
debug_tool = jlink
upload_protocol = jlink
and stm32-common.ini
[stm32_variant]
extends = common_stm32
extra_scripts = ${common_stm32.extra_scripts}
pre:buildroot/share/PlatformIO/scripts/generic_create_variant.py
buildroot/share/PlatformIO/scripts/offset_and_rename.py
[common_stm32]
platform = ststm32@~12.1
board_build.core = stm32
build_flags = ${common.build_flags}
-std=gnu++14 -DHAL_STM32
-DUSBCON -DUSBD_USE_CDC
-DTIM_IRQ_PRIO=13
-DADC_RESOLUTION=12
build_unflags = -std=gnu++11
build_src_filter = ${common.default_src_filter} +<src/HAL/STM32> +<src/HAL/shared/backtrace>
extra_scripts = ${common.extra_scripts}
pre:buildroot/share/PlatformIO/scripts/stm32_serialbuffer.py