diff options
| author | Ha Thach <[email protected]> | 2026-06-18 21:51:38 +0700 |
|---|---|---|
| committer | GitHub <[email protected]> | 2026-06-18 21:51:38 +0700 |
| commit | 3f3fbbb623660c48ae1df58ff1b51d81414f33da (patch) | |
| tree | ab0a3d5cf94709f5517ed0db602a9b02fbf0648d | |
| parent | 17b38ffc2ad70e1c722df5b3dc5a8c49f7addefc (diff) | |
| parent | d9dc891ee2aaedb733da4c0f2fee5a68be001ee7 (diff) | |
Merge pull request #3713 from hathach/claude/hil-audio-require-alsa
test/hil: fail audio test on missing alsa-utils instead of skipping
| -rw-r--r-- | examples/device/audio_test_freertos/sdkconfig.defaults | 3 | ||||
| -rwxr-xr-x | test/hil/hil_test.py | 9 | ||||
| -rw-r--r-- | test/hil/tinyusb.json | 3 |
3 files changed, 7 insertions, 8 deletions
diff --git a/examples/device/audio_test_freertos/sdkconfig.defaults b/examples/device/audio_test_freertos/sdkconfig.defaults index 83871619e..6e7a1cf52 100644 --- a/examples/device/audio_test_freertos/sdkconfig.defaults +++ b/examples/device/audio_test_freertos/sdkconfig.defaults @@ -1,3 +1,6 @@ CONFIG_IDF_CMAKE=y +# 1000 Hz tick: the UAC iso IN endpoint must be serviced every 1 ms frame; +# ESP-IDF's default 100 Hz starves the audio task -> host capture fails (arecord EIO). +CONFIG_FREERTOS_HZ=1000 CONFIG_FREERTOS_WATCHPOINT_END_OF_STACK=y CONFIG_FREERTOS_SUPPORT_STATIC_ALLOCATION=y diff --git a/test/hil/hil_test.py b/test/hil/hil_test.py index 8ae9ee0dc..055618e3c 100755 --- a/test/hil/hil_test.py +++ b/test/hil/hil_test.py @@ -22,7 +22,7 @@ # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN # THE SOFTWARE. -# Host setup: +# Host setup (required: a missing tool fails its test rather than skipping it): # - System packages: sudo apt install mtools libmtp9 alsa-utils iperf # mtools - read_disk_file (device/cdc_msc, device/msc_dual_lun) # libmtp9 - pymtp ctypes load (device/mtp); Debian 13 uses libmtp9t64 @@ -51,7 +51,6 @@ import serial import subprocess import json import glob -import shutil from multiprocessing import Pool, Lock from multiprocessing import TimeoutError as MpTimeoutError import hashlib @@ -1380,10 +1379,6 @@ def test_device_audio_test_freertos(board): if os.name == 'nt': return 'skipped' - arecord = shutil.which('arecord') - if arecord is None: - return 'skipped' - pcm = None timeout = ENUM_TIMEOUT while timeout > 0: @@ -1397,7 +1392,7 @@ def test_device_audio_test_freertos(board): raw_path = f'/tmp/tinyusb_audio_{uid}.raw' cmd = [ - arecord, + 'arecord', '-D', pcm, '-q', '-f', 'S16_LE', diff --git a/test/hil/tinyusb.json b/test/hil/tinyusb.json index 41d94bc00..a534f2601 100644 --- a/test/hil/tinyusb.json +++ b/test/hil/tinyusb.json @@ -132,6 +132,7 @@ "device": true, "host": false, "dual": true, + "skip": ["device/audio_test_freertos"], "dev_attached": [ { "vid_pid": "067b_2303", @@ -139,7 +140,7 @@ "is_cdc": true } ], - "comment": "pl23x" + "comment": "pl23x; audio_test_freertos skipped: samd51 iso-IN capture fails (arecord EIO)" }, "flasher": { "name": "jlink", |
