mirror of
https://github.com/meshtastic/firmware.git
synced 2025-08-13 16:55:08 +00:00

* Add battery level with lookup table now uses a lookup table to better calculate battery level of different cells * LifePo4 and PB battery table - added voltage filter removed delay from adc reading, added a software filter to smooth out voltage readings. In those applications battery would last hours to days, no sudden change should be expected so a less frequent voltage reading or a more aggressive filtering could be done. Note: to speed up convergence i initiliazied the last value to the minimum voltage, there are other and better ways to init the filter. Added LiFePO4 and PB open circuit volta battery tables, * Fixed ADC_CTRL , Checks for valid ADC readings line 230/386 For heltec v3 and heltec tracker a different approach was used with the ADC_CTRL pin, now is more uniform using the same code for the 3 boards. line 236 Check if the raw reading we are getting is Valid or not, count only the valid readings. This could lead to a division by 0 (improbable) so that's why at line 258 there is a check for that. * updated OCV values updated value to not OCV but to very low current, almost the same anyway * Added Alkaline/Nimh voltage curve Added Alkaline/Nimh voltage curve for AA/AAA and similar cells * updates variants for new capacity measurement * trunk reformatting * trunk fmt * Add LTO chemistry --------- Co-authored-by: Ben Meadors <benmmeadors@gmail.com> Co-authored-by: code8buster <20384924+code8buster@users.noreply.github.com>
74 lines
2.3 KiB
C
74 lines
2.3 KiB
C
#define LED_PIN 18
|
|
|
|
// ST7735S TFT LCD
|
|
#define ST7735S 1 // there are different (sub-)versions of ST7735
|
|
#define ST7735_CS 38
|
|
#define ST7735_RS 40 // DC
|
|
#define ST7735_SDA 42 // MOSI
|
|
#define ST7735_SCK 41
|
|
#define ST7735_RESET 39
|
|
#define ST7735_MISO -1
|
|
#define ST7735_BUSY -1
|
|
#define ST7735_BL_V03 45
|
|
#define ST7735_BL_V05 21 /* V1.1 PCB marking */
|
|
#define ST7735_SPI_HOST SPI3_HOST
|
|
#define ST7735_BACKLIGHT_EN_V03 45
|
|
#define ST7735_BACKLIGHT_EN_V05 21
|
|
#define SPI_FREQUENCY 40000000
|
|
#define SPI_READ_FREQUENCY 16000000
|
|
#define SCREEN_ROTATE
|
|
#define TFT_HEIGHT 160
|
|
#define TFT_WIDTH 80
|
|
#define TFT_OFFSET_X 26
|
|
#define TFT_OFFSET_Y 0
|
|
#define VTFT_CTRL_V03 46 // Heltec Tracker needs this pulled low for TFT
|
|
#define VTFT_CTRL_V05 -1
|
|
#define SCREEN_TRANSITION_FRAMERATE 1 // fps
|
|
#define DISPLAY_FORCE_SMALL_FONTS
|
|
|
|
#define VEXT_ENABLE_V03 Vext // active low, powers the oled display and the lora antenna boost
|
|
#define VEXT_ENABLE_V05 3 // active HIGH, powers the oled display
|
|
#define BUTTON_PIN 0
|
|
|
|
#define BATTERY_PIN 1 // A battery voltage measurement pin, voltage divider connected here to measure battery voltage
|
|
#define ADC_CHANNEL ADC1_GPIO1_CHANNEL
|
|
#define ADC_ATTENUATION ADC_ATTEN_DB_2_5 // lower dB for high resistance voltage divider
|
|
#define ADC_MULTIPLIER 4.9
|
|
#define ADC_CTRL 2 // active HIGH, powers the voltage divider. Only on 1.1
|
|
#define ADC_CTRL_ENABLED HIGH
|
|
|
|
#undef GPS_RX_PIN
|
|
#undef GPS_TX_PIN
|
|
#define GPS_RX_PIN 33
|
|
#define GPS_TX_PIN 34
|
|
#define PIN_GPS_RESET 35
|
|
#define PIN_GPS_PPS 36
|
|
|
|
#define VGNSS_CTRL_V03 37 // Heltec Tracker needs this pulled low for GPS
|
|
#define VGNSS_CTRL_V05 -1 // Heltec Tracker needs this pulled low for GPS
|
|
#define PIN_GPS_EN VGNSS_CTRL_V03
|
|
#define GPS_EN_ACTIVE LOW
|
|
|
|
#define GPS_RESET_MODE LOW
|
|
#define GPS_UC6580
|
|
|
|
#define USE_SX1262
|
|
#define LORA_DIO0 -1 // a No connect on the SX1262 module
|
|
#define LORA_RESET 12
|
|
#define LORA_DIO1 14 // SX1262 IRQ
|
|
#define LORA_DIO2 13 // SX1262 BUSY
|
|
#define LORA_DIO3 // Not connected on PCB, but internally on the TTGO SX1262, if DIO3 is high the TXCO is enabled
|
|
|
|
#define LORA_SCK 9
|
|
#define LORA_MISO 11
|
|
#define LORA_MOSI 10
|
|
#define LORA_CS 8
|
|
|
|
#define SX126X_CS LORA_CS
|
|
#define SX126X_DIO1 LORA_DIO1
|
|
#define SX126X_BUSY LORA_DIO2
|
|
#define SX126X_RESET LORA_RESET
|
|
|
|
#define SX126X_DIO2_AS_RF_SWITCH
|
|
#define SX126X_DIO3_TCXO_VOLTAGE 1.8
|