I am currently working on a system that requires a bluetooth connection, we are using a BLE connection, between the Jetson Xavier NX as a peripheral device and a mobile phone. The mobile phone issues commands to the jetson over the established bluetooth connection. The program on the Jetson is built using React inside Electron and the mobile application is built using React Native. In the application on the Jetson, we are using a package called bleno (GitHub - noble/bleno: A Node.js module for implementing BLE (Bluetooth Low Energy) peripherals), which requires the system bluetooth to be stopped and disabled. Bleno uses hci0 as it’s adapter. After a seemingly random amount of time the bluetooth connection will be dropped.
Prior to the connection being dropped rfkill command returns with ID: 0, TYPE: bluetooth, and DEVICE: hci0. After the bluetooth drops this is missing from the network devices. Also prior to the bluetooth drops
ls /sys/class/bluetooth/ returns with
hci0, after the bluetooth drops
ls /sys/class/bluetooth/ returns with an empty directory. After powercycling the Jetson hci0 is returned to the rfkill list and to /sys/class/bluetooth.
Why is the hci0 directory being removed and how can I stop it from being removed?
Using Jetpack 4.6.3