Summary:
This post describes a first hands-on experiment with theiio_dummy driver in the Linux Industrial I/O subsystem. The tutorial guides the reader through enabling the dummy driver in the kernel configuration, compiling it as a module, installing it inside the virtual machine, loading it with modprobe, and inspecting the resulting entries under /sys/bus/iio/devices. It then shows how to use configfs to create a dummy IIO device and observe how that device appears in sysfs with its associated attributes.
The tutorial also explores the interface exposed by the created dummy device, including example attributes such as raw voltage and acceleration readings, and concludes with a small modification exercise that adds channels for a 3-axis compass. A particularly useful part of the tutorial is the section on the “Busy Device Issue,” which explains why unloading the module can fail when the dummy device created through configfs is still present, and how removing that directory allows the module to be unloaded correctly.
My experience:
Everything went smoothly overall. The only thing I needed to do differently was installmake inside the VM before following the build steps. Aside from that, the process worked as expected.
The section about the Busy Device issue was especially helpful. The other small problems I ran into were just caused by reading mistakes on my side and were not important to the workflow itself.