Skip to content

Day36 - IIO Triggered Buffer

Objective

  • Enable IIO buffer
  • Bind trigger
  • Stream data from sensor
  • Validate frame structure

Step 1 - Verify device

ls /sys/bus/iio/devices/
cat /sys/bus/iio/devices/iio:device0/name

Step 2 - Enable scan elements

cd /sys/bus/iio/devices/iio:device0/scan_elements

echo 1 > in_voltage0_en
echo 1 > in_voltage1_en
echo 1 > in_voltage2_en

Step 3 - Find trigger

ls /sys/bus/iio/devices/trigger*
cat /sys/bus/iio/devices/triggerX/name

Step 4 - Bind trigger

echo myadc_iio-dev0 > ../trigger/current_trigger

Step 5 - Configure buffer

echo 16 > ../buffer/length

Step 6 - Enable buffer

echo 1 > ../buffer/enable

Step 7 - Read samples

dd if=/dev/iio:device0 bs=6 count=10 | hexdump -C

Expected

  • Data increments steadily
  • Frame size = 6 bytes
  • Channels aligned correctly

Step 8 - Cleanup

echo 0 > ../buffer/enable
echo "" > ../trigger/current_trigger

Result

  • Verified trigger-driven streaming
  • Confirmed correct scan layout
  • Validated end-to-end data path