[nrf54l15_base]
platform = https://github.com/Seeed-Studio/platform-seeedboards.git
framework = zephyr
extends = arduino_base

build_type = release
build_flags =
  ${arduino_base.build_flags}
  -Isrc/platform/nrf54l15
  -DMESHTASTIC_EXCLUDE_AUDIO=1
  -DMESHTASTIC_EXCLUDE_GPS=1
  -DMESHTASTIC_EXCLUDE_MQTT=1
  -DHAS_WIRE=1
  -DHAS_SENSOR=1
  -DHAS_BUTTON=0
  -DHAS_TELEMETRY=1
  -DMESHTASTIC_EXCLUDE_PAXCOUNTER=1
  -DARDUINO=100
  -DMESHTASTIC_EXCLUDE_ACCELEROMETER=1
  -DMAX_NUM_NODES=40
  -fpermissive
  # Libraries that Zephyr LDF misses; add include paths explicitly
  -I.pio/libdeps/${PIOENV}/Crypto
  -I.pio/libdeps/${PIOENV}/ArduinoThread
  -I".pio/libdeps/${PIOENV}/ESP8266 and ESP32 OLED driver for SSD1306 displays/src"
  -I.pio/libdeps/${PIOENV}/OneButton/src
  -I.pio/libdeps/${PIOENV}/arduino-fsm
  -I.pio/libdeps/${PIOENV}/TinyGPSPlus/src
  -I.pio/libdeps/${PIOENV}/ErriezCRC32/src
  -I.pio/libdeps/${PIOENV}/NonBlockingRTTTL/src
  -I.pio/libdeps/${PIOENV}/RadioLib/src

build_src_filter =
  ${arduino_base.build_src_filter}
  -<nimble/>
  -<mesh/wifi/>
  -<mesh/api/>
  -<mesh/http/>
  -<modules/esp32>
  -<mesh/eth/>
  -<mesh/raspihttp>
  -<serialization/>
  -<mqtt/>
  -<motion/>
  +<platform/nrf54l15/>

lib_compat_mode = off

lib_deps =
  ${arduino_base.lib_deps}
  ${radiolib_base.lib_deps}
  # renovate: datasource=git-refs depName=meshtastic/Crypto packageName=https://github.com/meshtastic/Crypto gitBranch=master
  https://github.com/meshtastic/Crypto/archive/1aa30eb536bd52a576fde6dfa393bf7349cf102d.zip
  ; Cherry-picked sensor libs from environmental_base. The full
  ; environmental_base pulls Adafruit_SSD1306 / GFX which need Arduino
  ; pin macros (digitalPinToPort / portOutputRegister) that the Zephyr
  ; Arduino shim does not implement.
  https://github.com/adafruit/Adafruit_BusIO/archive/refs/tags/1.17.4.zip
  https://github.com/adafruit/Adafruit_Sensor/archive/refs/tags/1.1.15.zip
  https://github.com/adafruit/Adafruit_BMP280_Library/archive/refs/tags/3.0.0.zip
  https://github.com/adafruit/Adafruit_BME280_Library/archive/refs/tags/2.3.0.zip
  https://github.com/adafruit/Adafruit_INA260/archive/refs/tags/1.5.3.zip
  https://github.com/adafruit/Adafruit_INA219/archive/refs/tags/1.2.3.zip
  https://github.com/RobTillaart/INA3221_RT/archive/refs/tags/0.4.2.zip
  https://github.com/RobTillaart/INA226/archive/refs/tags/0.6.6.zip
  ; SHTXXSensor gates on __has_include(<SHTSensor.h>), a header shipped by
  ; Sensirion/arduino-sht. Adafruit_SHT4X ships Adafruit_SHT4X.h instead and
  ; has no consumer in src/, so it left the SHT40 driver out of the build.
  https://github.com/Sensirion/arduino-sht/archive/refs/tags/v1.2.6.zip

lib_ignore =
  BluetoothOTA
  lvgl
  Adafruit_nRFCrypto
