diff --git a/rogue-enemy_iio_buffer_on.sh b/rogue-enemy_iio_buffer_on.sh index 2f71ab5..bc64b9a 100644 --- a/rogue-enemy_iio_buffer_on.sh +++ b/rogue-enemy_iio_buffer_on.sh @@ -11,13 +11,50 @@ fi mount -t configfs none /home/config mkdir -p /home/config/iio/triggers/hrtimer/rogue -cd /sys/bus/iio/devices/iio\:device0 -echo 1 > scan_elements/in_accel_x_en -echo 1 > scan_elements/in_accel_y_en -echo 1 > scan_elements/in_accel_z_en -echo 1 > scan_elements/in_anglvel_x_en -echo 1 > scan_elements/in_anglvel_y_en -echo 1 > scan_elements/in_anglvel_z_en -echo 1 > scan_elements/in_timestamp_en -echo "rogue" > trigger/current_trigger -echo 1 > buffer0/enable \ No newline at end of file +# set sampling frequency for rogue +for i in /sys/bus/iio/devices/* ; do + if [ -d "$i" ]; then + if [ -f "$i/name" ]; then + name=$(cat "$i/name") + if [ "$name" = "rogue" ]; then + echo "800" > "$i/sampling_frequency" + fi + fi + fi +done + +# set the gyroscope +for i in /sys/bus/iio/devices/* ; do + if [ -d "$i" ]; then + if [ -f "$i/name" ]; then + name=$(cat "$i/name") + if [ "$name" = "bmi323-imu" ]; then + + # change chip sampling frequency + echo "800.000000" > "$i/in_accel_sampling_frequency" + echo "800.000000" > "$i/in_anglvel_sampling_frequency" + + # enable accel data acquisition + echo 1 > "$i/scan_elements/in_accel_x_en" + echo 1 > "$i/scan_elements/in_accel_y_en" + echo 1 > "$i/scan_elements/in_accel_z_en" + + # enable gyroscope data acquisition + echo 1 > "$i/scan_elements/in_anglvel_x_en" + echo 1 > "$i/scan_elements/in_anglvel_y_en" + echo 1 > "$i/scan_elements/in_anglvel_z_en" + + # enable timestamp reporting + echo 1 > "$i/scan_elements/in_timestamp_en" + + # bind rogue hrtimer to to the iio device + echo "rogue" > "$i/trigger/current_trigger" + + # enable the buffer + echo 1 > "$i/buffer0/enable" + + echo "bmi323-imu buffer started" + fi + fi + fi +done