; PlatformIO Project Configuration File ; ; Build options: build flags, source filter ; Upload options: custom upload port, speed and extra flags ; Library options: dependencies, extra library storages ; Advanced options: extra scripting ; ; Please visit documentation for the other options and examples ; https://docs.platformio.org/page/projectconf.html # env's are laid out like: # $board-$input-$output # supported values: # $board: micro, esp32 # $input: radio, snes, debug # $output: radio, usb, usbradio, bt, debug # please note not all boards are compatible with all inputs/outputs # for example esp32 can only do bt # micro can only do radio or usb [common] # change GAMEPAD_COUNT if you want build_flags = -DGAMEPAD_COUNT=2 [env] monitor_speed = 115200 framework = arduino # boards [esp32] platform = espressif32 board = esp32dev [micro] platform = atmelavr board = micro # outputs [out-debug] build_flags = -DGAMEPAD_OUTPUT=0 src_filter = + [out-radio] build_flags = -DGAMEPAD_OUTPUT=1 src_filter = + lib_deps = tmrh20/RF24@^1.3.9 [out-usb] build_flags = -DGAMEPAD_OUTPUT=2 src_filter = + framework = arduino platform = atmelavr [out-bt] build_flags = -DGAMEPAD_OUTPUT=3 src_filter = + [out-usbradio] extends = out-usb, out-radio build_flags = -DGAMEPAD_OUTPUT=4 src_filter = ${out-usb.src_filter} ${out-radio.src_filter} # radio input [in-radio] extends = out-radio src_filter = -<*> + build_flags = ${common.build_flags} -DGAMEPAD_INPUT=1 # this one is a bit crazy, just use esp32-$input-bt directly [env:esp32-radio-bt] extends = esp32, in-radio, out-bt src_filter = ${in-radio.src_filter} ${out-bt.src_filter} build_flags = ${in-radio.build_flags} ${out-bt.build_flags} [env:esp32-radio-debug] extends = esp32, in-radio, out-debug src_filter = ${in-radio.src_filter} ${out-debug.src_filter} build_flags = ${in-radio.build_flags} ${out-debug.build_flags} [env:micro-radio-usb] extends = micro, in-radio, out-usb src_filter = ${in-radio.src_filter} ${out-usb.src_filter} build_flags = ${in-radio.build_flags} ${out-usb.build_flags} [env:micro-radio-debug] extends = micro, in-radio, out-debug src_filter = ${in-radio.src_filter} ${out-debug.src_filter} build_flags = ${in-radio.build_flags} ${out-debug.build_flags} # not enough pins for env:micro-radio-radio , plus it'd be crazy # snes input [in-snes] src_filter = -<*> + build_flags = ${common.build_flags} -DGAMEPAD_INPUT=2 [env:esp32-snes-bt] extends = esp32, in-snes, out-bt src_filter = ${in-snes.src_filter} ${out-bt.src_filter} build_flags = ${in-snes.build_flags} ${out-bt.build_flags} [env:esp32-snes-debug] extends = esp32, in-snes, out-debug src_filter = ${in-snes.src_filter} ${out-debug.src_filter} build_flags = ${in-snes.build_flags} ${out-debug.build_flags} [env:micro-snes-usb] extends = micro, in-snes, out-usb src_filter = ${in-snes.src_filter} ${out-usb.src_filter} build_flags = ${in-snes.build_flags} ${out-usb.build_flags} [env:micro-snes-debug] extends = micro, in-snes, out-debug src_filter = ${in-snes.src_filter} ${out-debug.src_filter} build_flags = ${in-snes.build_flags} ${out-debug.build_flags} [env:micro-snes-radio] extends = micro, in-snes, out-radio src_filter = ${in-snes.src_filter} ${out-radio.src_filter} build_flags = ${in-snes.build_flags} ${out-radio.build_flags} [env:micro-snes-usbradio] extends = micro, in-snes, out-usbradio src_filter = ${in-snes.src_filter} ${out-usbradio.src_filter} build_flags = ${in-snes.build_flags} ${out-usbradio.build_flags} # n64 input [in-n64] src_filter = -<*> + build_flags = ${common.build_flags} -DGAMEPAD_INPUT=3 -O0 #lib_deps = pothos/N64Controller@^0.1.1 [env:esp32-n64-bt] extends = esp32, in-n64, out-bt src_filter = ${in-n64.src_filter} ${out-bt.src_filter} build_flags = ${in-n64.build_flags} ${out-bt.build_flags} [env:esp32-n64-debug] extends = esp32, in-n64, out-debug src_filter = ${in-n64.src_filter} ${out-debug.src_filter} build_flags = ${in-n64.build_flags} ${out-debug.build_flags} [env:micro-n64-usb] extends = micro, in-n64, out-usb src_filter = ${in-n64.src_filter} ${out-usb.src_filter} build_flags = ${in-n64.build_flags} ${out-usb.build_flags} [env:micro-n64-debug] extends = micro, in-n64, out-debug src_filter = ${in-n64.src_filter} ${out-debug.src_filter} build_flags = ${in-n64.build_flags} ${out-debug.build_flags} [env:micro-n64-radio] extends = micro, in-n64, out-radio src_filter = ${in-n64.src_filter} ${out-radio.src_filter} build_flags = ${in-n64.build_flags} ${out-radio.build_flags} [env:micro-n64-usbradio] extends = micro, in-n64, out-usbradio src_filter = ${in-n64.src_filter} ${out-usbradio.src_filter} build_flags = ${in-n64.build_flags} ${out-usbradio.build_flags} # debug input [in-debug] src_filter = -<*> + build_flags = ${common.build_flags} -DGAMEPAD_INPUT=0 [env:esp32-debug-bt] extends = esp32, in-debug, out-bt src_filter = ${in-debug.src_filter} ${out-bt.src_filter} build_flags = ${in-debug.build_flags} ${out-bt.build_flags} [env:esp32-debug-debug] extends = esp32, in-debug, out-debug src_filter = ${in-debug.src_filter} ${out-debug.src_filter} build_flags = ${in-debug.build_flags} ${out-debug.build_flags} [env:micro-debug-usb] extends = micro, in-debug, out-usb src_filter = ${in-debug.src_filter} ${out-usb.src_filter} build_flags = ${in-debug.build_flags} ${out-usb.build_flags} [env:micro-debug-debug] extends = micro, in-debug, out-debug src_filter = ${in-debug.src_filter} ${out-debug.src_filter} build_flags = ${in-debug.build_flags} ${out-debug.build_flags} [env:micro-debug-radio] extends = micro, in-debug, out-radio src_filter = ${in-debug.src_filter} ${out-radio.src_filter} build_flags = ${in-debug.build_flags} ${out-radio.build_flags} [env:micro-debug-usbradio] extends = micro, in-debug, out-usbradio src_filter = ${in-debug.src_filter} ${out-usbradio.src_filter} build_flags = ${in-debug.build_flags} ${out-usbradio.build_flags}