pounder_test/hitl/run.sh

38 lines
1.2 KiB
Bash
Executable File

#!/bin/bash
# Title:
# Stabilizer hardware-in-the-loop (HITL) test script.
#
# Description:
# This shell file is executed by the hardware runner in Quartiq's office to exercise the various
# hardware aspects of Stabilizer.
# Enable shell operating mode flags.
set -eux
# Set up python for testing
python3 -m venv --system-site-packages py
. py/bin/activate
python3 -m pip install -r requirements.txt
probe-run --chip STM32H743ZITx target/thumbv7em-none-eabihf/release/dual-iir &
# Sleep to allow flashing, booting, DHCP, MQTT
sleep 30
# Test pinging Stabilizer. This exercises that:
# * DHCP is functional and an IP has been acquired
# * Stabilizer's network is functioning as intended
# * The stabilizer application is operational
ping -c 5 -w 20 stabilizer-hitl
# Test the MQTT interface.
python3 miniconf.py dt/sinara/dual-iir/04-91-62-d9-7e-5f afe/0='"G2"'
python3 miniconf.py dt/sinara/dual-iir/04-91-62-d9-7e-5f afe/0='"G1"' iir_ch/0/0=\
'{"y_min": -32767, "y_max": 32767, "y_offset": 0, "ba": [1.0, 0, 0, 0, 0]}'
# Probe-run appears to sporadically fail. In that case, the job is no longer active and there's no
# background process to kill.
kill $(jobs -p) || true
wait || true