日記/2025-05-01
をテンプレートにして作成
ホーム
検索
最終更新
テスト
リンク
ヘルプ
新規
pukiwiki-official
pukiwiki-dev
ヘルプ
プラグインヘルプ
開始行:
***Dmonitor に強制UNLINKボタンを追加 [#x410039f]
''【 目的 】''
Dmonitor v1.82(最終バージョン)でD-Star レピーターに接続...
(当然ノードが送信中は子機からは送信できず)、RFからの切...
そこでRasPi GPIO ピンを使って切断コマンド(resrpt.sh)を起...
※注記1:初めに下記、&color(Blue){動作確認手順};で動作す...
''【 準備 】''
+以下サイトを参考にDVNODEが動く状態(dmonitorのみ動作すれ...
👉[[ここ:http://192.168.50.19/hcz.html]]
+今回使用したRasPi はRaspberry pi 2。 機種やOSによりGPIO...
作る前に要確認。特にLED点灯が不要な場合はその行を省いてか...
+今回使用したRF Module はDVAP。
+Nextion Display (2.4 inc)を使用したが、使用しない状態で...
+ボタンまたはトグルSW(on/off のみに使用)
''【 プログラム 】'' (2つのshell scripts を作成する)
+/usr/local/bin/resrpt.sh
root 権限で
>#!/bin/bash
killall -s 2 dmonitor
sleep 5
systemctl stop auto_repmon
sleep 1
systemctl restart auto_repmon_light
sleep 1
systemctl restart rpt_conn
<
+/home/pi/unlink2.sh
user のままで
>#!/bin/sh
GPIO=22 #使用するGPIOポート
PUSHTIME=2 #切断&リフレッシュを実行する秒数
## 初期設定
gpio -g mode $GPIO in
gpio -g mode $GPIO down
while true;
do
## ACT LEDの制御準備
echo timer | sudo tee /sys/class/leds/ACT/trigger
echo 100 | sudo tee /sys/class/leds/ACT/delay_off
echo 100 | sudo tee /sys/class/leds/ACT/delay_on
echo none | sudo tee /sys/class/leds/ACT/trigger
## 2秒間押されるまで待つ
cnt=0
while [ $cnt -lt $PUSHTIME ] ; do
echo "$cnt ";
if [ `gpio -g read $GPIO` -eq "1" ] ; then
cnt=`expr $cnt + 1`
[ $cnt -eq 1 ] && echo timer | sudo tee /sys/class/leds/A...
else
[ $cnt -gt 0 ] && echo none | sudo tee /sys/class/leds/AC...
cnt=0
fi
sleep 1
done
## unlink/refreshの実行
sudo /usr/local/bin/resrpt.sh &
echo none | sudo tee /sys/class/leds/ACT/trigger
sleep 5
done
<
LED点灯が不要な場合は
>#!/bin/sh
GPIO=22 #使用するGPIOポート
PUSHTIME=2 #切断&リフレッシュを実行する秒数
## 初期設定
gpio -g mode $GPIO in
gpio -g mode $GPIO down
while true;
do
## 2秒間押されるまで待つ
cnt=0
while [ $cnt -lt $PUSHTIME ] ; do
echo "$cnt ";
if [ `gpio -g read $GPIO` -eq "1" ] ; then
cnt=`expr $cnt + 1`
[ $cnt -eq 1 ]
else
[ $cnt -gt 0 ]
cnt=0
fi
sleep 1
done
## unlink/refreshの実行
sudo /usr/local/bin/resrpt.sh &
sleep 5
done
<
+それぞれ実行権を与える
> $ chmod 755 home/pi/unlink2.sh
<
> $ sudo -s ←root になって
# chmod 755 /usr/local/bin/resrpt.sh
<
+unlink2/shは、下記SWの動作確認を行った後、boot 時に自動...
# nano /etc/rc.local で以下の通り追加する。
>/etc/rc.local
中略
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
/home/pi/unlink2.sh & <-- 追加
exit 0
<
''【 ボタンSW の配線】''
物理的ピン番号15(GPIO22) と、物理的ピン番号1(3.3v) を下...
#ref(gpio_sw.JPG,,60)
''【 動作確認手順 】'' LED点灯無しの場合
TeraTerm でRasPi にSSH でログイン後次ことを実施する。($: ...
+最初、unrink2.sh の機能を確認する。
>$ /home/pi/unlink2.sh リターン
none
0
0
0
0
1 ← SWをONになると数字がアップ(1,2が表示される場合...
none ← ここから元に戻る
0
<
+上記確認出来たら、resrpt.sh の echo “$cnt “; をコメン...
> echo “$cnt “;
⇊
#echo “$cnt “;
<
+/etc/rc.local に登録したらリブート
> # reboot
<
''【参考】''
●[[ボタン長押しでシャットダウンする電源ボタンを作ろう_2:h...
●[[dmonitor & 専用Nextionディスプレイ:http://192.168.50.1...
#clear
#comment
#navi(日記)
終了行:
***Dmonitor に強制UNLINKボタンを追加 [#x410039f]
''【 目的 】''
Dmonitor v1.82(最終バージョン)でD-Star レピーターに接続...
(当然ノードが送信中は子機からは送信できず)、RFからの切...
そこでRasPi GPIO ピンを使って切断コマンド(resrpt.sh)を起...
※注記1:初めに下記、&color(Blue){動作確認手順};で動作す...
''【 準備 】''
+以下サイトを参考にDVNODEが動く状態(dmonitorのみ動作すれ...
👉[[ここ:http://192.168.50.19/hcz.html]]
+今回使用したRasPi はRaspberry pi 2。 機種やOSによりGPIO...
作る前に要確認。特にLED点灯が不要な場合はその行を省いてか...
+今回使用したRF Module はDVAP。
+Nextion Display (2.4 inc)を使用したが、使用しない状態で...
+ボタンまたはトグルSW(on/off のみに使用)
''【 プログラム 】'' (2つのshell scripts を作成する)
+/usr/local/bin/resrpt.sh
root 権限で
>#!/bin/bash
killall -s 2 dmonitor
sleep 5
systemctl stop auto_repmon
sleep 1
systemctl restart auto_repmon_light
sleep 1
systemctl restart rpt_conn
<
+/home/pi/unlink2.sh
user のままで
>#!/bin/sh
GPIO=22 #使用するGPIOポート
PUSHTIME=2 #切断&リフレッシュを実行する秒数
## 初期設定
gpio -g mode $GPIO in
gpio -g mode $GPIO down
while true;
do
## ACT LEDの制御準備
echo timer | sudo tee /sys/class/leds/ACT/trigger
echo 100 | sudo tee /sys/class/leds/ACT/delay_off
echo 100 | sudo tee /sys/class/leds/ACT/delay_on
echo none | sudo tee /sys/class/leds/ACT/trigger
## 2秒間押されるまで待つ
cnt=0
while [ $cnt -lt $PUSHTIME ] ; do
echo "$cnt ";
if [ `gpio -g read $GPIO` -eq "1" ] ; then
cnt=`expr $cnt + 1`
[ $cnt -eq 1 ] && echo timer | sudo tee /sys/class/leds/A...
else
[ $cnt -gt 0 ] && echo none | sudo tee /sys/class/leds/AC...
cnt=0
fi
sleep 1
done
## unlink/refreshの実行
sudo /usr/local/bin/resrpt.sh &
echo none | sudo tee /sys/class/leds/ACT/trigger
sleep 5
done
<
LED点灯が不要な場合は
>#!/bin/sh
GPIO=22 #使用するGPIOポート
PUSHTIME=2 #切断&リフレッシュを実行する秒数
## 初期設定
gpio -g mode $GPIO in
gpio -g mode $GPIO down
while true;
do
## 2秒間押されるまで待つ
cnt=0
while [ $cnt -lt $PUSHTIME ] ; do
echo "$cnt ";
if [ `gpio -g read $GPIO` -eq "1" ] ; then
cnt=`expr $cnt + 1`
[ $cnt -eq 1 ]
else
[ $cnt -gt 0 ]
cnt=0
fi
sleep 1
done
## unlink/refreshの実行
sudo /usr/local/bin/resrpt.sh &
sleep 5
done
<
+それぞれ実行権を与える
> $ chmod 755 home/pi/unlink2.sh
<
> $ sudo -s ←root になって
# chmod 755 /usr/local/bin/resrpt.sh
<
+unlink2/shは、下記SWの動作確認を行った後、boot 時に自動...
# nano /etc/rc.local で以下の通り追加する。
>/etc/rc.local
中略
# Print the IP address
_IP=$(hostname -I) || true
if [ "$_IP" ]; then
printf "My IP address is %s\n" "$_IP"
fi
/home/pi/unlink2.sh & <-- 追加
exit 0
<
''【 ボタンSW の配線】''
物理的ピン番号15(GPIO22) と、物理的ピン番号1(3.3v) を下...
#ref(gpio_sw.JPG,,60)
''【 動作確認手順 】'' LED点灯無しの場合
TeraTerm でRasPi にSSH でログイン後次ことを実施する。($: ...
+最初、unrink2.sh の機能を確認する。
>$ /home/pi/unlink2.sh リターン
none
0
0
0
0
1 ← SWをONになると数字がアップ(1,2が表示される場合...
none ← ここから元に戻る
0
<
+上記確認出来たら、resrpt.sh の echo “$cnt “; をコメン...
> echo “$cnt “;
⇊
#echo “$cnt “;
<
+/etc/rc.local に登録したらリブート
> # reboot
<
''【参考】''
●[[ボタン長押しでシャットダウンする電源ボタンを作ろう_2:h...
●[[dmonitor & 専用Nextionディスプレイ:http://192.168.50.1...
#clear
#comment
#navi(日記)
ページ名: