mirror of
https://github.com/Fishwaldo/LMIC-node.git
synced 2025-03-15 19:31:44 +00:00
LMIC_PRINTF_TO is now separately defined for each board that uses MCCI LMIC. Fix LMIC_PRINTF_TO compilation errors for boards with ARM based MCU. Update README.md. Add description for functions and doWork job to README.md.
831 lines
No EOL
26 KiB
INI
831 lines
No EOL
26 KiB
INI
;-------------------------------------------------------------------------------
|
|
;
|
|
; File: platformio.ini
|
|
;
|
|
; Function: Project configuration file for LMIC-node.
|
|
;
|
|
; Copyright: Copyright (c) 2021 Leonel Lopes Parente
|
|
;
|
|
; License: MIT License. See accompanying LICENSE file.
|
|
;
|
|
; Author: Leonel Lopes Parente
|
|
;
|
|
; Description: This is the main configuration file. It contains:
|
|
; - Board selector to select your board type
|
|
; - Common settings used for all boards
|
|
; - Board specific settings that can be altered per board.
|
|
;
|
|
; For a description of all settings see README.md
|
|
;
|
|
;-------------------------------------------------------------------------------
|
|
|
|
|
|
; ------------------------------------------------------------------------------
|
|
; | Board Selector |
|
|
; | |
|
|
; | Select your board by uncommenting EXACTLY ONE board-id below. |
|
|
; ------------------------------------------------------------------------------
|
|
|
|
[platformio]
|
|
default_envs =
|
|
<platformio.ini board selector guard> Comment this line and uncomment one board-id below:
|
|
|
|
; LoRa development boards with integrated LoRa support:
|
|
|
|
; Board-id Board name
|
|
;--------- ----------
|
|
; adafruit_feather_m0_lora ; Adafruit Feather M0 LoRa
|
|
; disco_l072cz_lrwan1 ; Discovery B-L072Z-LRWAN1
|
|
; heltec_wifi_lora_32_v2 ; Heltec Wifi LoRa 32 V2
|
|
; heltec_wifi_lora_32 ; Heltec Wifi LoRa 32
|
|
; heltec_wireless_stick_lite ; Heltec Wireless Stick Lite
|
|
; heltec_wireless_stick ; Heltec Wireless Stick
|
|
; lopy4 ; Pycom Lopy4
|
|
; lora32u4II ; BSFrance LoRa32u4 II v1.0, v1.1, v1.2, v1.3
|
|
; ttgo_lora32_v1 ; TTGO LoRa32 v1.3
|
|
; ttgo_lora32_v2 ; TTGO LoRa32 v2.0
|
|
; ttgo_lora32_v21 ; TTGO LoRa32 v2.1.6
|
|
; ttgo_t_beam ; TTGO T-Beam v0.5, v0.6, v0.7
|
|
; ttgo_t_beam_v1 ; TTGO T-Beam v1.0, v1.1
|
|
|
|
; Development boards that require an external SPI LoRa module:
|
|
|
|
; Board-id Board name
|
|
;--------- ----------
|
|
; blackpill_f103c8_128k ; Black Pill 128k
|
|
; blackpill_f103c8 ; Black Pill 64k
|
|
; bluepill_f103c8_128k ; Blue Pill 128k
|
|
; bluepill_f103c8 ; Blue Pill 64k
|
|
; lolin_d32_pro ; Lolin D32 Pro
|
|
; lolin_d32 ; Lolin D32
|
|
; lolin32 ; Lolin32
|
|
; nodemcu_32s ; NodeMCU-32S
|
|
; nodemcuv2 ; NodeMCU V2
|
|
; pico ; Raspberry Pi Pico
|
|
; pro8mhzatmega328 ; Arduino Pro Mini 3.3V 8Mhz
|
|
; samd21_m0_mini ; SAMD21 M0-Mini
|
|
; teensylc ; Teensy LC
|
|
|
|
|
|
; ------------------------------------------------------------------------------
|
|
; | Common Settings |
|
|
; | |
|
|
; | These settings are shared by all board configurations except for |
|
|
; | nodemcuv2 which uses its own monitor_speed setting. |
|
|
; ------------------------------------------------------------------------------
|
|
|
|
[common]
|
|
|
|
monitor_speed = 115200 ; No need to change this.
|
|
|
|
build_flags =
|
|
-D DO_WORK_INTERVAL_SECONDS=60
|
|
|
|
; -D ABP_ACTIVATION ; Use ABP instead of OTAA activation
|
|
;
|
|
; -D WAITFOR_SERIAL_SECONDS=10 ; Can be used to override the default value (10)
|
|
; Only used for boards with default set to != 0 in BSF
|
|
;
|
|
; -D STM32_POST_INITSERIAL_DELAY_MS=1500 ; Workaround for STM32 boards. Can be used
|
|
; to override value (milliseconds) in BSF
|
|
|
|
lib_deps =
|
|
olikraus/U8g2 ; OLED display library
|
|
lnlp/EasyLed ; LED library
|
|
; ███ Add additional libraries for User Code below this line ███
|
|
|
|
|
|
; --------------------------------------------------
|
|
; | Shortcuts to enable quick and easy changes |
|
|
; --------------------------------------------------
|
|
|
|
[pico]
|
|
upload_port = E: ; For Raspberry Pi Pico.
|
|
; Operating system and hardware dependent.
|
|
; Placed here so it can be easily changed.
|
|
; See [env:pico] for information.
|
|
|
|
|
|
; --------------------------------------------------
|
|
; | MCCI LoRaWAN LMIC library specific settings |
|
|
; --------------------------------------------------
|
|
|
|
[mcci_lmic]
|
|
; LMIC-node was tested with MCCI LoRaWAN LMIC library v3.3.0.
|
|
; Some changes have been announced for future versions of the MCCI library
|
|
; which may be incompatible with LMIC-node. In case of problems just
|
|
; use mcci-catena/MCCI LoRaWAN LMIC library@3.3.0 below which will
|
|
; explicitly use v3.3.0 of the library.
|
|
; Perform PlatformIO: Clean after changing library version and
|
|
; in case of issues remove the old version from .pio/libdeps/*.
|
|
|
|
; Note: LMIC_PRINTF_TO is defined for each board separately
|
|
; in the board specific sections. Don't define it in this section.
|
|
|
|
lib_deps =
|
|
; Only ONE of below LMIC libraries should be enabled.
|
|
mcci-catena/MCCI LoRaWAN LMIC library ; MCCI LMIC library (latest release)
|
|
; mcci-catena/MCCI LoRaWAN LMIC library@3.3.0 ; MCCI LMIC library v3.3.0
|
|
|
|
build_flags =
|
|
; Use platformio.ini for settings instead lmic_project_config.h.
|
|
-D ARDUINO_LMIC_PROJECT_CONFIG_H_SUPPRESS
|
|
|
|
; Ping and beacons not supported for class A, disable to save memory.
|
|
-D DISABLE_PING
|
|
-D DISABLE_BEACONS
|
|
|
|
; -D LMIC_DEBUG_LEVEL=1 ; 0, 1 or 2
|
|
|
|
; -D CFG_sx1272_radio=1 ; Use for SX1272 radio
|
|
-D CFG_sx1276_radio=1 ; Use for SX1276 radio
|
|
-D USE_ORIGINAL_AES ; Faster but larger, see docs
|
|
; -D LMIC_USE_INTERRUPTS ; Not tested or supported on many platforms
|
|
; -D LMIC_ENABLE_DeviceTimeReq=1 ; Network time support
|
|
|
|
; --- Regional settings -----
|
|
; Enable only one of the following regions:
|
|
; -D CFG_as923=1
|
|
; -D CFG_as923jp=1
|
|
; -D CFG_au915=1
|
|
; -D CFG_cn490=1 ; Not yet supported
|
|
; -D CFG_cn783=1 ; Not yet supported
|
|
; -D CFG_eu433=1 ; Not yet supported
|
|
-D CFG_eu868=1
|
|
; -D CFG_in866=1
|
|
; -D CFG_kr920=1
|
|
; -D CFG_us915=1
|
|
|
|
|
|
; --------------------------------------------------
|
|
; | IBM LMIC framework library specific settings |
|
|
; --------------------------------------------------
|
|
|
|
[classic_lmic]
|
|
; IMPORTANT:
|
|
; This library was recently DEPRECATED and is no longer maintained.
|
|
; It is not fully LoRaWAN compliant (e.g. in handling of MAC commands)
|
|
; and is therefore less suitable for use with The Things Network V3.
|
|
;
|
|
; Region, radio and debug settings CANNOT be changed in platformio.ini.
|
|
; They must be configured in file: config.h in the following location:
|
|
; .pio/libdeps/<board-id>/IBM LMIC framework/src/lmic
|
|
;
|
|
; When making changes to config.h:
|
|
; CONFIG.H MUST BE CHANGED FOR EACH BOARD SEPARATELY!
|
|
; (By default libraries are installed per project per build config/board.)
|
|
|
|
lib_deps =
|
|
matthijskooijman/IBM LMIC framework ; [Deprecated] Classic LMIC library
|
|
|
|
build_flags =
|
|
; DEFAULT VALUES defined in config.h:
|
|
; CFG_sx1276_radio 1
|
|
; CFG_eu868 1
|
|
; LMIC_DEBUG_LEVEL 0
|
|
|
|
; Ping and beacons not supported for class A, disable to save memory.
|
|
-D DISABLE_PING
|
|
-D DISABLE_BEACONS
|
|
|
|
|
|
; ------------------------------------------------------------------------------
|
|
; | LoRa development boards with integrated LoRa support |
|
|
; | |
|
|
; | Some but not all of these boards have an onboard display. |
|
|
; | Some boards require additional wiring that needs to be manually added. |
|
|
; | Check the Board Support Files in the boards folder for information. |
|
|
; ------------------------------------------------------------------------------
|
|
|
|
[env:adafruit_feather_m0_lora]
|
|
; Adafruit Feather M0 with RF9x LoRa (SAMD21).
|
|
; No display.
|
|
; Requires manual wiring of DIO1 to GPIO6.
|
|
platform = atmelsam
|
|
board = adafruit_feather_m0
|
|
framework = arduino
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_adafruit_feather_m0_lora.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:disco_l072cz_lrwan1]
|
|
; ST B-L072Z-LRWAN1 Discovery kit (STM32L072CZ).
|
|
; No display.
|
|
platform = ststm32
|
|
board = disco_l072cz_lrwan1
|
|
framework = arduino
|
|
upload_protocol = stlink ; If this fails then try mbed
|
|
; upload_protocol = jlink ; Requires onboard programmer firmware upgrade
|
|
; upload_protocol = mbed ; If selected, also set the correct upload_port
|
|
; upload_port = E: ; Used for mbed, value is hardware and OS dependent
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_disco_l072cz_lrwan1.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:heltec_wifi_lora_32_v2]
|
|
; Heltec WiFi LoRa 32 V2 (ESP32).
|
|
; Onboard OLED display SSD1306 0.96" 128x64.
|
|
platform = espressif32
|
|
board = heltec_wifi_lora_32_V2
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_heltec_wifi_lora_32_v2.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
-D USE_DISPLAY
|
|
|
|
|
|
[env:heltec_wifi_lora_32]
|
|
; Heltec WiFi LoRa 32 version 1.3 (ESP32).
|
|
; Onboard OLED display SSD1306 0.96" 128x64.
|
|
platform = espressif32
|
|
board = heltec_wifi_lora_32
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_heltec_wifi_lora_32.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
-D USE_DISPLAY
|
|
|
|
|
|
[env:heltec_wireless_stick_lite]
|
|
; Heltec Wireless Stick Lite (ESP32).
|
|
; No display.
|
|
platform = espressif32
|
|
board = heltec_wireless_stick_lite
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_heltec_wireless_stick_lite.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:heltec_wireless_stick]
|
|
; Heltec Wireless Stick (ESP32).
|
|
; Onboard OLED display SSD1306 0.49" 64x32.
|
|
; Display is not supported by LMIC-node because its resolution is too low.
|
|
platform = espressif32
|
|
board = heltec_wireless_stick
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_heltec_wireless_stick.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; NOT SUPPORTED
|
|
|
|
|
|
[env:lopy4]
|
|
; Pycom LoPy4 (ESP32).
|
|
; Onboard WS2812 RGB LED is not supported by LMIC-node.
|
|
; No display.
|
|
; Requires a Pycom Expansion Board or USB to Serial adapter.
|
|
; See Board Support File for details.
|
|
platform = espressif32
|
|
board = lopy4
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_lopy4.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
; -D USE_LED ; NOT SUPPORTED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:lora32u4II]
|
|
; BSFrance LoRa32u4 II V1.0, V1.1, V1.2, V1.3 (ATmega32u4).
|
|
; No display.
|
|
; Board versions V1.0 to V1.2 require manual wiring of DIO1 to GPIO5.
|
|
; 8-bit AVR MCU with limited memory, therefore Classic LMIC is used.
|
|
; See limitations described in the [classic_lmic] section.
|
|
platform = atmelavr
|
|
board = lora32u4II
|
|
framework = arduino
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${classic_lmic.lib_deps} ; [Deprecated] IBM LMIC Framework
|
|
build_flags =
|
|
${common.build_flags}
|
|
${classic_lmic.build_flags} ; [Deprecated] IBM LMIC Framework
|
|
-D BSFILE=\"boards/bsf_lora32u4II.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:ttgo_lora32_v1]
|
|
; TTGO LoRa32 v1.3 (ESP32)
|
|
; No onboard user LED.
|
|
; Onboard OLED display SSD1306 0.96" 128x64.
|
|
platform = espressif32
|
|
board = ttgo-lora32-v1
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_ttgo_lora32_v1.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
; -D USE_LED ; NO ONBOARD USER LED
|
|
-D USE_DISPLAY
|
|
|
|
|
|
[env:ttgo_lora32_v2]
|
|
; TTGO LoRa32 v2.0 (ESP32).
|
|
; Onboard OLED display SSD1306 0.96" 128x64.
|
|
; Requires manual wiring of DIO1 to GPIO33.
|
|
; GPIO22 is used for both onboard LED and I2C SCL
|
|
; therefore USE_LED and USE_DISPLAY cannot be used together.
|
|
platform = espressif32
|
|
board = ttgo-lora32-v2
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_ttgo_lora32_v2.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
; -D USE_LED ; Cannot be used together with USE_DISPLAY
|
|
-D USE_DISPLAY ; Cannot be used together with USE_LED
|
|
|
|
|
|
[env:ttgo_lora32_v21]
|
|
; TTGO LoRa32 v2.1.6 (ESP32).
|
|
; Onboard OLED display SSD1306 0.96" 128x64.
|
|
platform = espressif32
|
|
board = ttgo-lora32-v21
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_ttgo_lora32_v21.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
-D USE_DISPLAY
|
|
|
|
|
|
[env:ttgo_t_beam]
|
|
; TTGO T-Beam (aka T22) V0.5, V0.6, V0.7 (ESP32).
|
|
; No display.
|
|
platform = espressif32
|
|
board = ttgo-t-beam
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_ttgo_t_beam.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:ttgo_t_beam_v1]
|
|
; TTGO T-Beam (aka T22) V1.0, V1.1 (ESP32).
|
|
; No onboard user LED. No display.
|
|
; Requires additional library and setup for AXP192 power management chip.
|
|
platform = espressif32
|
|
board = ttgo-t-beam
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
lewisxhe/AXP202X_Library ; Power management chip library
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_ttgo_t_beam_v1.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
; -D USE_LED ; NO ONBOARD USER LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
; ------------------------------------------------------------------------------
|
|
; | Development boards that require an external SPI LoRa module |
|
|
; | |
|
|
; | None of these boards have an onboard display. |
|
|
; | Check the Board Support Files in the boards folder for required wiring!! |
|
|
; ------------------------------------------------------------------------------
|
|
|
|
[env:blackpill_f103c8_128k]
|
|
; Blackill F103C8 128k (STMF103C8T6).
|
|
; No display.
|
|
; Select preferred upload protocol below.
|
|
platform = ststm32
|
|
board = blackpill_f103c8_128
|
|
framework = arduino
|
|
; upload_protocol = serial
|
|
upload_protocol = stlink
|
|
; upload_protocol = jlink
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_blackpill_f103c8.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:blackpill_f103c8]
|
|
; Blackpill F103C8 (64k) (STMF103C8T6).
|
|
; No display.
|
|
; Select preferred upload protocol below.
|
|
platform = ststm32
|
|
board = blackpill_f103c8
|
|
framework = arduino
|
|
; upload_protocol = serial
|
|
upload_protocol = stlink
|
|
; upload_protocol = jlink
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_blackpill_f103c8.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:bluepill_f103c8_128k]
|
|
; Bluepill F103C8 128k (STMF103C8T6).
|
|
; No display.
|
|
; Select preferred upload protocol below.
|
|
platform = ststm32
|
|
board = bluepill_f103c8_128k
|
|
framework = arduino
|
|
; upload_protocol = serial
|
|
upload_protocol = stlink
|
|
; upload_protocol = jlink
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_bluepill_f103c8.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:bluepill_f103c8]
|
|
; Bluepill F103C8 (64k) (STMF103C8T6).
|
|
; No display.
|
|
; Select preferred upload protocol below.
|
|
platform = ststm32
|
|
board = bluepill_f103c8
|
|
framework = arduino
|
|
; upload_protocol = serial
|
|
upload_protocol = stlink
|
|
; upload_protocol = jlink
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_bluepill_f103c8.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:lolin_d32_pro]
|
|
; Wemos Lolin D32 Pro (ESP32).
|
|
; No display.
|
|
platform = espressif32
|
|
board = lolin_d32_pro
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_lolin_d32_pro.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:lolin_d32]
|
|
; Wemos Lolin D32 (ESP32).
|
|
; No display.
|
|
platform = espressif32
|
|
board = lolin_d32
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_lolin_d32.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:lolin32]
|
|
; Wemos Lolin32 (ESP32).
|
|
; No display.
|
|
platform = espressif32
|
|
board = lolin32
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_lolin32.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:nodemcu_32s]
|
|
; NodeMCU-32S (ESP32).
|
|
; No display.
|
|
platform = espressif32
|
|
board = nodemcu-32s
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_nodemcu_32s.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:nodemcuv2]
|
|
; NodeMCU V2 (aka NodeMCU 1.0) (ESP8266).
|
|
; No display.
|
|
; Monitor speed is set to 74880 to be able to read ESP8266 boot messages.
|
|
; I2C and external OLED display cannot be used due to shortage of GPIO pins.
|
|
platform = espressif8266
|
|
board = nodemcuv2
|
|
framework = arduino
|
|
upload_speed = 921600
|
|
monitor_speed = 74880 ; 74880 so we can read ESP8266 boot messages
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_nodemcuv2.h\"
|
|
-D MONITOR_SPEED=${env:nodemcuv2.monitor_speed}
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; NOT SUPPORTED
|
|
|
|
|
|
[env:pico]
|
|
; Raspberry Pi Pico (RP2040).
|
|
; No display.
|
|
;
|
|
; IMPORTANT information for firmware upload:
|
|
; ------------------------------------------
|
|
; Device must be in BOOTSEL mode to upload firmware.
|
|
; (To put in BOOTSEL mode: press BOOTSEL button, power on or reset board, release BOOTSEL button.)
|
|
; For Windows specify: upload_protocol = picotool (appears not needed for Mac and Linux).
|
|
; upload_port is operating system and hardware dependent.
|
|
; For convenience, to set upload_port: set upload_port in [pico] section (on top).
|
|
; Examples:
|
|
; Windows: upload_port = E:
|
|
; Mac: upload_port = /Volumes/RPI-RP2
|
|
; Linux: upload_port = /media/<user>/RSPI-RP2
|
|
; On Windows USB driver for Pico [RP2 Boot (interface 1)] needs be installed with Zadig,
|
|
; see: https://community.platformio.org/t/official-platformio-arduino-ide-support-for-the-raspberry-pi-pico-is-now-available/20792
|
|
;
|
|
platform = raspberrypi
|
|
framework = arduino
|
|
board = pico
|
|
upload_protocol = picotool
|
|
upload_port = ${pico.upload_port} ; Operating system and hardware dependent
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_pico.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=SerialUSB
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:pro8mhzatmega328]
|
|
; Arduino Pro Mini 8 MHz (ATmega328).
|
|
; Onboard LED not usable because GPIO13 is used for both onboard LED and SPI SCK.
|
|
; No display.
|
|
; 8-bit AVR MCU with limited memory, therefore Classic LMIC is used.
|
|
; See limitations described in the [classic_lmic] section.
|
|
platform = atmelavr
|
|
board = pro8MHzatmega328
|
|
framework = arduino
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${classic_lmic.lib_deps} ; [Deprecated] IBM LMIC Framework
|
|
build_flags =
|
|
${common.build_flags}
|
|
${classic_lmic.build_flags} ; [Deprecated] IBM LMIC Framework
|
|
-D BSFILE=\"boards/bsf_pro8mhzatmega328.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D USE_SERIAL
|
|
; -D USE_LED ; NOT SUPPORTED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:samd21_m0_mini]
|
|
; SAMD21 M0-Mini (SAMD21).
|
|
; No display.
|
|
platform = atmelsam
|
|
board = zeroUSB
|
|
framework = arduino
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_samd21_m0_mini.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=SerialUSB
|
|
-D USE_SERIAL
|
|
; -D USE_LED ; NOT SUPPORTED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
[env:teensylc]
|
|
; Teensy LC (NXP MKL26Z64VFT4).
|
|
; No display.
|
|
platform = teensy
|
|
board = teensylc
|
|
framework = arduino
|
|
monitor_speed = ${common.monitor_speed}
|
|
lib_deps =
|
|
${common.lib_deps}
|
|
${mcci_lmic.lib_deps}
|
|
build_flags =
|
|
${common.build_flags}
|
|
${mcci_lmic.build_flags}
|
|
-D BSFILE=\"boards/bsf_teensylc.h\"
|
|
-D MONITOR_SPEED=${common.monitor_speed}
|
|
-D _GNU_SOURCE
|
|
-D LMIC_PRINTF_TO=Serial
|
|
-D USE_SERIAL
|
|
-D USE_LED
|
|
; -D USE_DISPLAY ; Requires external I2C OLED display
|
|
|
|
|
|
; end of file |