Гайд Сигнализация для велосипеда из старого андроида

Журналист

Журналист
Статус
online
Регистрация
28.09.2022
Сообщения
1,129
Репутация
997
photo_2025-06-08_23-10-07.jpg

В свое время на рынке не увидел ни одного решения велосигнализаций чтобы имелась обратная связь до брелка. А сделать такую на arduino все ни как не дойдут руки.
Поэтому сделал пока решение на скорую руку. Все что нужно это старый ненужный Android телефон и терминал termux.
Код:
#!/bin/bash

WAIT=30
UPDATE=100
THRESOLD=990
NUMBER=89087654321

sleep $WAIT
termux-sensor -c
termux-sensor -s ACCELEROMETER -d $UPDATE | fgrep --line-buffered '.' | stdbuf -i0 -o0 -e0 paste - - - | stdbuf -i0 -o0 -e0 tr -d ',' | python -c 'while True: a,b,c=input().split(); print(int((abs(float(a))**2+abs(float(b))**2+abs(float(c))**2)**0.5*100))' 2> /dev/null | while read accel
do echo $accel
  if [ $accel -gt $THRESOLD ]; then
    termux-telephony-call $NUMBER
    exit
  fi
done
Этот замечательный скрипт превратит любой телефон в сигнализацию. Он непрерывно читает датчик акселерометра телефона и вычисляет суперпозицию ускорения. И как только она становится выше 1G (990), на ваш телефон поступает звонок с сигналки (ну или смс).
Можно еще добавить трансляцию геопозиции через termux-location.

Конечно решение на arduino было бы куда более гибкое, но все же требовательное при изготовлении. А если времени и желания нет - то termux по-моему идеальное решение​