Modify BT MAC address generating logic
[platform/adaptation/bluetooth-firmware-bcm.git] / scripts / bt-dev-start-rpi3.sh
index ee8454b..0d32e8c 100644 (file)
@@ -18,11 +18,16 @@ then
 fi
 
 GEN_BDADDR(){
-        echo "BT Mac addr generates randomly."
-        MAC_PRE=$(echo "00:02:")
-        MAC_POST=$(/usr/bin/openssl rand -hex 4 | sed 's/\(..\)/\1:/g; s/.$//')
-        echo "Random : $MAC_PRE$MAC_POST"
-        BT_MAC=$MAC_PRE$MAC_POST
+       #echo "BT Mac addr generates randomly."
+       #MAC_PRE=$(echo "00:02:")
+       #MAC_POST=$(/usr/bin/openssl rand -hex 4 | sed 's/\(..\)/\1:/g; s/.$//')
+       #BT_MAC=$MAC_PRE$MAC_POST
+       echo "Generates BT MAC address based on serial number."
+       SERIAL=`cat /proc/device-tree/serial-number | cut -c9-`
+       B1=`echo $SERIAL | cut -c3-4`
+       B2=`echo $SERIAL | cut -c5-6`
+       B3=`echo $SERIAL | cut -c7-8`
+       BT_MAC=`printf b8:27:eb:%02x:%02x:%02x $((0x$B1 ^ 0xaa)) $((0x$B2 ^ 0xaa)) $((0x$B3 ^ 0xaa))`
 }
 
 if [ ! -e "$BT_MAC_FILE" ]