mirror of
https://github.com/meshcore-dev/MeshCore.git
synced 2026-04-20 22:13:47 +00:00
fix ADC stuff, and pin defs. get ready for SuperIO support. will I buy one? Maybe!
This commit is contained in:
parent
20953e56d6
commit
08cb7dd7da
4 changed files with 99 additions and 104 deletions
|
|
@ -10,7 +10,7 @@ build_flags = ${nrf52_base.build_flags}
|
|||
-I src/helpers/ui
|
||||
-D muzi_base_duo
|
||||
-D NRF52_POWER_MANAGEMENT
|
||||
-D PIN_USER_BTN=10
|
||||
-D PIN_USER_BTN=PIN_BUTTON1
|
||||
-D USER_BTN_PRESSED=LOW
|
||||
-D PIN_STATUS_LED=35
|
||||
-D RADIO_CLASS=CustomLR1110
|
||||
|
|
@ -27,6 +27,7 @@ build_flags = ${nrf52_base.build_flags}
|
|||
-D P_LORA_RESET=LORA_RESET ; P1.10
|
||||
-D LR11X0_DIO_AS_RF_SWITCH=true
|
||||
-D LR11X0_DIO3_TCXO_VOLTAGE=3.0
|
||||
-D QSPIFLASH=1
|
||||
; -D ENV_INCLUDE_GPS=1
|
||||
build_src_filter = ${nrf52_base.build_src_filter}
|
||||
+<helpers/*.cpp>
|
||||
|
|
@ -81,10 +82,8 @@ build_flags = ${muzi_base_duo.build_flags}
|
|||
; -D MESH_DEBUG=1
|
||||
-D OFFLINE_QUEUE_SIZE=256
|
||||
-D DISPLAY_CLASS=NullDisplayDriver
|
||||
; -D PIN_BUZZER=25
|
||||
; -D PIN_BUZZER_EN=37 ; P1/5 - required for T1000-E
|
||||
|
||||
build_src_filter = ${muzi_base_duo.build_src_filter}
|
||||
+<helpers/ui/buzzer.cpp>
|
||||
+<../examples/companion_radio/*.cpp>
|
||||
+<../examples/companion_radio/ui-orig/*.cpp>
|
||||
lib_deps = ${muzi_base_duo.lib_deps}
|
||||
|
|
@ -105,16 +104,13 @@ build_flags = ${muzi_base_duo.build_flags}
|
|||
-D QSPIFLASH=1
|
||||
; -D BLE_DEBUG_LOGGING=1
|
||||
; -D MESH_PACKET_LOGGING=1
|
||||
-D MESH_DEBUG=1
|
||||
; -D MESH_DEBUG=1
|
||||
-D OFFLINE_QUEUE_SIZE=256
|
||||
-D DISPLAY_CLASS=NullDisplayDriver
|
||||
; -D PIN_BUZZER=25
|
||||
; -D PIN_BUZZER_EN=37 ; P1/5 - required for T1000-E
|
||||
-D ADVERT_NAME='"@@MAC"'
|
||||
build_src_filter = ${muzi_base_duo.build_src_filter}
|
||||
+<helpers/nrf52/SerialBLEInterface.cpp>
|
||||
+<helpers/sensors>
|
||||
; +<helpers/ui/buzzer.cpp>
|
||||
+<../examples/companion_radio/*.cpp>
|
||||
+<../examples/companion_radio/ui-orig/*.cpp>
|
||||
lib_deps = ${muzi_base_duo.lib_deps}
|
||||
|
|
|
|||
|
|
@ -12,8 +12,7 @@ WRAPPER_CLASS radio_driver(radio, board);
|
|||
VolatileRTCClock rtc_clock;
|
||||
// MicroNMEALocationProvider nmea = MicroNMEALocationProvider(Serial1, &rtc_clock);
|
||||
|
||||
EnvironmentSensorManager sensors; // Added: Instantiate sensors (no GPS, as it's disabled)
|
||||
|
||||
EnvironmentSensorManager sensors; // only enable environment sensors. GPS is disabled.
|
||||
#ifdef DISPLAY_CLASS
|
||||
NullDisplayDriver display;
|
||||
#endif
|
||||
|
|
|
|||
|
|
@ -10,55 +10,55 @@
|
|||
|
||||
const uint32_t g_ADigitalPinMap[PINS_COUNT + 1] =
|
||||
{
|
||||
0, // P0.00
|
||||
1, // P0.01
|
||||
2, // P0.02, AIN0 BATTERY_PIN
|
||||
3, // P0.03
|
||||
4, // P0.04, SENSOR_EN
|
||||
5, // P0.05, EXT_PWR_DETEC
|
||||
6, // P0.06, PIN_BUTTON1
|
||||
7, // P0.07, LORA_BUSY
|
||||
8, // P0.08, GPS_VRTC_EN
|
||||
9, // P0.09
|
||||
10, // P0.10
|
||||
11, // P0.11, PIN_SPI_SCK
|
||||
12, // P0.12, PIN_SPI_NSS
|
||||
13, // P0.13, PIN_SERIAL1_TX
|
||||
14, // P0.14, PIN_SERIAL1_RX
|
||||
15, // P0.15, GPS_RTC_INT
|
||||
16, // P0.16, PIN_SERIAL2_TX
|
||||
17, // P0.17, PIN_SERIAL2_RX
|
||||
18, // P0.18
|
||||
19, // P0.19
|
||||
20, // P0.20
|
||||
21, // P0.21
|
||||
22, // P0.22
|
||||
23, // P0.23
|
||||
24, // P0.24, LED_GREEN
|
||||
25, // P0.25, BUZZER_PIN
|
||||
26, // P0.26, PIN_WIRE_SDA
|
||||
27, // P0.27, PIN_WIRE_SCL
|
||||
28, // P0.28
|
||||
29, // P0.29, AIN5, LUX_SENSOR
|
||||
30, // P0.30
|
||||
31, // P0.31, AIN7, TEMP_SENSOR
|
||||
32, // P1.00
|
||||
33, // P1.01, LORA_DIO_1
|
||||
34, // P1.02
|
||||
35, // P1.03, EXT_CHRG_DETECT
|
||||
36, // P1.04
|
||||
37, // P1.05, LR1110_EN
|
||||
38, // P1.06, 3V3_EN PWR TO SENSORS
|
||||
39, // P1.07, PIN_3V3_ACC_EN
|
||||
40, // P1.08, PIN_SPI_MISO
|
||||
41, // P1.09, PIN_SPI_MOSI
|
||||
42, // P1.10, LORA_RESET
|
||||
43, // P1.11, GPS_EN
|
||||
44, // P1.12, GPS_SLEEP_INT
|
||||
45, // P1.13
|
||||
46, // P1.14, GPS_RESETB
|
||||
47, // P1.15, PIN_GPS_RESET
|
||||
255, // NRFX_SPIM_PIN_NOT_USED
|
||||
0,
|
||||
1,
|
||||
2,
|
||||
3,
|
||||
4,
|
||||
5,
|
||||
6,
|
||||
7,
|
||||
8,
|
||||
9,
|
||||
10,
|
||||
11,
|
||||
12,
|
||||
13,
|
||||
14,
|
||||
15,
|
||||
16,
|
||||
17,
|
||||
18,
|
||||
19,
|
||||
20,
|
||||
21,
|
||||
22,
|
||||
23,
|
||||
24,
|
||||
25,
|
||||
26,
|
||||
27,
|
||||
28,
|
||||
29,
|
||||
30,
|
||||
31,
|
||||
// P1 pins.
|
||||
32,
|
||||
33,
|
||||
34,
|
||||
35,
|
||||
36,
|
||||
37,
|
||||
38,
|
||||
39,
|
||||
40,
|
||||
41,
|
||||
42,
|
||||
43,
|
||||
44,
|
||||
45,
|
||||
46,
|
||||
47,
|
||||
};
|
||||
|
||||
void initVariant()
|
||||
|
|
@ -67,11 +67,21 @@ void initVariant()
|
|||
// https://github.com/Seeed-Studio/Adafruit_nRF52_Arduino/blob/fab7d30a997a1dfeef9d1d59bfb549adda73815a/cores/nRF5/wiring.c#L65-L69
|
||||
|
||||
pinMode(PIN_VBAT_READ, INPUT);
|
||||
// pinMode(EXT_CHRG_DETECT, INPUT);
|
||||
// pinMode(EXT_PWR_DETECT, INPUT);
|
||||
pinMode(PIN_BATTERY_CHARGING, INPUT);
|
||||
pinMode(PIN_CHARGER_FAULT, INPUT);
|
||||
pinMode(PIN_BUTTON1, INPUT);
|
||||
pinMode(PIN_BUTTON2, INPUT);
|
||||
pinMode(PIN_BUTTON3, INPUT);
|
||||
pinMode(PIN_BUTTON4, INPUT);
|
||||
pinMode(PIN_BUTTON5, INPUT);
|
||||
pinMode(PIN_BUTTON6, INPUT);
|
||||
pinMode(LED_PIN, OUTPUT);
|
||||
pinMode(LED_BLUE, OUTPUT);
|
||||
digitalWrite(LED_PIN, LOW);
|
||||
digitalWrite(LED_BLUE, LOW);
|
||||
pinMode(GPS_EN, OUTPUT);
|
||||
digitalWrite(GPS_EN, LOW); // lets turn off the GPS at start. we can turn it on when we need it.
|
||||
|
||||
pinMode(SCREEN_12V_ENABLE, OUTPUT);
|
||||
digitalWrite(SCREEN_12V_ENABLE, LOW); //
|
||||
}
|
||||
|
|
|
|||
|
|
@ -25,19 +25,23 @@
|
|||
#define VBAT_AR_INTERNAL AR_INTERNAL_3_0
|
||||
#define ADC_MULTIPLIER 1.537
|
||||
#define ADC_RESOLUTION 14
|
||||
#define PIN_BATTERY_CHARGING (32+2) // P1.02 STAT2
|
||||
#define PIN_CHARGER_FAULT (27) // P0.27 STAT1 this pin is disabled on meshtastic.
|
||||
// BQ25185 has 2 status pins: STAT1 and STAT2. Both are high when not charging. STAT1 high, STAT2 low: charging. Recoverable fault: STAT1 low, STAT2 high. Unrecoverable fault: both low.
|
||||
// We only need to detect charging vs not charging, but someone else can use the fault pin to log when the battery gets too hot or cold.
|
||||
|
||||
// Power management boot protection threshold (millivolts)
|
||||
#define PWRMGT_VOLTAGE_BOOTLOCK 3300 // Won't boot below this voltage (mV)
|
||||
#define PWRMGT_VOLTAGE_BOOTLOCK 3100 // Won't boot below this voltage (mV). BB15 battery min voltage is 3v, 3100mV is minimum batt in meshtastic code.
|
||||
|
||||
// LPCOMP wake configuration (voltage recovery from SYSTEMOFF)
|
||||
#define PWRMGT_LPCOMP_AIN 3
|
||||
#define PWRMGT_LPCOMP_REFSEL 4 // 5/8 VDD (~3.13-3.44V)
|
||||
#define PWRMGT_LPCOMP_AIN 7 // AIN7 = P0.31 = PIN_VBAT_READ
|
||||
#define PWRMGT_LPCOMP_REFSEL 4 // 5/8 VDD (~3.13-3.44V) was the default on RAK4631. should still apply here.
|
||||
|
||||
// Other pins
|
||||
#define PIN_AREF (2)
|
||||
#define PIN_AREF (-1)
|
||||
#define SCREEN_12V_ENABLE (23) // SH1107 OLED controller has a pin that needs to be enabled to turn on the screen.
|
||||
|
||||
|
||||
static const uint8_t AREF = PIN_AREF;
|
||||
static const uint8_t AREF = (PIN_AREF); // not used
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Number of pins
|
||||
|
|
@ -53,20 +57,16 @@ static const uint8_t AREF = PIN_AREF;
|
|||
#define PIN_SERIAL1_RX (19) // P0.19 used for GPS RX
|
||||
#define PIN_SERIAL1_TX (20) // P0.20 used for GPS TX
|
||||
|
||||
|
||||
// #define PIN_SERIAL2_RX (17) // P0.17
|
||||
// #define PIN_SERIAL2_TX (16) // P0.16
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// I2C pin definition
|
||||
|
||||
#define HAS_WIRE (1)
|
||||
#define WIRE_INTERFACES_COUNT (2)
|
||||
|
||||
#define PIN_WIRE_SDA (4) // P0.4
|
||||
#define PIN_WIRE_SCL (6) // P0.6
|
||||
#define PIN_WIRE1_SDA (24) // P0.24 OLED I2C
|
||||
#define PIN_WIRE1_SCL (25) // P0.25 OLED I2C
|
||||
#define PIN_WIRE1_SDA (4) // P0.4
|
||||
#define PIN_WIRE1_SCL (6) // P0.6
|
||||
#define PIN_WIRE_SDA (24) // P0.24 OLED I2C
|
||||
#define PIN_WIRE_SCL (25) // P0.25 OLED I2C
|
||||
// #define I2C_NO_RESCAN
|
||||
// #define HAS_QMA6100P
|
||||
// #define QMA_6100P_INT_PIN (34) // P1.2
|
||||
|
|
@ -93,9 +93,18 @@ static const uint8_t AREF = PIN_AREF;
|
|||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Builtin buttons
|
||||
|
||||
#define PIN_BUTTON1 (10) // P0.10
|
||||
#define BUTTON_PIN PIN_BUTTON1
|
||||
#define PIN_BUTTON1 (10) // P0.10 Menu / User Button | on superIO, this is in the center of the "D-Pad", but it's also the button on the Uno/Duo.
|
||||
#define PIN_BUTTON2 (21) // Joystick Up
|
||||
#define PIN_BUTTON3 (17) // Joystick Down
|
||||
#define PIN_BUTTON4 (37) // Joystick Left
|
||||
#define PIN_BUTTON5 (16) // Joystick Right
|
||||
#define PIN_BUTTON6 (15) // Back / Cancel Button.
|
||||
#define JOYSTICK_PRESS PIN_BUTTON1
|
||||
#define JOYSTICK_UP PIN_BUTTON2
|
||||
#define JOYSTICK_DOWN PIN_BUTTON3
|
||||
#define JOYSTICK_LEFT PIN_BUTTON4
|
||||
#define JOYSTICK_RIGHT PIN_BUTTON5
|
||||
#define PIN_BACK_BTN PIN_BUTTON6
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// LR1110
|
||||
|
|
@ -112,7 +121,7 @@ static const uint8_t AREF = PIN_AREF;
|
|||
#define LR11X0_DIO3_TCXO_VOLTAGE 3.0
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
// QSPI Flash
|
||||
#define PIN_QSPI_SCK (0 + 3)
|
||||
#define PIN_QSPI_CS (0 + 26)
|
||||
#define PIN_QSPI_IO0 (0 + 30)
|
||||
|
|
@ -122,34 +131,15 @@ static const uint8_t AREF = PIN_AREF;
|
|||
|
||||
#define EXTERNAL_FLASH_DEVICES W25Q128JVPQ
|
||||
#define EXTERNAL_FLASH_USE_QSPI
|
||||
// // GPS
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// GPS
|
||||
// #define HAS_GPS 1
|
||||
// #define GPS_RX_PIN PIN_SERIAL1_RX
|
||||
// #define GPS_TX_PIN PIN_SERIAL1_TX
|
||||
|
||||
// #define GPS_EN (43) // P1.11
|
||||
// #define GPS_RESET (47) // P1.15
|
||||
|
||||
// #define GPS_VRTC_EN (8) // P0.8
|
||||
// #define GPS_SLEEP_INT (44) // P1.12
|
||||
// #define GPS_RTC_INT (15) // P0.15
|
||||
// #define GPS_RESETB (46) // P1.14
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Temp+Lux Sensor
|
||||
|
||||
// #define SENSOR_EN (4) // P0.4
|
||||
// #define TEMP_SENSOR (31) // P0.31/AIN7
|
||||
// #define LUX_SENSOR (29) // P0.29/AIN5
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Accelerometer (I2C addr : ??? )
|
||||
|
||||
// #define PIN_3V3_ACC_EN (39) // P1.7
|
||||
#define GPS_RX_PIN PIN_SERIAL1_RX
|
||||
#define GPS_TX_PIN PIN_SERIAL1_TX
|
||||
#define GPS_EN (32+1) // P1.01 PWR_IO2 on schematic. just cuts power to gps.
|
||||
|
||||
////////////////////////////////////////////////////////////////////////////////
|
||||
// Buzzer
|
||||
|
||||
// #define BUZZER_EN (37) // P1.5
|
||||
// #define BUZZER_PIN (25) // P0.25
|
||||
#define BUZZER_PIN (22) // P0.22 same load switch design as GPS_EN.
|
||||
Loading…
Add table
Add a link
Reference in a new issue