; PlatformIO Project Configuration File2
; http://docs.platformio.org/page/projectconf.html

[platformio]
include_dir = Inc
src_dir     = Src

;=================== VARIANT SELECTION ==========================
;
; Choose one or all variants get built
;
;default_envs = VARIANT_ADC         ; Variant for control via ADC input
;default_envs = VARIANT_USART3      ; Variant for Serial control via USART3 input
;default_envs = VARIANT_HOVERCAR    ; Variant for HOVERCAR build
;default_envs = VARIANT_TRANSPOTTER ; Variant for TRANSPOTTER build https://github.com/NiklasFauth/hoverboard-firmware-hack/wiki/Build-Instruction:-TranspOtter https://hackaday.io/project/161891-transpotter-ng
;default_envs = VARIANT_NUNCHUCK    ; Variant for Nunchuck controlled vehicle build
;default_envs = VARIANT_PPM         ; Variant for RC-Remotes with PPM-Sum signal
;================================================================

[env:VARIANT_ADC]
platform        = ststm32
framework       = stm32cube
board           = genericSTM32F103RC
debug_tool      = stlink
upload_protocol = stlink

; Serial Port settings (make sure the COM port is correct)
monitor_port    = COM5
monitor_speed   = 38400

build_flags =
    -I${PROJECT_DIR}/inc/
    -DUSE_HAL_DRIVER
    -DSTM32F103xE
    -Wl,-T./STM32F103RCTx_FLASH.ld
    -Wl,-lc
    -Wl,-lm
    -g -ggdb        ; to generate correctly the 'firmware.elf' for STM STUDIO vizualization
#    -Wl,-lnosys
    -D VARIANT_ADC
    -D PALTFORMIO

[env:VARIANT_USART3]
platform        = ststm32
framework       = stm32cube
board           = genericSTM32F103RC
debug_tool      = stlink
upload_protocol = stlink

; Serial Port settings (make sure the COM port is correct)
monitor_port    = COM5
monitor_speed   = 38400

build_flags =
    -I${PROJECT_DIR}/inc/
    -DUSE_HAL_DRIVER
    -DSTM32F103xE
    -Wl,-T./STM32F103RCTx_FLASH.ld
    -Wl,-lc
    -Wl,-lm
    -g -ggdb        ; to generate correctly the 'firmware.elf' for STM STUDIO vizualization
#    -Wl,-lnosys
    -D VARIANT_USART3
    -D PALTFORMIO

[env:VARIANT_HOVERCAR]
platform        = ststm32
framework       = stm32cube
board           = genericSTM32F103RC
debug_tool      = stlink
upload_protocol = stlink

; Serial Port settings (make sure the COM port is correct)
monitor_port    = COM5
monitor_speed   = 38400

build_flags =
    -I${PROJECT_DIR}/inc/
    -DUSE_HAL_DRIVER
    -DSTM32F103xE
    -Wl,-T./STM32F103RCTx_FLASH.ld
    -Wl,-lc
    -Wl,-lm
    -g -ggdb        ; to generate correctly the 'firmware.elf' for STM STUDIO vizualization
#    -Wl,-lnosys
    -D VARIANT_HOVERCAR
    -D PALTFORMIO

[env:VARIANT_TRANSPOTTER]
platform        = ststm32
framework       = stm32cube
board           = genericSTM32F103RC
debug_tool      = stlink
upload_protocol = stlink

build_flags =
    -I${PROJECT_DIR}/inc/
    -DUSE_HAL_DRIVER
    -DSTM32F103xE
    -Wl,-T./STM32F103RCTx_FLASH.ld
    -Wl,-lc
    -Wl,-lm
    -g -ggdb        ; to generate correctly the 'firmware.elf' for STM STUDIO vizualization
#    -Wl,-lnosys
    -D VARIANT_TRANSPOTTER
    -D PALTFORMIO

[env:VARIANT_NUNCHUCK]
platform        = ststm32
framework       = stm32cube
board           = genericSTM32F103RC
debug_tool      = stlink
upload_protocol = stlink

build_flags =
    -I${PROJECT_DIR}/inc/
    -DUSE_HAL_DRIVER
    -DSTM32F103xE
    -Wl,-T./STM32F103RCTx_FLASH.ld
    -Wl,-lc
    -Wl,-lm
    -g -ggdb        ; to generate correctly the 'firmware.elf' for STM STUDIO vizualization
#    -Wl,-lnosys
    -D VARIANT_NUNCHUCK
    -D PALTFORMIO

[env:VARIANT_PPM]
platform        = ststm32
framework       = stm32cube
board           = genericSTM32F103RC
debug_tool      = stlink
upload_protocol = stlink

build_flags =
    -I${PROJECT_DIR}/inc/
    -DUSE_HAL_DRIVER
    -DSTM32F103xE
    -Wl,-T./STM32F103RCTx_FLASH.ld
    -Wl,-lc
    -Wl,-lm
    -g -ggdb        ; to generate correctly the 'firmware.elf' for STM STUDIO vizualization
#    -Wl,-lnosys
    -D VARIANT_PPM
    -D PALTFORMIO