| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- ; meCoffee firmware (PlatformIO, Arduino core + plain C++ logic library)
- ; See README.md and docs/AGENT_HANDOFF.md.
- [platformio]
- default_envs = 328p8m
- [common]
- build_flags =
- -DCOMPAT_V10=1
- -Wall
- -Wextra
- extra_scripts = pre:tools/apply_cplusplus_flags.py
- [env:328p8m]
- platform = atmelavr@5.3.0
- board = 328p8m
- framework = arduino
- ; The registry toolchain (x86_64 avr-gcc 7.3) does not run on Apple Silicon without
- ; Rosetta. tools/toolchain-native wraps the Homebrew avr-gcc 9.5 (arm64).
- ; On Intel/Rosetta hosts use: toolchain-atmelavr@1.70300.191015
- platform_packages =
- framework-arduino-avr@5.4.0
- toolchain-atmelavr@symlink://tools/toolchain-native
- build_flags = ${common.build_flags}
- extra_scripts = ${common.extra_scripts}
- lib_deps =
- meCoffee_controller_logic
- meCoffee_hardware_access
- lib_ignore = meCoffee_simulated_hardware
- lib_ldf_mode = chain
- upload_protocol = arduino
- upload_speed = 57600
- [env:uno]
- extends = env:328p8m
- board = uno
- board_build.f_cpu = 16000000L
- build_flags =
- ${common.build_flags}
- -DMECOFFEE_ARDUINO_16MHZ=1
- upload_speed = 115200
- [env:pro_mini]
- extends = env:uno
- board = pro16MHzatmega328
- upload_speed = 57600
- [env:nano]
- extends = env:uno
- board = nanoatmega328new
- upload_speed = 115200
- ; Bench-only BLE upload experiment, pinned to the verified stock Uno Optiboot 4.4.
- ; See docs/UNO_BLE_FLASH_TEST.md. USB installer checks the bootloader before writing.
- [env:uno_ble_test]
- extends = env:uno
- build_flags =
- ${env:uno.build_flags}
- -DMECOFFEE_UNO_BLE_TEST=1
- upload_protocol = custom
- upload_command = "$PYTHONEXE" "$PROJECT_DIR/tools/ble_test/upload_usb.py" --port "$UPLOAD_PORT" "$SOURCE"
- ; Same firmware with start-up padded to the original's start-up time (differential runs only).
- [env:328p8m_aligned]
- extends = env:328p8m
- build_flags =
- ${common.build_flags}
- -DMECOFFEE_CONSTRUCTION_ALIGNMENT_MICROSECONDS=5900
- -DMECOFFEE_SETUP_ALIGNMENT_MICROSECONDS=1100
- [env:float_check]
- extends = env:328p8m
- build_src_filter = -<*> +<../tools/avr_checks/float_check.cpp>
- [env:native]
- platform = native
- build_flags =
- ${common.build_flags}
- -DNATIVE_TEST=1
- extra_scripts = ${common.extra_scripts}
- lib_ignore = meCoffee_hardware_access
- lib_deps =
- meCoffee_controller_logic
- meCoffee_simulated_hardware
- test_framework = unity
- [env:native_arduino16m]
- extends = env:native
- build_flags =
- ${env:native.build_flags}
- -DMECOFFEE_ARDUINO_16MHZ=1
|