## hardware
### debug header
1.25mm jst
![](https://m3.lane-fu.com/codimd/uploads/6e82f898-3b24-4b35-bcd7-99cc187a4e87.png)
![](https://m3.lane-fu.com/codimd/uploads/35659a27-3fb2-4b85-893b-fc55d9c3226e.png)
```
| gnd | tx | rx | 3.3v |
```
### GPIO Pinout
unconfirmed
![](https://m3.lane-fu.com/codimd/uploads/255cb72c-3182-4e61-a7fd-fe7b2e3d229d.png)
## software
### BT firmware activation
#### reference commits
https://github.com/stvhay/kernel/commit/f83ff6c84ab8082a67ddb02f06bb1cb0fa652175
https://github.com/stvhay/kernel/commit/d983e97bcf64a69defca66c4f6f654177f79b5e1
this may be needed--I was having kernel panics when wifi was using kernel's AES
https://github.com/stvhay/kernel/commit/fe45c1db9671a29855ed323d6c5d44f130b49d83
probably more than one way to do this: https://github.com/stvhay/rkwifibt/commits/rkwifibt
this is the little script i wrote to detect and load the driver.. probably other ways to do this too https://github.com/batocera-linux/batocera.linux/blob/master/package/batocera/firmwares/firmware-radxa-rkwifibt/S29rtk_bt
#### notes
reference
```bash
if [[ "$BOARD" == "indiedroid-nova" ]]; then
cd ~
echo ""
echo "Installing ${DEFAULT_MOTD} bluetooth support ..."
git clone https://github.com/stvhay/rkwifibt
# build the hci driver
cd rkwifibt
make -C realtek/rtk_hciattach
# Install the firmware and utility
mkdir -p /lib/firmware/rtl_bt
cp -fr realtek/RTL8821CS/* /lib/firmware/rtl_bt/
cp -f realtek/rtk_hciattach/rtk_hciattach /usr/bin/
cp -f bt_load_rtk_firmware /usr/bin/
chmod +x /usr/bin/{rtk_hciattach,bt_load_rtk_firmware}
echo hci_uart >> /etc/modules
cd ~; rm -fdr rkwifibt
fi
```
another concept
```bash
#!/bin/bash
shopt -s nullglob
dt="/sys/firmware/devicetree/base"
log="/var/log/realtek.log"
start() {
[ -f "$dt/compatible" ] || { echo "No device tree! $0 should not be installed on this architecture"; exit 1; }
# check for SDIO bluetooth support in device tree
echo "Checking for SDIO bluetooth support"
if [ -d "$dt/pinctrl/wireless-bluetooth" ]; then
# Search devices for the specific adapter
for path in /sys/bus/sdio/devices/*; do
if grep -q 0xc821 "$path/device"; then # RTK8821CS found
echo "RTK8821CS Found."
# Find the serial tty number using the device tree, which has a
# single file of the form uartN-gpios.
ttynum=$(printf "%s" $dt/pinctrl/wireless-bluetooth/uart*-gpios |
sed -r 's/.*uart([0-9]+)-gpios/\1/')
tty=/dev/ttyS${ttynum}
echo "TTY Found: $tty"
# Run the userspace driver
echo "Starting userspace driver on $tty."
BT_TTY_DEV="$tty" nohup /usr/bin/bt_load_rtk_firmware 2>&1 > "$log" &
echo "Check $log for more information."
exit 0
fi
done
fi
}
stop() {
killall rtk_hciattach
}
case "$1" in
start)
start
;;
stop)
stop
;;
restart)
start
;;
status)
ps | grep rtk_hciattach | grep -v grep
cat "$log"
# code to check status of app comes here
# example: status program_name
;;
*)
echo "Usage: $0 {start|stop|status|restart}"
esac
```
### images
http://respectech.com/CurrentProjects/Indiedroid/
### kernels
https://github.com/stvhay/kernel
### firmware blobs
https://github.com/JustEnoughLinuxOS/distribution/blob/main/projects/Rockchip/devices/RK3588/options#L40
### uboot
## documentation
possible schematic but maybe just a rockchip reference?
https://1drv.ms/b/s!AmY8JCaZbE-RhaNsty6aNog8eY-RVQ?e=gkCkcq
### schematics
[they promise its hte board and not a tablet](https://armbian.lane-fu.com/linx/8ut9hqfn.pdf)