added my Recipes
This commit is contained in:
91
meta-st/meta-st-openstlinux/recipes-samples/demo/sensors-iks01a2/sensor.sh
Executable file
91
meta-st/meta-st-openstlinux/recipes-samples/demo/sensors-iks01a2/sensor.sh
Executable file
@@ -0,0 +1,91 @@
|
||||
#!/bin/sh
|
||||
|
||||
for d in `ls -d1 /sys/bus/iio/devices/*device*`;
|
||||
do
|
||||
# for hts221: Temperature + Humidity
|
||||
if grep -q hts221 $d/name ;
|
||||
then
|
||||
echo "============================="
|
||||
echo "=== HTS221 ==="
|
||||
echo "=== (temperature) ==="
|
||||
echo "============================="
|
||||
raw=`cat $d/in_temp_raw`
|
||||
offset=`cat $d/in_temp_offset`
|
||||
scale=`cat $d/in_temp_scale`
|
||||
|
||||
printf "Value read: raw %0f\n" $raw
|
||||
printf "Value read: offset %0f\n" $offset
|
||||
printf "Value read: scale %0f\n" $scale
|
||||
|
||||
temperature=`echo "scale=2;$raw*$scale + $offset*$scale" | bc`
|
||||
|
||||
echo "Temperature $temperature"
|
||||
printf "Temperature %.02f\n" $temperature
|
||||
|
||||
echo "============================="
|
||||
echo "=== HTS221 ==="
|
||||
echo "=== (humidity) ==="
|
||||
echo "============================="
|
||||
raw=`cat $d/in_humidityrelative_raw`
|
||||
offset=`cat $d/in_humidityrelative_offset`
|
||||
scale=`cat $d/in_humidityrelative_scale`
|
||||
|
||||
printf "Value read: raw %0f\n" $raw
|
||||
printf "Value read: offset %0f\n" $offset
|
||||
printf "Value read: scale %0f\n" $scale
|
||||
|
||||
humidity=`echo "scale=2;$raw*$scale + $offset*$scale" | bc`
|
||||
|
||||
echo "Humidity $humidity"
|
||||
printf "Humidity %.02f\n" $humidity
|
||||
fi
|
||||
|
||||
# for lsm6dsl: accelerometer
|
||||
if grep -q lsm6dsl_accel $d/name ;
|
||||
then
|
||||
echo "============================="
|
||||
echo "=== LSM6DSL ==="
|
||||
echo "=== (accelerometer) ==="
|
||||
echo "============================="
|
||||
rscale=`cat $d/in_accel_scale`
|
||||
|
||||
xraw=`cat $d/in_accel_x_raw`
|
||||
yraw=`cat $d/in_accel_y_raw`
|
||||
zraw=`cat $d/in_accel_z_raw`
|
||||
|
||||
printf "Value read: X (raw/scale) %d / %.06f \n" $xraw $rscale
|
||||
printf "Value read: Y (raw/scale) %d / %.06f \n" $yraw $rscale
|
||||
printf "Value read: Z (raw/scale) %d / %.06f \n" $zraw $rscale
|
||||
|
||||
factor=`echo "scale=2;256.0 / 9.81" | bc`
|
||||
xval=`echo "scale=2;$xraw*$rscale*$factor" | bc`
|
||||
yval=`echo "scale=2;$yraw*$rscale*$factor" | bc`
|
||||
zval=`echo "scale=2;$zraw*$rscale*$factor" | bc`
|
||||
|
||||
printf "Accelerometer value: [ %.02f, %.02f, %.02f ]\n" $xval $yval $zval
|
||||
fi
|
||||
|
||||
# for lsm6dsl: gyroscope
|
||||
if grep -q lsm6dsl_gyro $d/name ;
|
||||
then
|
||||
echo "============================="
|
||||
echo "=== LSM6DSL ==="
|
||||
echo "=== (gyroscope) ==="
|
||||
echo "============================="
|
||||
rscale=`cat $d/in_anglvel_scale`
|
||||
xraw=`cat $d/in_anglvel_x_raw`
|
||||
yraw=`cat $d/in_anglvel_y_raw`
|
||||
zraw=`cat $d/in_anglvel_z_raw`
|
||||
|
||||
printf "Value read: X (raw/scale) %d / %.06f \n" $xraw $rscale
|
||||
printf "Value read: Y (raw/scale) %d / %.06f \n" $yraw $rscale
|
||||
printf "Value read: Z (raw/scale) %d / %.06f \n" $zraw $rscale
|
||||
|
||||
factor=`echo "scale=2;256.0 / 9.81" | bc`
|
||||
xval=`echo "scale=2;$xraw*$rscale*$factor" | bc`
|
||||
yval=`echo "scale=2;$yraw*$rscale*$factor" | bc`
|
||||
zval=`echo "scale=2;$zraw*$rscale*$factor" | bc`
|
||||
|
||||
printf "Gyroscope value: [ %.02f, %.02f, %.02f ]\n" $xval $yval $zval
|
||||
fi
|
||||
done
|
||||
Reference in New Issue
Block a user