bluetooth can be found e_player can run
This commit is contained in:
parent
356d026942
commit
16ee54451d
@ -9,94 +9,105 @@ HCIATTACH_ARGS="-s 1500000 ${UART_DEV} any 1500000 flow nosleep"
|
||||
HCI_TOOL=/usr/bin/bt-hci-tool
|
||||
BTGATT_BIN=/usr/bin/btgatt-server
|
||||
BTGATT_ARGS="-i ${HCI_DEV} -s low -t public"
|
||||
BT_LOCAL_NAME="DSL-ETAG"
|
||||
BLUETOOTHD_BIN=/usr/libexec/bluetooth/bluetoothd
|
||||
BT_LOCAL_NAME="AIC-BT"
|
||||
HCI_WAIT_TIMEOUT=10
|
||||
|
||||
ATTACH_PIDFILE=/var/run/hciattach.pid
|
||||
BTGATT_PIDFILE=/var/run/btgatt-server.pid
|
||||
BLUETOOTHD_PIDFILE=/var/run/bluetoothd.pid
|
||||
|
||||
wait_for_hci()
|
||||
{
|
||||
"${HCI_TOOL}" wait "${HCI_DEV}" "${HCI_WAIT_TIMEOUT}"
|
||||
"${HCI_TOOL}" wait "${HCI_DEV}" "${HCI_WAIT_TIMEOUT}"
|
||||
}
|
||||
|
||||
bring_hci_up()
|
||||
{
|
||||
"${HCI_TOOL}" up "${HCI_DEV}"
|
||||
}
|
||||
|
||||
set_hci_name()
|
||||
{
|
||||
"${HCI_TOOL}" name "${HCI_DEV}" "${BT_LOCAL_NAME}"
|
||||
"${HCI_TOOL}" up "${HCI_DEV}"
|
||||
}
|
||||
|
||||
start_bt()
|
||||
{
|
||||
echo "[BT] Init AIC8800..."
|
||||
insmod /lib/modules/5.10.44/kernel/drivers/net/wireless/aic8800/aic8800_btlpm/aic8800_btlpm.ko
|
||||
sleep 1
|
||||
echo "[BT] Init AIC8800..."
|
||||
insmod /lib/modules/5.10.44/kernel/drivers/net/wireless/aic8800/aic8800_btlpm/aic8800_btlpm.ko 2>/dev/null
|
||||
sleep 1
|
||||
|
||||
killall hciattach 2>/dev/null
|
||||
killall btgatt-server 2>/dev/null
|
||||
rm -f "${ATTACH_PIDFILE}" "${BTGATT_PIDFILE}"
|
||||
killall hciattach 2>/dev/null
|
||||
killall bluetoothd 2>/dev/null
|
||||
killall btgatt-server 2>/dev/null
|
||||
rm -f "${ATTACH_PIDFILE}" "${BLUETOOTHD_PIDFILE}" "${BTGATT_PIDFILE}"
|
||||
|
||||
"${HCIATTACH_BIN}" ${HCIATTACH_ARGS} &
|
||||
echo $! > "${ATTACH_PIDFILE}"
|
||||
"${HCIATTACH_BIN}" ${HCIATTACH_ARGS} &
|
||||
echo $! > "${ATTACH_PIDFILE}"
|
||||
|
||||
if ! wait_for_hci; then
|
||||
echo "[BT] ERROR: ${HCI_DEV} not ready"
|
||||
return 1
|
||||
fi
|
||||
if ! wait_for_hci; then
|
||||
echo "[BT] ERROR: ${HCI_DEV} not ready"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if ! bring_hci_up; then
|
||||
echo "[BT] ERROR: failed to bring ${HCI_DEV} up"
|
||||
return 1
|
||||
fi
|
||||
if ! bring_hci_up; then
|
||||
echo "[BT] ERROR: failed to bring ${HCI_DEV} up"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if ! set_hci_name; then
|
||||
echo "[BT] WARN: failed to set controller local name"
|
||||
fi
|
||||
|
||||
echo "[BT] HCI ready"
|
||||
|
||||
"${BTGATT_BIN}" ${BTGATT_ARGS} >/dev/null 2>&1 &
|
||||
echo $! > "${BTGATT_PIDFILE}"
|
||||
echo "[BT] GATT server started"
|
||||
# 先启动 LE 广播
|
||||
hciconfig ${HCI_DEV} leadv 0
|
||||
sleep 1
|
||||
|
||||
# 启动 bluetoothd
|
||||
"${BLUETOOTHD_BIN}" &
|
||||
echo $! > "${BLUETOOTHD_PIDFILE}"
|
||||
|
||||
# 启动 btgatt-server(设置广播数据,包含名称)
|
||||
"${BTGATT_BIN}" ${BTGATT_ARGS} >/dev/null 2>&1 &
|
||||
echo $! > "${BTGATT_PIDFILE}"
|
||||
|
||||
echo "[BT] Bluetooth ready with GATT server"
|
||||
}
|
||||
|
||||
stop_bt()
|
||||
{
|
||||
if [ -f "${BTGATT_PIDFILE}" ]; then
|
||||
kill "$(cat "${BTGATT_PIDFILE}")" 2>/dev/null
|
||||
rm -f "${BTGATT_PIDFILE}"
|
||||
else
|
||||
killall btgatt-server 2>/dev/null
|
||||
fi
|
||||
hciconfig ${HCI_DEV} noleadv 2>/dev/null
|
||||
|
||||
if [ -f "${ATTACH_PIDFILE}" ]; then
|
||||
kill "$(cat "${ATTACH_PIDFILE}")" 2>/dev/null
|
||||
rm -f "${ATTACH_PIDFILE}"
|
||||
else
|
||||
killall hciattach 2>/dev/null
|
||||
fi
|
||||
if [ -f "${BTGATT_PIDFILE}" ]; then
|
||||
kill "$(cat "${BTGATT_PIDFILE}")" 2>/dev/null
|
||||
rm -f "${BTGATT_PIDFILE}"
|
||||
else
|
||||
killall btgatt-server 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ -f "${BLUETOOTHD_PIDFILE}" ]; then
|
||||
kill "$(cat "${BLUETOOTHD_PIDFILE}")" 2>/dev/null
|
||||
rm -f "${BLUETOOTHD_PIDFILE}"
|
||||
else
|
||||
killall bluetoothd 2>/dev/null
|
||||
fi
|
||||
|
||||
if [ -f "${ATTACH_PIDFILE}" ]; then
|
||||
kill "$(cat "${ATTACH_PIDFILE}")" 2>/dev/null
|
||||
rm -f "${ATTACH_PIDFILE}"
|
||||
else
|
||||
killall hciattach 2>/dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
case "$1" in
|
||||
start)
|
||||
start_bt
|
||||
;;
|
||||
stop)
|
||||
stop_bt
|
||||
;;
|
||||
restart)
|
||||
stop_bt
|
||||
sleep 1
|
||||
start_bt
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
;;
|
||||
start)
|
||||
start_bt
|
||||
;;
|
||||
stop)
|
||||
stop_bt
|
||||
;;
|
||||
restart)
|
||||
stop_bt
|
||||
sleep 1
|
||||
start_bt
|
||||
;;
|
||||
*)
|
||||
echo "Usage: $0 {start|stop|restart}"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
|
||||
exit $?
|
||||
|
||||
BIN
target/d211/demo128_nand/rootfs_overlay/usr/bin/e_player
Executable file
BIN
target/d211/demo128_nand/rootfs_overlay/usr/bin/e_player
Executable file
Binary file not shown.
Loading…
Reference in New Issue
Block a user