init
This commit is contained in:
@@ -0,0 +1,67 @@
|
||||
#ifndef Pins_Arduino_h
|
||||
#define Pins_Arduino_h
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#define USB_VID 0x16D0
|
||||
#define USB_PID 0x1178
|
||||
|
||||
#define EXTERNAL_NUM_INTERRUPTS 46
|
||||
#define NUM_DIGITAL_PINS 48
|
||||
#define NUM_ANALOG_INPUTS 20
|
||||
|
||||
#define analogInputToDigitalPin(p) (((p) < 20) ? (analogChannelToDigitalPin(p)) : -1)
|
||||
#define digitalPinToInterrupt(p) (((p) < 48) ? (p) : -1)
|
||||
#define digitalPinHasPWM(p) (p < 46)
|
||||
|
||||
#define LED_BUILTIN 13
|
||||
#define BUILTIN_LED LED_BUILTIN // backward compatibility
|
||||
|
||||
static const uint8_t TX = 43;
|
||||
static const uint8_t RX = 44;
|
||||
|
||||
static const uint8_t SDA = 3;
|
||||
static const uint8_t SCL = 4;
|
||||
|
||||
static const uint8_t SS = 13;
|
||||
static const uint8_t MOSI = 40;
|
||||
static const uint8_t MISO = 41;
|
||||
static const uint8_t SCK = 39;
|
||||
|
||||
static const uint8_t A0 = 1;
|
||||
static const uint8_t A1 = 2;
|
||||
static const uint8_t A2 = 8;
|
||||
static const uint8_t A3 = 9;
|
||||
static const uint8_t A4 = 5;
|
||||
static const uint8_t A5 = 6;
|
||||
static const uint8_t A6 = 14;
|
||||
static const uint8_t A7 = 7;
|
||||
static const uint8_t A8 = 15;
|
||||
static const uint8_t A9 = 33;
|
||||
static const uint8_t A10 = 27;
|
||||
static const uint8_t A11 = 12;
|
||||
static const uint8_t A12 = 13;
|
||||
static const uint8_t A13 = 14;
|
||||
static const uint8_t A14 = 15;
|
||||
static const uint8_t A15 = 16;
|
||||
static const uint8_t A16 = 17;
|
||||
static const uint8_t A17 = 18;
|
||||
static const uint8_t A18 = 19;
|
||||
static const uint8_t A19 = 20;
|
||||
|
||||
static const uint8_t T1 = 2;
|
||||
static const uint8_t T2 = 8;
|
||||
static const uint8_t T3 = 9;
|
||||
static const uint8_t T4 = 5;
|
||||
static const uint8_t T5 = 6;
|
||||
static const uint8_t T6 = 14;
|
||||
static const uint8_t T7 = 7;
|
||||
static const uint8_t T8 = 15;
|
||||
static const uint8_t T9 = 33;
|
||||
static const uint8_t T10 = 27;
|
||||
static const uint8_t T11 = 12;
|
||||
static const uint8_t T12 = 13;
|
||||
static const uint8_t T13 = 14;
|
||||
static const uint8_t T14 = 15;
|
||||
|
||||
#endif /* Pins_Arduino_h */
|
||||
@@ -0,0 +1,77 @@
|
||||
; platformio.ini for unphone meshtastic
|
||||
|
||||
[env:unphone]
|
||||
|
||||
extends = esp32s3_base
|
||||
board = unphone9
|
||||
upload_speed = 921600
|
||||
monitor_speed = 115200
|
||||
monitor_filters = esp32_exception_decoder
|
||||
|
||||
build_unflags =
|
||||
${esp32s3_base.build_unflags}
|
||||
-D ARDUINO_USB_MODE
|
||||
|
||||
build_flags = ${esp32_base.build_flags}
|
||||
-D UNPHONE
|
||||
-I variants/unphone
|
||||
-D ARDUINO_USB_MODE=0
|
||||
-D UNPHONE_ACCEL=0
|
||||
-D UNPHONE_TOUCHS=0
|
||||
-D UNPHONE_SDCARD=0
|
||||
-D UNPHONE_UI0=0
|
||||
-D UNPHONE_LORA=0
|
||||
-D UNPHONE_FACTORY_MODE=0
|
||||
|
||||
build_src_filter = ${esp32_base.build_src_filter} +<../variants/unphone>
|
||||
|
||||
lib_deps = ${esp32s3_base.lib_deps}
|
||||
lovyan03/LovyanGFX@ 1.1.12
|
||||
https://gitlab.com/hamishcunningham/unphonelibrary#meshtastic@9.0.0
|
||||
adafruit/Adafruit NeoPixel @ ^1.12.0
|
||||
|
||||
|
||||
[env:unphone-tft]
|
||||
extends = esp32s3_base
|
||||
board_level = extra
|
||||
board = unphone
|
||||
board_build.partitions = default_8MB.csv
|
||||
monitor_speed = 115200
|
||||
monitor_filters = esp32_exception_decoder
|
||||
build_flags = ${esp32_base.build_flags}
|
||||
-D UNPHONE
|
||||
-D UNPHONE_ACCEL=0
|
||||
-D UNPHONE_TOUCHS=0
|
||||
-D UNPHONE_SDCARD=0
|
||||
-D UNPHONE_UI0=0
|
||||
-D UNPHONE_LORA=0
|
||||
-D UNPHONE_FACTORY_MODE=0
|
||||
-D MAX_THREADS=40
|
||||
-D HAS_SCREEN=0
|
||||
-D HAS_TFT=1
|
||||
-D RAM_SIZE=512
|
||||
-D LV_LVGL_H_INCLUDE_SIMPLE
|
||||
-D LV_CONF_INCLUDE_SIMPLE
|
||||
-D LV_COMP_CONF_INCLUDE_SIMPLE
|
||||
-D LV_BUILD_TEST=0
|
||||
-D LV_USE_PERF_MONITOR=0
|
||||
-D LV_USE_MEM_MONITOR=0
|
||||
-D USE_LOG_DEBUG
|
||||
-D LOG_DEBUG_INC=\"DebugConfiguration.h\"
|
||||
; -D CALIBRATE_TOUCH=0
|
||||
-D LGFX_DRIVER=LGFX_UNPHONE_V9
|
||||
-D VIEW_320x240
|
||||
; -D USE_DOUBLE_BUFFER
|
||||
-D USE_PACKET_API
|
||||
-I lib/device-ui/generated/ui_320x240
|
||||
-I variants/unphone
|
||||
|
||||
build_src_filter = ${esp32_base.build_src_filter} +<../variants/unphone>
|
||||
+<../lib/device-ui/generated/ui_320x240>
|
||||
+<../lib/device-ui/resources>
|
||||
+<../lib/device-ui/source>
|
||||
|
||||
lib_deps = ${esp32s3_base.lib_deps}
|
||||
lovyan03/LovyanGFX@^1.1.12
|
||||
https://gitlab.com/hamishcunningham/unphonelibrary#meshtastic@9.0.0
|
||||
adafruit/Adafruit NeoPixel@1.12.0
|
||||
@@ -0,0 +1,21 @@
|
||||
// meshtastic/firmware/variants/unphone/variant.cpp
|
||||
|
||||
#include "unPhone.h"
|
||||
unPhone unphone = unPhone("meshtastic_unphone");
|
||||
|
||||
void initVariant()
|
||||
{
|
||||
unphone.begin(); // initialise hardware etc.
|
||||
unphone.store(unphone.buildTime);
|
||||
unphone.printWakeupReason(); // what woke us up? (stored, not printed :|)
|
||||
unphone.checkPowerSwitch(); // if power switch is off, shutdown
|
||||
unphone.backlight(false); // setup backlight and make sure its off
|
||||
unphone.expanderPower(true); // enable power to expander / hat / sheild
|
||||
|
||||
for (int i = 0; i < 3; i++) { // buzz a bit
|
||||
unphone.vibe(true);
|
||||
delay(150);
|
||||
unphone.vibe(false);
|
||||
delay(150);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,71 @@
|
||||
// meshtastic/firmware/variants/unphone/variant.h
|
||||
|
||||
#pragma once
|
||||
|
||||
#define SPI_SCK 39
|
||||
#define SPI_MOSI 40
|
||||
#define SPI_MISO 41
|
||||
|
||||
// We use the RFM95W LoRa module
|
||||
#define USE_RF95
|
||||
#define LORA_SCK SPI_SCK
|
||||
#define LORA_MOSI SPI_MOSI
|
||||
#define LORA_MISO SPI_MISO
|
||||
#define LORA_CS 44
|
||||
#define LORA_DIO0 10 // AKA LORA_IRQ
|
||||
#define LORA_RESET 42
|
||||
#define LORA_DIO1 11
|
||||
#define LORA_DIO2 RADIOLIB_NC // Not really used
|
||||
|
||||
// HX8357 TFT LCD
|
||||
#define HX8357_CS 48
|
||||
#define HX8357_RS 47 // AKA DC
|
||||
#define HX8357_RESET 46
|
||||
#define HX8357_SCK SPI_SCK
|
||||
#define HX8357_MOSI SPI_MOSI
|
||||
#define HX8357_MISO SPI_MISO
|
||||
#define HX8357_BUSY -1
|
||||
#define HX8357_SPI_HOST SPI2_HOST
|
||||
#define SPI_FREQUENCY 40000000
|
||||
#define SPI_READ_FREQUENCY 16000000
|
||||
#define TFT_HEIGHT 480
|
||||
#define TFT_WIDTH 320
|
||||
#define TFT_OFFSET_X 0
|
||||
#define TFT_OFFSET_Y 0
|
||||
#define TFT_OFFSET_ROTATION 6 // unPhone's screen wired unusually, 0 typical
|
||||
#define TFT_INVERT false
|
||||
#define SCREEN_ROTATE true
|
||||
#define SCREEN_TRANSITION_FRAMERATE 5
|
||||
|
||||
#define HAS_TOUCHSCREEN 1
|
||||
#define USE_XPT2046 1
|
||||
#define TOUCH_CS 38
|
||||
|
||||
#define HAS_GPS \
|
||||
0 // the unphone doesn't have a gps module by default (though
|
||||
// GPS featherwing -- https://www.adafruit.com/product/3133
|
||||
// -- can be added)
|
||||
#undef GPS_RX_PIN
|
||||
#undef GPS_TX_PIN
|
||||
|
||||
// #define HAS_SDCARD 1 // causes hang if defined
|
||||
#define SDCARD_CS 43
|
||||
|
||||
#define LED_PIN 13 // the red part of the RGB LED
|
||||
#define LED_STATE_ON 0 // State when LED is lit
|
||||
|
||||
#define BUTTON_PIN 21 // Button 3 - square - top button in landscape mode
|
||||
#define BUTTON_NEED_PULLUP // we do need a helping hand up
|
||||
#define BUTTON_PIN_ALT 45 // Button 1 - triangle - bottom button in landscape mode
|
||||
|
||||
#define I2C_SDA 3 // I2C pins for this board
|
||||
#define I2C_SCL 4
|
||||
|
||||
#define LSM6DS3_WAKE_THRESH 5 // higher values reduce the sensitivity of the wake threshold
|
||||
|
||||
// ratio of voltage divider = 3.20 (R1=100k, R2=220k)
|
||||
// #define ADC_MULTIPLIER 3.2
|
||||
|
||||
// #define BATTERY_PIN 13 // battery V measurement pin; vbat divider is here
|
||||
// #define ADC_CHANNEL ADC2_GPIO13_CHANNEL
|
||||
// #define BAT_MEASURE_ADC_UNIT 2
|
||||
Reference in New Issue
Block a user