30 lines
608 B
Bash
Executable File
30 lines
608 B
Bash
Executable File
#!/bin/bash
|
|
|
|
SERIAL_PORT="/dev/ttyACM0"
|
|
BAUD_RATE="115200"
|
|
|
|
{
|
|
stty -F $SERIAL_PORT $BAUD_RATE
|
|
COUNT=0
|
|
PREVIOUS_TIME=""
|
|
|
|
while IFS= read -r LINE; do
|
|
CURRENT_TIME=$(date +%s.%N)
|
|
|
|
# 5 msgs
|
|
if [ $COUNT -lt 5 ]; then
|
|
echo "msg $COUNT: $LINE"
|
|
|
|
if [[ -n $PREVIOUS_TIME ]]; then
|
|
INTERVAL=$(echo "$CURRENT_TIME - $PREVIOUS_TIME" | bc)
|
|
echo "interval: ${INTERVAL}s"
|
|
fi
|
|
|
|
PREVIOUS_TIME=$CURRENT_TIME
|
|
COUNT=$((COUNT + 1))
|
|
else
|
|
break
|
|
fi
|
|
done
|
|
} <$SERIAL_PORT
|