2022-07-31 07:11:47 -05:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#define ARCH_NRF52
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
// defaults for NRF52 architecture
|
|
|
|
|
//
|
2022-08-22 16:41:23 -05:00
|
|
|
#ifndef HAS_BLUETOOTH
|
2023-01-21 14:34:29 +01:00
|
|
|
#define HAS_BLUETOOTH 1
|
2022-08-22 16:41:23 -05:00
|
|
|
#endif
|
2022-07-31 07:11:47 -05:00
|
|
|
#ifndef HAS_SCREEN
|
2023-01-21 14:34:29 +01:00
|
|
|
#define HAS_SCREEN 1
|
2022-07-31 07:11:47 -05:00
|
|
|
#endif
|
|
|
|
|
#ifndef HAS_WIRE
|
2023-01-21 14:34:29 +01:00
|
|
|
#define HAS_WIRE 1
|
2022-07-31 07:11:47 -05:00
|
|
|
#endif
|
|
|
|
|
#ifndef HAS_GPS
|
2023-01-21 14:34:29 +01:00
|
|
|
#define HAS_GPS 1
|
2022-07-31 07:11:47 -05:00
|
|
|
#endif
|
|
|
|
|
#ifndef HAS_BUTTON
|
2023-01-21 14:34:29 +01:00
|
|
|
#define HAS_BUTTON 1
|
2022-07-31 07:11:47 -05:00
|
|
|
#endif
|
|
|
|
|
#ifndef HAS_TELEMETRY
|
2023-01-21 14:34:29 +01:00
|
|
|
#define HAS_TELEMETRY 1
|
2022-07-31 07:11:47 -05:00
|
|
|
#endif
|
2023-02-11 10:08:25 +01:00
|
|
|
#ifndef HAS_SENSOR
|
|
|
|
|
#define HAS_SENSOR 1
|
|
|
|
|
#endif
|
2022-07-31 07:11:47 -05:00
|
|
|
#ifndef HAS_RADIO
|
2023-01-21 14:34:29 +01:00
|
|
|
#define HAS_RADIO 1
|
2022-07-31 07:11:47 -05:00
|
|
|
#endif
|
2023-03-12 19:19:01 +01:00
|
|
|
#ifndef HAS_CPU_SHUTDOWN
|
2023-01-21 14:34:29 +01:00
|
|
|
#define HAS_CPU_SHUTDOWN 1
|
2022-10-30 10:02:11 -05:00
|
|
|
#endif
|
2022-07-31 07:11:47 -05:00
|
|
|
|
|
|
|
|
//
|
|
|
|
|
// set HW_VENDOR
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
// This string must exactly match the case used in release file names or the android updater won't work
|
|
|
|
|
#ifdef ARDUINO_NRF52840_PCA10056
|
2023-01-21 18:22:19 +01:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_NRF52840DK
|
2022-07-31 07:11:47 -05:00
|
|
|
#elif defined(ARDUINO_NRF52840_PPR)
|
2023-01-21 18:22:19 +01:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_PPR
|
2024-06-16 20:03:45 +02:00
|
|
|
#elif defined(RAK2560)
|
|
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_RAK2560
|
2022-07-31 07:11:47 -05:00
|
|
|
#elif defined(RAK4630)
|
2023-01-21 18:22:19 +01:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_RAK4631
|
2022-07-31 07:11:47 -05:00
|
|
|
#elif defined(TTGO_T_ECHO)
|
2023-01-21 18:22:19 +01:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_T_ECHO
|
2023-10-10 21:35:07 +01:00
|
|
|
#elif defined(NANO_G2_ULTRA)
|
|
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_NANO_G2_ULTRA
|
2024-02-10 15:55:32 -08:00
|
|
|
#elif defined(CANARYONE)
|
|
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_CANARYONE
|
2022-07-31 07:11:47 -05:00
|
|
|
#elif defined(NORDIC_PCA10059)
|
2023-01-21 18:22:19 +01:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_NRF52840_PCA10059
|
2024-04-24 03:09:28 +08:00
|
|
|
#elif defined(TWC_MESH_V4)
|
|
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_TWC_MESH_V4
|
2024-05-08 14:53:13 +03:00
|
|
|
#elif defined(NRF52_PROMICRO_DIY)
|
|
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_NRF52_PROMICRO_DIY
|
2024-06-03 23:04:40 +02:00
|
|
|
#elif defined(WIO_WM1110)
|
2024-06-04 15:44:48 +02:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_WIO_WM1110
|
2024-07-26 06:38:54 -05:00
|
|
|
#elif defined(TRACKER_T1000_E)
|
2024-07-26 06:30:28 -05:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_TRACKER_T1000_E
|
2022-11-02 07:48:14 -05:00
|
|
|
#elif defined(PRIVATE_HW) || defined(FEATHER_DIY)
|
2023-01-21 18:22:19 +01:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_PRIVATE_HW
|
2022-07-31 07:11:47 -05:00
|
|
|
#else
|
2023-01-21 18:22:19 +01:00
|
|
|
#define HW_VENDOR meshtastic_HardwareModel_NRF52_UNKNOWN
|
2022-07-31 07:11:47 -05:00
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
// Standard definitions for NRF52 targets
|
|
|
|
|
//
|
|
|
|
|
|
|
|
|
|
#ifdef ARDUINO_NRF52840_PCA10056
|
|
|
|
|
|
|
|
|
|
// This board uses 0 to be mean LED on
|
|
|
|
|
#undef LED_INVERTED
|
|
|
|
|
#define LED_INVERTED 1
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
2023-07-21 21:37:00 -04:00
|
|
|
#ifdef _SEEED_XIAO_NRF52840_SENSE_H_
|
|
|
|
|
|
|
|
|
|
// This board uses 0 to be mean LED on
|
|
|
|
|
#undef LED_INVERTED
|
|
|
|
|
#define LED_INVERTED 1
|
|
|
|
|
|
|
|
|
|
#endif
|
|
|
|
|
|
2022-07-31 07:11:47 -05:00
|
|
|
#define LED_PIN PIN_LED1 // LED1 on nrf52840-DK
|
|
|
|
|
|
|
|
|
|
#ifdef PIN_BUTTON1
|
|
|
|
|
#define BUTTON_PIN PIN_BUTTON1
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef PIN_BUTTON2
|
|
|
|
|
#define BUTTON_PIN_ALT PIN_BUTTON2
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
#ifdef PIN_BUTTON_TOUCH
|
|
|
|
|
#define BUTTON_PIN_TOUCH PIN_BUTTON_TOUCH
|
|
|
|
|
#endif
|
|
|
|
|
|
|
|
|
|
// Always include the SEGGER code on NRF52 - because useful for debugging
|
|
|
|
|
#include "SEGGER_RTT.h"
|
|
|
|
|
|
|
|
|
|
// The channel we send stdout data to
|
|
|
|
|
#define SEGGER_STDOUT_CH 0
|
|
|
|
|
|
|
|
|
|
// Debug printing to segger console
|
|
|
|
|
#define SEGGER_MSG(...) SEGGER_RTT_printf(SEGGER_STDOUT_CH, __VA_ARGS__)
|
|
|
|
|
|
|
|
|
|
// If we are not on a NRF52840 (which has built in USB-ACM serial support) and we don't have serial pins hooked up, then we MUST
|
|
|
|
|
// use SEGGER for debug output
|
|
|
|
|
#if !defined(PIN_SERIAL_RX) && !defined(NRF52840_XXAA)
|
|
|
|
|
// No serial ports on this board - ONLY use segger in memory console
|
|
|
|
|
#define USE_SEGGER
|
2024-07-31 04:57:31 +08:00
|
|
|
#endif
|