Merge pull request #909 from t-huyeng/build-workflow
Build workflow for S3-usb-stick boards
This commit is contained in:
commit
41cf44de14
54
.github/workflows/build.yml
vendored
54
.github/workflows/build.yml
vendored
@ -14,17 +14,10 @@ jobs:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
# os: [ubuntu-latest, windows-latest, macos-latest]
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
path: ~/.cache/pip
|
||||
platformio-path: ~/.platformio
|
||||
# - os: macos-latest
|
||||
# path: ~/Library/Caches/pip
|
||||
# platformio-path: ~/Library/Caches/platformio
|
||||
# - os: windows-latest
|
||||
# path: ~\AppData\Local\pip\Cache
|
||||
# platformio-path: ~\AppData\Local\platformio\Cache
|
||||
board:
|
||||
[
|
||||
generic.h,
|
||||
@ -94,3 +87,50 @@ jobs:
|
||||
env:
|
||||
CI_HALFILE: ${{ matrix.board }}
|
||||
run: pio run -e ci
|
||||
|
||||
build-s3-usb-stick:
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
os: [ubuntu-latest]
|
||||
include:
|
||||
- os: ubuntu-latest
|
||||
path: ~/.cache/pip
|
||||
platformio-path: ~/.platformio
|
||||
board: [ttgotdongles3.h, ttgotdongledisplays3.h]
|
||||
runs-on: ${{ matrix.os }}
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- name: Cache pip
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ${{ matrix.path }}
|
||||
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-pip-
|
||||
- name: Cache PlatformIO
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ${{ matrix.platformio-path }}
|
||||
key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}
|
||||
- name: Set up Python
|
||||
uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: "3.9.13"
|
||||
- name: Install PlatformIO
|
||||
run: |
|
||||
python -m pip install --upgrade pip
|
||||
pip install --upgrade platformio
|
||||
- name: Copy of necessary files
|
||||
run: |
|
||||
cp platformio_orig_s3-usb-stick.ini platformio.ini
|
||||
cp src/loraconf_sample.h src/loraconf.h
|
||||
cp src/ota_sample.conf src/ota.conf
|
||||
cp src/paxcounter_orig.conf src/paxcounter.conf
|
||||
- name: Clean
|
||||
run: pio run -t clean -e ci
|
||||
- name: Run PlatformIO CI for ${{ matrix.board }}
|
||||
env:
|
||||
CI_HALFILE: ${{ matrix.board }}
|
||||
run: pio run -e ci
|
||||
|
@ -86,6 +86,10 @@ extern BB_SPI_LCD *dp;
|
||||
#define MY_DISPLAY_HEIGHT 64 // Height in pixels of OLED-display, must be 64X
|
||||
#endif
|
||||
|
||||
#ifndef MY_DISPLAY_FIRSTLINE
|
||||
#define MY_DISPLAY_FIRSTLINE 0
|
||||
#endif
|
||||
|
||||
// settings for qr code generator
|
||||
#define QR_VERSION 3 // 29 x 29px
|
||||
|
||||
|
@ -4,6 +4,15 @@
|
||||
#include <Arduino.h>
|
||||
#include <Wire.h>
|
||||
#include <BitBang_I2C.h>
|
||||
#include <Wire.h>
|
||||
|
||||
#ifndef MY_DISPLAY_SDA
|
||||
#define MY_DISPLAY_SDA SDA
|
||||
#endif
|
||||
|
||||
#ifndef MY_DISPLAY_SCL
|
||||
#define MY_DISPLAY_SCL SCL
|
||||
#endif
|
||||
|
||||
#define SSD1306_PRIMARY_ADDRESS (0x3D)
|
||||
#define SSD1306_SECONDARY_ADDRESS (0x3C)
|
||||
@ -14,14 +23,6 @@
|
||||
#define MCP_24AA02E64_PRIMARY_ADDRESS (0x50)
|
||||
#define QUECTEL_GPS_PRIMARY_ADDRESS (0x10)
|
||||
|
||||
#ifndef MY_DISPLAY_SDA
|
||||
#define MY_DISPLAY_SDA SDA
|
||||
#endif
|
||||
|
||||
#ifndef MY_DISPLAY_SCL
|
||||
#define MY_DISPLAY_SCL SCL
|
||||
#endif
|
||||
|
||||
extern SemaphoreHandle_t I2Caccess;
|
||||
|
||||
void i2c_init(void);
|
||||
|
70
platformio_orig_s3-usb-stick.ini
Normal file
70
platformio_orig_s3-usb-stick.ini
Normal file
@ -0,0 +1,70 @@
|
||||
[board]
|
||||
halfile = ttgotdongles3.h
|
||||
;halfile = ttgotdongledisplays3.h
|
||||
|
||||
[platformio]
|
||||
; upload firmware to board with usb cable
|
||||
default_envs = usb
|
||||
description = Paxcounter is a device for metering passenger flows in realtime. It counts how many mobile devices are around.
|
||||
|
||||
[common]
|
||||
; for release_version use max. 10 chars total, use any decimal format like "a.b.c"
|
||||
release_version = 3.3.2
|
||||
; DEBUG LEVEL: For production run set to 0, otherwise device will leak RAM while running!
|
||||
; 0=None, 1=Error, 2=Warn, 3=Info, 4=Debug, 5=Verbose
|
||||
debug_level = 5
|
||||
extra_scripts = pre:build.py
|
||||
otakeyfile = ota.conf
|
||||
lorakeyfile = loraconf.h
|
||||
lmicconfigfile = lmic_config.h
|
||||
platform_espressif32 = espressif32@5.2.0
|
||||
monitor_speed = 115200
|
||||
upload_speed = 115200 ; set by build.py and taken from hal file
|
||||
lib_deps_all =
|
||||
bitbank2/BitBang_I2C@^2.2.1
|
||||
https://github.com/bitbank2/bb_spi_lcd.git
|
||||
fastled/FastLED @ ^3.5.0
|
||||
;greyrook/libpax @ ^1.0.1
|
||||
https://github.com/cyberman54/libpax.git
|
||||
https://github.com/SukkoPera/Arduino-Rokkit-Hash.git
|
||||
bblanchon/ArduinoJson @ ^6
|
||||
spacehuhn/SimpleButton
|
||||
256dpi/MQTT @ ^2.5.0
|
||||
ricmoo/QRCode @ ^0.0.1
|
||||
build_flags_basic =
|
||||
-include "src/paxcounter.conf"
|
||||
'-DCORE_DEBUG_LEVEL=${common.debug_level}'
|
||||
'-DLOG_LOCAL_LEVEL=${common.debug_level}'
|
||||
'-DPROGVERSION="${common.release_version}"'
|
||||
'-D LIBPAX_WIFI'
|
||||
'-D LIBPAX_BLE'
|
||||
'-D LIBPAX_ARDUINO'
|
||||
build_flags_all =
|
||||
${common.build_flags_basic}
|
||||
-mfix-esp32-psram-cache-issue
|
||||
|
||||
[env]
|
||||
framework = arduino
|
||||
board = esp32-s3-devkitc-1
|
||||
board_build.partitions = min_spiffs.csv
|
||||
build_type = release
|
||||
upload_speed = ${common.upload_speed}
|
||||
;upload_port = COM6
|
||||
platform = ${common.platform_espressif32}
|
||||
lib_deps = ${common.lib_deps_all}
|
||||
build_flags =
|
||||
-include "src/hal/${board.halfile}"
|
||||
${common.build_flags_all}
|
||||
upload_protocol = ${common.upload_protocol}
|
||||
extra_scripts = ${common.extra_scripts}
|
||||
monitor_speed = ${common.monitor_speed}
|
||||
monitor_filters = time, esp32_exception_decoder, default
|
||||
|
||||
[env:usb]
|
||||
upload_protocol = esptool
|
||||
|
||||
[env:ci]
|
||||
build_flags =
|
||||
-include "src/hal/${sysenv.CI_HALFILE}" ; set by CI
|
||||
${common.build_flags_all}
|
||||
upload_protocol = esptool
|
@ -1,6 +1,6 @@
|
||||
// clang-format off
|
||||
// upload_speed 1500000
|
||||
// board ESP32-S3-DevKitC-1
|
||||
// board esp32-s3-devkitc-1
|
||||
|
||||
#ifndef _TTGOTDISPLAYS3_H
|
||||
#define _TTGOTDISPLAYS3_H
|
||||
|
31
src/hal/ttgotdongledisplays3.h
Normal file
31
src/hal/ttgotdongledisplays3.h
Normal file
@ -0,0 +1,31 @@
|
||||
// clang-format off
|
||||
// upload_speed 1500000
|
||||
// board esp32-s3-devkitc-1
|
||||
|
||||
// see https://github.com/Xinyuan-LilyGO/T-Dongle-S3
|
||||
|
||||
#ifndef _TTGOTDONGLES3_H
|
||||
#define _TTGOTDONGLES3_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#define HAS_LED NOT_A_PIN
|
||||
#define HAS_BUTTON 0
|
||||
|
||||
#define HAS_SDCARD 2 // this board has a SD MMC card-reader/writer
|
||||
#define SDCARD_SLOTWIDTH 4 // 4-line interface
|
||||
|
||||
#define HAS_DISPLAY 2 // TFT-LCD
|
||||
#define TFT_TYPE DISPLAY_T_DISPLAY_S3
|
||||
#define MY_DISPLAY_FLIP 1 // use if display is rotated
|
||||
#define MY_DISPLAY_WIDTH 80
|
||||
#define MY_DISPLAY_HEIGHT 160
|
||||
|
||||
#define TFT_CS_PIN 4
|
||||
#define TFT_SDA_PIN 3
|
||||
#define TFT_SCL_PIN 5
|
||||
#define TFT_DC_PIN 2
|
||||
#define TFT_RES_PIN 1
|
||||
#define TFT_LEDA_PIN 38
|
||||
|
||||
#endif
|
21
src/hal/ttgotdongles3.h
Normal file
21
src/hal/ttgotdongles3.h
Normal file
@ -0,0 +1,21 @@
|
||||
// clang-format off
|
||||
// upload_speed 1500000
|
||||
// board esp32-s3-devkitc-1
|
||||
|
||||
// for pinouts see https://github.com/Xinyuan-LilyGO/T-Dongle-S3
|
||||
|
||||
#ifndef _TTGOTDONGLES3_H
|
||||
#define _TTGOTDONGLES3_H
|
||||
|
||||
#include <stdint.h>
|
||||
|
||||
#define HAS_LED NOT_A_PIN
|
||||
#define RGB_LED_COUNT 1
|
||||
#define HAS_RGB_LED FastLED.addLeds<APA102, 40, 39, BGR>(leds, RGB_LED_COUNT)
|
||||
#define FASTLED_INTERNAL
|
||||
#define HAS_BUTTON 0 // dongle button is on GPIO0
|
||||
#define HAS_SDCARD 2 // dongle has a SD MMC card-reader/writer
|
||||
#define SDCARD_SLOTWIDTH 4 // dongle has 4 line interface
|
||||
#define SDCARD_SLOTCONFIG { .clk = GPIO_NUM_12, .cmd = GPIO_NUM_16, .d0 = GPIO_NUM_14, .d1 = GPIO_NUM_17, .d2 = GPIO_NUM_21, .d3 = GPIO_NUM_18, .cd = SDMMC_SLOT_NO_CD, .wp = SDMMC_SLOT_NO_WP, .width = 4, .flags = 0, }
|
||||
|
||||
#endif
|
Loading…
Reference in New Issue
Block a user