Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Feat/issue template #4

Merged
merged 112 commits into from
Sep 9, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
112 commits
Select commit Hold shift + click to select a range
a3a3ef1
Add self-testing mode for `TWAI` peripheral. (#1929)
playfulFence Aug 12, 2024
23f76b0
DMA: Don't require implementors of Read/WriteBuffer to be Sealed (#1921)
liebman Aug 13, 2024
64a7d49
Reset peripherals on driver construction (where missing) (#1893)
JurajSadel Aug 13, 2024
a6e1406
Deny missing docs at the package level, adding exceptions for relevan…
jessebraham Aug 13, 2024
352879a
Fix an infinite loop in interrupt executors (#1936)
bugadani Aug 13, 2024
c53ba38
Fix `i2c` + get rid of unused constants/enums (#1940)
playfulFence Aug 13, 2024
6b6e628
Slightly clean up embassy HIL tests (#1937)
bugadani Aug 13, 2024
1173aac
Implemented queue_msg_waiting. (#1925)
Frostie314159 Aug 14, 2024
c83d1de
Update to latest release (`0.6.0`) for `embassy-executor` in `esp-emb…
Sycrosity Aug 14, 2024
945f8b3
ESP32C6: Make `ADC` usable after `TRNG` deinitialization (#1945)
playfulFence Aug 14, 2024
460eaa2
Adding `TWAI` HIL test (#1946)
playfulFence Aug 14, 2024
9e87792
Update probe-rs, prebuild xtask for HIL tests (#1939)
bugadani Aug 14, 2024
f1ec4a2
Removing raw addresses manipulations - part 3 (#1892)
playfulFence Aug 14, 2024
361a6c5
make contribution docs more visible (#1947)
MabezDev Aug 15, 2024
a10f86d
Clean up i2s_async test, add option to repeat (#1951)
bugadani Aug 15, 2024
6127f5d
Further clean up timers/executors test (#1953)
bugadani Aug 16, 2024
f6e69b0
Fix GPIO Touch pin I/O (#1956)
ProfFan Aug 16, 2024
eb1b295
Do not reset `UsbSerialJtag` peripheral (#1961)
bugadani Aug 16, 2024
6e706c5
Improve SYSTIMER API (#1871)
Dominaezzz Aug 16, 2024
f95ab0d
Simplify initialization APIs (#1957)
bugadani Aug 16, 2024
59728c5
Some xtask/metadata cleanups (#1965)
bugadani Aug 19, 2024
d1acacb
Implement Sniffer API (#1935)
Frostie314159 Aug 19, 2024
e708dbc
Add more SPI DMA (full-duplex) HIL tests (blocking and async) (#1952)
JurajSadel Aug 19, 2024
42bbdae
Add basic HIL test for GPIO that can be configured as pin for (#1963)
JurajSadel Aug 19, 2024
6a38053
Patch typo in debug assist register name and used patched esp-pacs (#…
JurajSadel Aug 19, 2024
ec13087
Disable RTT polling in HIL tests by default (#1960)
bugadani Aug 19, 2024
70491b9
Refactor SHA to use trait. Implement Digest traits for SHA (#1908)
AnthonyGrondin Aug 19, 2024
05582d3
Fix 1GB elfs (#1962)
bugadani Aug 19, 2024
41f9925
[3/3] DMA Move API: Introduce DMA buffer objects (#1856)
Dominaezzz Aug 20, 2024
686037b
Run HIL tests as part of PR checks (#1959)
bugadani Aug 20, 2024
a33ebe1
Remove `free(self)` in HMAC which goes against esp-hal API guidelines…
MabezDev Aug 20, 2024
7dfaca4
correct changelog sections (#1974)
MabezDev Aug 21, 2024
dc6c53e
Remove redundant WithDmaSpi traits (#1975)
Dominaezzz Aug 21, 2024
69cf454
Fix S2 systimers (#1979)
bugadani Aug 21, 2024
f829c8f
Fix C2 delays (#1981)
bugadani Aug 21, 2024
19db509
Get rid of `missing docs` in a number of modules (#1967)
playfulFence Aug 23, 2024
d610ee8
Add tests to ensure that we don't reset current_time drivers (#1978)
MabezDev Aug 23, 2024
0e333f7
tell cargo about all our custom cfgs (#1988)
MabezDev Aug 23, 2024
b4ccb35
HIL: Multiple featuresets & conditionally enable generic-queue featur…
bugadani Aug 26, 2024
5f0dc14
parl_io: use ReadBuffer/WriteBuffer for async DMA (#1996)
liebman Aug 26, 2024
341db16
Use uhubctl to disable and enable usb ports (#1997)
bugadani Aug 26, 2024
d0f98b6
Remove files after test (#1993)
bugadani Aug 26, 2024
e169731
Refactor SPI tests & re-enable S3 and some S2 (#1990)
bugadani Aug 26, 2024
a41bc4c
gpio: Make AnyPin, AnyInputOnlyPin, DummyPin available from gpio modu…
plaes Aug 26, 2024
1003ce0
Clean up SHA, RSA, mandate `#[must_use]` on Futures (#2000)
bugadani Aug 27, 2024
8aa1a88
Prefer `cfg_if` (#2003)
bugadani Aug 27, 2024
65c5dc1
SPI DMA: use `State` for both blocking and async operations (#1985)
MabezDev Aug 27, 2024
5dcde78
Re-add feature gate for software_interrupt3 (#2011)
bugadani Aug 27, 2024
fbee4e5
Fix (#2013)
bjoernQ Aug 28, 2024
c7a7760
Implement timer conversion for some arrays (#2012)
bugadani Aug 28, 2024
6abbc72
Test and fix async RSA (#2002)
bugadani Aug 28, 2024
16abd3d
Only reserve the interrupt when executors are needed (#2014)
bugadani Aug 28, 2024
61bb240
forward spi methods to SpiDmaBus (#2016)
MabezDev Aug 28, 2024
84a0600
Fix defmt compatibility (#2017)
bugadani Aug 28, 2024
6fb636b
Remove unneeded logs (#2022)
MabezDev Aug 28, 2024
99c238d
HIL: Don't skip cleanup (#2024)
bugadani Aug 28, 2024
bac6bfd
Use newly published versions of all PACs in `esp-hal` (#2025)
jessebraham Aug 29, 2024
5917275
Version 0.20.0 (#2038)
jessebraham Aug 29, 2024
28b5cd0
Fix before_snippet failing in release (#2040)
bugadani Aug 30, 2024
aacc001
Prepare v0.20.1 release (#2046)
MabezDev Aug 30, 2024
897c92e
Try to be more helpful (#2044)
bugadani Aug 30, 2024
533288d
Begin next release cycle (#2039)
jessebraham Aug 30, 2024
f9ab55c
fix: Fix nightly errors (#1934)
SergioGasquez Aug 30, 2024
fce510f
Disable object's unnecessary features in proc macro that loads LP cod…
bugadani Aug 30, 2024
8e6411b
Random cleanups in non-checked packages (#2034)
bugadani Aug 30, 2024
2dc285a
QSPI tests (#2015)
bjoernQ Sep 2, 2024
c5e342a
Clean up gigantic GPIO eyesore (#2048)
bugadani Sep 2, 2024
44567f6
Save/restore coprocessor state on stack (#2057)
bugadani Sep 2, 2024
6b4079b
release prep [email protected] (#2060)
MabezDev Sep 2, 2024
11f90b9
Protect SYSTIMER/TIMG shared registers (#2051)
Dominaezzz Sep 2, 2024
b620e35
automatically apply status:needs-attention to new esp-hal issues (#2030)
MabezDev Sep 2, 2024
d60bafb
Improve CP0-disabled error message (#2061)
bjoernQ Sep 2, 2024
447411f
Rework hal initialization (#1970)
bugadani Sep 2, 2024
5802227
Fix hil-test xtask instruction (#2062)
bugadani Sep 2, 2024
671003a
[esp-metadata] Make clap dependency optional (#2055)
GnomedDev Sep 2, 2024
c21287a
Provide ehal impls for DummyPin (#2019)
bugadani Sep 2, 2024
08d406e
storage: Clean up ROM function declarations (#2058)
bugadani Sep 2, 2024
9465244
Fix various SPI/DMA issues (#2065)
bugadani Sep 3, 2024
5420ce0
WPA2 ENTERPRISE (#2004)
bjoernQ Sep 3, 2024
9c3b171
Bump to esp-wifi 0.9.0 (#2066)
bjoernQ Sep 3, 2024
647e34f
Remove NoPinType (#2068)
bugadani Sep 3, 2024
0cf7abf
Make esp-wifi build on stable, again. Bump to 0.9.1 (#2067)
bjoernQ Sep 3, 2024
49e14b7
Remove lazy_static in favor of OnceLock (#2063)
GnomedDev Sep 3, 2024
b7b916f
Remove most trait implementation features from `esp-hal` (#2070)
jessebraham Sep 4, 2024
9bec6a1
Adding `I2C` HIL test (#2023)
playfulFence Sep 4, 2024
7688504
Remove Gpio type aliasses (#2073)
bugadani Sep 4, 2024
99bf346
Remove the need to manually pass clocks around (#1999)
bugadani Sep 4, 2024
39109a4
Remove gpio dispatch macro-defining proc macro (#2069)
bugadani Sep 4, 2024
e898e89
Remove AnyInputOnlyPin (#2071)
bugadani Sep 4, 2024
fb69411
Accept ErasedPin in AnyPin (#2072)
bugadani Sep 4, 2024
80c0a81
fix issue handler, don't rebuild on main the merge queue checks this …
MabezDev Sep 4, 2024
42a0417
Fix nightly warnings (#2082)
bugadani Sep 5, 2024
5370afb
Build examples in debug mode (#2078)
bugadani Sep 5, 2024
b6aceb1
Improve SHA driver API (#2049)
Dominaezzz Sep 5, 2024
4d9ea52
[esp-hal-procmacros] Update to proc-macro-error2 (#2090)
GnomedDev Sep 5, 2024
a2af2ac
lcd_cam: fix wrong buffer length used if 16bit and len<=8192 (#2085)
liebman Sep 5, 2024
4f97bef
Implement sleep and wakeup functionalities for ESP32C2 #1920 (#1922)
M4tsuri Sep 5, 2024
a5ab739
i2c: fix embedded-hal transactions (#2028)
liebman Sep 5, 2024
f11c18a
Optionally type-erased GPIO drivers (#2075)
bugadani Sep 5, 2024
70126c8
Rename `esp_hal::time::current_time` to `esp_hal::time::now` (#2091)
MabezDev Sep 5, 2024
fba475e
Add missing #[doc(hidden)] in xtensa-lx-rt-proc-macros (#2097)
AnthonyGrondin Sep 6, 2024
17daa46
Enable ESP32 HIL (#1977)
JurajSadel Sep 6, 2024
492e35a
esp-wifi: other crates also provide `strchr` (littlefs2-sys) (#2096)
liebman Sep 6, 2024
b5f0246
Reordered RX-TX pairs to be consistent (#2074)
SergioGasquez Sep 6, 2024
d6813a4
Random additional GPIO cleanups, implement Peripheral for drivers (#2…
bugadani Sep 6, 2024
598212a
Make additional memory available as `dram2_uninit` (#2079)
bjoernQ Sep 6, 2024
e6da896
Update esp-println version in usage section (#2100)
Szybet Sep 6, 2024
93f1012
Add integration with bt-hci crate (#1971)
lulf Sep 6, 2024
a3f7340
ensure that clock init happens after rtc domain is initialized (#2104)
MabezDev Sep 6, 2024
b3d2aad
Prepare esp-backtrace 0.14.1 (#2107)
bjoernQ Sep 6, 2024
d71434a
esp-wifi uses global allocator, esp-alloc supports multiple regions (…
bjoernQ Sep 6, 2024
de9d55f
feat: Add issue templates
SergioGasquez Sep 9, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
33 changes: 33 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ["bug", "status:needs-attention"]
assignees: ''

---

## Bug description

<!-- A clear and concise description of what the bug is. -->

- Would you like to work on a fix? [y/n]

## To Reproduce

<!-- Steps to reproduce the behavior. -->
1. ...
2. ...

<!-- Feel free to share the project where the bug can be reproduced. -->

<!-- Make sure you are able to reproduce the bug in the `main` branch, too. -->

## Expected behavior

<!-- A clear and concise description of what you expected to happen. Attach screenshots if needed. -->

## Environment

- Target device: [e.g. ESP32-S3] <!-- Use `espflash board-info` to get the target device iformation. -->
- Crate name and version: [e.g. esp-hal 0.20.0]
8 changes: 8 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
blank_issues_enabled: true
contact_links:
- name: Ask a question (Matrix Channel)
url: https://github.com/esp-rs/esp-hal/discussions/new
about: Ask questions in our Matrix channel.
- name: Ask a question (GitHub Discussions)
url: https://github.com/esp-rs/esp-hal/discussions/new
about: Ask questions and discuss via GitHub Discussions.
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ["enhancement", "status:needs-attention"]
assignees: ''

---

## Motivations

<!--
If your feature request is related to a problem, please describe it.
-->

- Would you like to implement this feature? [y/n]

## Solution

<!-- Describe the solution you'd like. -->

## Alternatives

<!-- Describe any alternative solutions or features you've considered. -->

## Additional context

<!-- Add any other context or screenshots about the feature request here. -->
5 changes: 3 additions & 2 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,11 @@ To help us review it efficiently, please ensure you've gone through the followin
- [ ] I have updated existing examples or added new ones (if applicable).
- [ ] I have used `cargo xtask fmt-packages` command to ensure that all changed code is formatted correctly.
- [ ] My changes were added to the [`CHANGELOG.md`](https://github.com/esp-rs/esp-hal/blob/main/esp-hal/CHANGELOG.md) in the **_proper_** section.
- [ ] My changes are in accordance to the [esp-rs API guidelines](https://github.com/esp-rs/esp-hal/blob/main/API-GUIDELINES.md)
- [ ] I have added necessary changes to user code to the [Migration Guide](https://github.com/esp-rs/esp-hal/blob/main/esp-hal/MIGRATING-0.21.md).
- [ ] My changes are in accordance to the [esp-rs API guidelines](https://github.com/esp-rs/esp-hal/blob/main/documentation/API-GUIDELINES.md)

#### Extra:
- [ ] I have read the [CONTRIBUTING.md guide](https://github.com/esp-rs/esp-hal/blob/main/CONTRIBUTING.md) and followed its instructions.
- [ ] I have read the [CONTRIBUTING.md guide](https://github.com/esp-rs/esp-hal/blob/main/documentation/CONTRIBUTING.md) and followed its instructions.

### Pull Request Details 📖

Expand Down
4 changes: 3 additions & 1 deletion .github/actions/check-esp-hal/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,5 +57,7 @@ runs:
--target=${{ inputs.target }} \
esp-hal
- name: Build (examples)
env:
CI: 1
shell: bash
run: cargo +${{ inputs.toolchain }} xtask build-examples esp-hal ${{ inputs.device }}
run: cargo +${{ inputs.toolchain }} xtask build-examples esp-hal ${{ inputs.device }} --debug
2 changes: 2 additions & 0 deletions .github/workflows/changelog.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,8 @@ jobs:
- 'esp-println/**'
esp-riscv-rt:
- 'esp-riscv-rt/**'
xtensa-lx-rt:
- 'xtensa-lx-rt/**'
esp-storage:
- 'esp-storage/**'
esp-wifi:
Expand Down
63 changes: 16 additions & 47 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,14 @@ on:
push:
branches-ignore:
- "gh-readonly-queue/**"
- "main"
merge_group:
workflow_dispatch:

env:
CARGO_TERM_COLOR: always
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
MSRV: "1.76.0"
MSRV: "1.77.0"
RUSTDOCFLAGS: -Dwarnings

# Cancel any currently running workflows from the same PR, branch, or
Expand Down Expand Up @@ -133,13 +134,26 @@ jobs:
cargo xtask build-package --features=esp32c6,ci --target=riscv32imac-unknown-none-elf esp-hal
cargo xtask build-package --features=esp32h2,ci --target=riscv32imac-unknown-none-elf esp-hal

# Verify the MSRV for all Xtensa chips:
- name: msrv RISCV (esp-wifi)
run: |
cargo xtask build-package --features=esp32c2,wifi,ble,async --target=riscv32imc-unknown-none-elf esp-wifi
cargo xtask build-package --features=esp32c3,wifi,ble,async --target=riscv32imc-unknown-none-elf esp-wifi
cargo xtask build-package --features=esp32c6,wifi,ble,async --target=riscv32imac-unknown-none-elf esp-wifi
cargo xtask build-package --features=esp32h2,ble,async --target=riscv32imac-unknown-none-elf esp-wifi

# Verify the MSRV for all Xtensa chips:
- name: msrv Xtensa (esp-hal)
run: |
cargo xtask build-package --toolchain=esp --features=esp32,ci --target=xtensa-esp32-none-elf esp-hal
cargo xtask build-package --toolchain=esp --features=esp32s2,ci --target=xtensa-esp32s2-none-elf esp-hal
cargo xtask build-package --toolchain=esp --features=esp32s3,ci --target=xtensa-esp32s3-none-elf esp-hal

- name: msrv Xtensa (esp-wifi)
run: |
cargo xtask build-package --toolchain=esp --features=esp32,wifi,ble,async --target=xtensa-esp32-none-elf esp-wifi
cargo xtask build-package --toolchain=esp --features=esp32s2,wifi,async --target=xtensa-esp32s2-none-elf esp-wifi
cargo xtask build-package --toolchain=esp --features=esp32s3,wifi,ble,async --target=xtensa-esp32s3-none-elf esp-wifi

- name: msrv (esp-lp-hal)
run: |
cargo xtask build-package --features=esp32c6 --target=riscv32imac-unknown-none-elf esp-lp-hal
Expand All @@ -164,48 +178,3 @@ jobs:

# Check the formatting of all packages:
- run: cargo xtask fmt-packages --check

# --------------------------------------------------------------------------
# Tests

hil:
name: HIL Test | ${{ matrix.target.soc }}
runs-on: ubuntu-latest

strategy:
fail-fast: false
matrix:
target:
# RISC-V devices:
- soc: esp32c2
rust-target: riscv32imc-unknown-none-elf
- soc: esp32c3
rust-target: riscv32imc-unknown-none-elf
- soc: esp32c6
rust-target: riscv32imac-unknown-none-elf
- soc: esp32h2
rust-target: riscv32imac-unknown-none-elf
# Xtensa devices:
- soc: esp32
- soc: esp32s2
- soc: esp32s3

steps:
- uses: actions/checkout@v4

# Install the Rust toolchain for RISC-V devices:
- if: ${{ !contains(fromJson('["esp32", "esp32s2", "esp32s3"]'), matrix.target.soc) }}
uses: dtolnay/rust-toolchain@v1
with:
target: ${{ matrix.target.rust-target }}
toolchain: stable
components: rust-src
# Install the Rust toolchain for Xtensa devices:
- if: contains(fromJson('["esp32", "esp32s2", "esp32s3"]'), matrix.target.soc)
uses: esp-rs/[email protected]
with:
buildtargets: ${{ matrix.target.soc }}
ldproxy: false

- uses: Swatinem/rust-cache@v2
- run: cargo xtask build-tests ${{ matrix.target.soc }}
129 changes: 105 additions & 24 deletions .github/workflows/hil.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
name: HIL

on:
pull_request:
types: [opened, synchronize, reopened, ready_for_review]
merge_group:
workflow_dispatch:
inputs:
Expand All @@ -13,13 +15,61 @@ on:
required: true
default: "main"

# Cancel any currently running workflows from the same PR, branch, or
# tag when a new workflow is triggered.
#
# https://stackoverflow.com/a/66336834
concurrency:
cancel-in-progress: true
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}

env:
CARGO_TERM_COLOR: always
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

jobs:
build-xtasks:
name: Build xtasks | ${{ matrix.host.arch }}
runs-on: ubuntu-latest

strategy:
fail-fast: false
matrix:
host:
- arch: armv7
rust-target: armv7-unknown-linux-gnueabihf
- arch: aarch64
rust-target: aarch64-unknown-linux-gnu

steps:
- uses: actions/checkout@v4
if: github.event_name != 'workflow_dispatch'
- uses: actions/checkout@v4
if: github.event_name == 'workflow_dispatch'
with:
repository: ${{ github.event.inputs.repository }}
ref: ${{ github.event.inputs.branch }}

- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@v1
with:
toolchain: stable
components: rust-src

- name: Install cross
run: cargo install cross

- name: Build xtasks
run: cross build --release --target ${{ matrix.host.rust-target }} -p xtask

- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: xtask-${{ matrix.host.arch }}
path: target/${{ matrix.host.rust-target }}/release/xtask

build-tests:
name: HIL Test | ${{ matrix.target.soc }}
name: Build HIL Tests | ${{ matrix.target.soc }}
runs-on: ubuntu-latest

strategy:
Expand All @@ -36,6 +86,8 @@ jobs:
- soc: esp32h2
rust-target: riscv32imac-unknown-none-elf
# # Xtensa devices:
- soc: esp32
rust-target: xtensa-esp32-none-elf
- soc: esp32s2
rust-target: xtensa-esp32s2-none-elf
- soc: esp32s3
Expand Down Expand Up @@ -92,8 +144,8 @@ jobs:
overwrite: true

hil:
name: HIL Test | ${{ matrix.target.soc }}
needs: build-tests
name: Run HIL Tests | ${{ matrix.target.soc }}
needs: [build-tests, build-xtasks]
runs-on:
labels: [self-hosted, "${{ matrix.target.runner }}"]
strategy:
Expand All @@ -103,46 +155,75 @@ jobs:
# RISC-V devices:
- soc: esp32c2
runner: esp32c2-jtag
usb: USB2
host: aarch64
hubs: "1 3"
- soc: esp32c3
runner: esp32c3-usb
usb: ACM0
host: armv7
hubs: "1-1"
- soc: esp32c6
runner: esp32c6-usb
usb: ACM0
host: armv7
hubs: "1-1"
- soc: esp32h2
runner: esp32h2-usb
usb: USB0
host: armv7
hubs: "1-1"
# Xtensa devices:
- soc: esp32
runner: esp32-jtag
host: aarch64
hubs: "1 3"
- soc: esp32s2
runner: esp32s2-jtag
usb: USB1
host: armv7
hubs: "1-1"
- soc: esp32s3
runner: esp32s3-usb
usb: USB0
host: armv7
hubs: "1-1"
steps:
- uses: actions/checkout@v4
if: github.event_name != 'workflow_dispatch'
- uses: actions/checkout@v4
if: github.event_name == 'workflow_dispatch'
with:
repository: ${{ github.event.inputs.repository }}
ref: ${{ github.event.inputs.branch }}

- uses: actions/download-artifact@v4
with:
name: tests-${{ matrix.target.soc }}
path: tests-${{ matrix.target.soc }}

- uses: actions/download-artifact@v4
with:
name: xtask-${{ matrix.target.host }}

- name: Cycle USB ports
run: |
export PATH=$PATH:/home/espressif/.cargo/bin
for i in {1..10}; do
# Disable all used hubs
for hub in ${{ matrix.target.hubs }}; do
sudo uhubctl -a off -l $hub
done

sleep 0.5

# Enable all used hubs
for hub in ${{ matrix.target.hubs }}; do
sudo uhubctl -a on -l $hub
done

sleep 0.5

if probe-rs list | grep -q "\[0\]:"; then
break
fi
done

- name: Run Tests
id: run-tests
run: |
export PATH=$PATH:/home/espressif/.cargo/bin
cargo xtask run-elfs ${{ matrix.target.soc }} tests-${{ matrix.target.soc }}
chmod +x xtask
./xtask run-elfs ${{ matrix.target.soc }} tests-${{ matrix.target.soc }}

- name: Erase Flash on Failure
if: ${{ failure() && steps.run-tests.conclusion == 'failure' }}
env:
ESPFLASH_PORT: /dev/tty${{ matrix.target.usb }}
- name: Clean up
if: always()
run: |
export PATH=$PATH:/home/espressif/.cargo/bin
espflash erase-flash
rm -rf tests-${{ matrix.target.soc }}
rm -f xtask
2 changes: 1 addition & 1 deletion .github/workflows/issue_handler.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,4 +13,4 @@ jobs:
- uses: actions/[email protected]
with:
project-url: https://github.com/orgs/esp-rs/projects/2
github-token: ${{ secrets.PAT }}
github-token: ${{ secrets.PAT }}
Loading
Loading