diff --git a/.github/workflows/github-releases-to-discord.yml b/.github/workflows/github-releases-to-discord.yml index 140d6a63e..6371161a6 100644 --- a/.github/workflows/github-releases-to-discord.yml +++ b/.github/workflows/github-releases-to-discord.yml @@ -1,4 +1,4 @@ -name: 'github-releases-to-discord' +name: 'Publish releases to discord' on: release: diff --git a/.github/workflows/pr_check.yml b/.github/workflows/pr_check.yml index 003969d14..789795aa3 100644 --- a/.github/workflows/pr_check.yml +++ b/.github/workflows/pr_check.yml @@ -1,4 +1,4 @@ -name: 'pr_check' +name: 'Pre-check on PR' on: workflow_dispatch: diff --git a/.github/workflows/pre_release.yml b/.github/workflows/pre_release.yml index f5884632b..60fc037ac 100644 --- a/.github/workflows/pre_release.yml +++ b/.github/workflows/pre_release.yml @@ -1,4 +1,4 @@ -name: 'pre-release' +name: 'Build dev release' on: workflow_dispatch: diff --git a/.github/workflows/stale_issues.yml b/.github/workflows/stale_issues.yml new file mode 100644 index 000000000..8ff56ea3f --- /dev/null +++ b/.github/workflows/stale_issues.yml @@ -0,0 +1,23 @@ +name: "Mark or close stale issues and PRs" + +on: + schedule: + - cron: "30 * * * *" + +jobs: + stale: + runs-on: ubuntu-latest + steps: + - uses: actions/stale@v9 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + days-before-stale: 30 + days-before-close: 5 + stale-issue-message: "This issue is stale because it has been open 30 days with no activity. Remove stale label or comment otherwise this will be closed in 5 days." + stale-pr-message: "This PR has been automatically marked as stale because there has been no activity in last 30 days. It will be closed if no further activity occurs. Thank you for your contributions." + close-issue-message: "This issue was closed because it has been stalled for 5 days with no activity." + close-pr-message: "This PR was automatically closed because of being stale." + stale-pr-label: "stale" + stale-issue-label: "stale" + exempt-issue-labels: "bug,enhancement,pinned,security" + exempt-pr-labels: "bug,enhancement,pinned,security" diff --git a/.github/workflows/tagged_release.yml b/.github/workflows/tagged_release.yml index aa5bd46d5..70817cad5 100644 --- a/.github/workflows/tagged_release.yml +++ b/.github/workflows/tagged_release.yml @@ -1,4 +1,4 @@ -name: 'tagged-release' +name: 'Build stable release' on: workflow_dispatch: diff --git a/.github/workflows/test_release.yml b/.github/workflows/test_release.yml index bfd34f80c..8891d6bc0 100644 --- a/.github/workflows/test_release.yml +++ b/.github/workflows/test_release.yml @@ -1,4 +1,4 @@ -name: 'test-release' +name: 'Build test release' on: workflow_dispatch: diff --git a/interface/src/app/settings/ApplicationSettings.tsx b/interface/src/app/settings/ApplicationSettings.tsx index 7cda3cb2b..3359ae477 100644 --- a/interface/src/app/settings/ApplicationSettings.tsx +++ b/interface/src/app/settings/ApplicationSettings.tsx @@ -554,7 +554,7 @@ const ApplicationSettings = () => { =4.8.4" - checksum: 10c0/23fd56a958b332cac00150a652e4c84730df30571bd2faa1ba6d7b511356d1a61656621492bb6c7f15dd6e18847a1408357a0e406671d358115369a17f5bfedd + checksum: 10c0/9806a38adea2db0f6aa217ccc6bc9c391ddba338a9fe3080676d0d50ed806d305bb90e8cef0276e793d28c8a929f400abb184ddd7ff83a416959c0f4d2ce754f languageName: node linkType: hard diff --git a/mock-api/rest_server.ts b/mock-api/rest_server.ts index 55e65d15f..58d50f4e2 100644 --- a/mock-api/rest_server.ts +++ b/mock-api/rest_server.ts @@ -58,6 +58,7 @@ let settings = { eth_power: 15, eth_phy_addr: 0, eth_clock_mode: 1, + led_type: 0, platform: 'ESP32', modbus_enabled: false, modbus_port: 502, @@ -175,7 +176,7 @@ switch (emulate_esp as string) { settings.platform = 'ESP32'; break; - // ESP32S3 + // ESP32 S3 case 'ESP32S3': default: system_status.esp_platform = 'ESP32S3'; @@ -185,7 +186,7 @@ switch (emulate_esp as string) { system_status.psram = true; system_status.psram_size = 8189; system_status.free_psram = 8166; - settings.board_profile = 'S3'; + settings.board_profile = 'S32S3'; settings.platform = 'ESP32S3'; break; } @@ -269,10 +270,10 @@ function updateMask(entity: any, de: any, dd: any) { const old_custom_name = dd.nodes[dd_objIndex].cn; console.log( 'comparing names, old (' + - old_custom_name + - ') with new (' + - new_custom_name + - ')' + old_custom_name + + ') with new (' + + new_custom_name + + ')' ); if (old_custom_name !== new_custom_name) { changed = true; @@ -367,15 +368,15 @@ function check_upgrade(version: string) { const stable_version = version.split(',')[1]; console.log( 'latest dev version: ' + - dev_version + - ', latest stable version: ' + - stable_version + dev_version + + ', latest stable version: ' + + stable_version ); console.log( 'Version upgrade check from version ' + - THIS_VERSION + - ', upgradable: ' + - VERSION_IS_UPGRADEABLE + THIS_VERSION + + ', upgradable: ' + + VERSION_IS_UPGRADEABLE ); data = { emsesp_version: THIS_VERSION, @@ -4864,7 +4865,8 @@ router phy_type: settings.phy_type, eth_power: settings.eth_power, eth_phy_addr: settings.eth_phy_addr, - eth_clock_mode: settings.eth_clock_mode + eth_clock_mode: settings.eth_clock_mode, + led_type: settings.led_type }; if (board_profile == 'S32') { @@ -4878,6 +4880,19 @@ router data.eth_power = 0; data.eth_phy_addr = 0; data.eth_clock_mode = 0; + data.led_type = 0; + } else if (board_profile == 'S32S3') { + // BBQKees Gateway S3 + data.led_gpio = 2; + data.dallas_gpio = 18; + data.rx_gpio = 5; + data.tx_gpio = 17; + data.pbutton_gpio = 0; + data.phy_type = 0; + data.eth_power = 0; + data.eth_phy_addr = 0; + data.eth_clock_mode = 0; + data.led_type = 0; } else if (board_profile == 'E32') { // BBQKees Gateway E32 data.led_gpio = 2; @@ -4889,6 +4904,19 @@ router data.eth_power = 16; data.eth_phy_addr = 1; data.eth_clock_mode = 0; + data.led_type = 0; + } else if (board_profile == 'E32V2') { + // BBQKees Gateway E32 V2 + data.led_gpio = 2; + data.dallas_gpio = 14; + data.rx_gpio = 4; + data.tx_gpio = 5; + data.pbutton_gpio = 34; + data.phy_type = 1; + data.eth_power = 15; + data.eth_phy_addr = 0; + data.eth_clock_mode = 1; + data.led_type = 0; } else if (board_profile == 'MH-ET') { // MH-ET Live D1 Mini data.led_gpio = 2; @@ -4900,6 +4928,7 @@ router data.eth_power = 0; data.eth_phy_addr = 0; data.eth_clock_mode = 0; + data.led_type = 0; } else if (board_profile == 'NODEMCU') { // NodeMCU 32S data.led_gpio = 2; @@ -4911,6 +4940,7 @@ router data.eth_power = 0; data.eth_phy_addr = 0; data.eth_clock_mode = 0; + data.led_type = 0; } else if (board_profile == 'LOLIN') { // Lolin D32 data.led_gpio = 2; @@ -4922,6 +4952,7 @@ router data.eth_power = 0; data.eth_phy_addr = 0; data.eth_clock_mode = 0; + data.led_type = 0; } else if (board_profile == 'OLIMEX') { // Olimex ESP32-EVB (uses U1TXD/U1RXD/BUTTON, no LED or Dallas) data.led_gpio = 0; @@ -4933,6 +4964,7 @@ router data.eth_power = -1; data.eth_phy_addr = 0; data.eth_clock_mode = 0; + data.led_type = 0; } else if (board_profile == 'OLIMEXPOE') { // Olimex ESP32-POE data.led_gpio = 0; @@ -4944,6 +4976,7 @@ router data.eth_power = 12; data.eth_phy_addr = 0; data.eth_clock_mode = 3; + data.led_type = 0; } else if (board_profile == 'C3MINI') { // Lolin C3 mini data.led_gpio = 7; @@ -4955,6 +4988,7 @@ router data.eth_power = 0; data.eth_phy_addr = 0; data.eth_clock_mode = 0; + data.led_type = 0; } else if (board_profile == 'S2MINI') { // Lolin C3 mini data.led_gpio = 15; @@ -4966,6 +5000,7 @@ router data.eth_power = 0; data.eth_phy_addr = 0; data.eth_clock_mode = 0; + data.led_type = 0; } else if (board_profile == 'S3MINI') { // Liligo S3 mini data.led_gpio = 17; @@ -4977,6 +5012,7 @@ router data.eth_power = 0; data.eth_phy_addr = 0; data.eth_clock_mode = 0; + data.led_type = 0; } data.board_profile = diff --git a/src/core/system.cpp b/src/core/system.cpp index e51e8c4d6..441d3ee6f 100644 --- a/src/core/system.cpp +++ b/src/core/system.cpp @@ -1821,7 +1821,7 @@ bool System::command_test(const char * value, const int8_t id) { // takes a board profile and populates a data array with GPIO configurations // returns false if profile is unknown // -// data = led, dallas, rx, tx, button, phy_type, eth_power, eth_phy_addr, eth_clock_mode +// data = led, dallas, rx, tx, button, phy_type, eth_power, eth_phy_addr, eth_clock_mode, led_type // // clock modes: // 0 = RMII clock input to GPIO0