dongles:laird820psread

Here is the output from a European Laird 820 as initially received.

This was obtained by running the command:

bccmd spread >keys.txt

which captured the output in the keys.txt file.

// PSKEY_BDADDR
&0001 = 000f 43eb 00a4 0016
// PSKEY_LC_MAX_TX_POWER
&0017 = 0008
// PSKEY_LC_DEFAULT_TX_POWER
&0021 = 0008
// PSKEY_HCI_NOP_DISABLE
&00f2 = 0001
// PSKEY_DEVICE_NAME
&0108 = 5343 3852 3135 2030 3141 0030
// PSKEY_ANA_FTRIM
&01f6 = 001a
// PSKEY_DEEP_SLEEP_STATE
&0229 = 0003
// PSKEY_CLOCK_REQUEST_ENABLE
&0246 = 0000
// PSKEY_VM_DISABLE
&025d = 0000
// PSKEY_MOD_MANUF5
&0263 = 0028 0000 0100 0004 0001 0000 0000 0000 0100 4c42 5455 5455 0048 3132 4445 0052 0000 0000 0000 0000
// PSKEY_USR1
&028b = 0001
// PSKEY_USR5
&028f = a614 1388 ff10 0064 01f4 01f4 1388 000c 0000 0000
// PSKEY_USR6
&0290 = 0100 0020 000a 000a 0040 0190 0032 0020 0020 0040 0190 0190 0000
// PSKEY_USR8
&0292 = 0000 0000 0000 0001
// PSKEY_USR9
&0293 = 0000 0000 0000 0001
// PSKEY_USR10
&0294 = 0008 0202
// PSKEY_USR11
&0295 = 0001
// PSKEY_USR12
&0296 = 0036 0018 0006 0040 0000
// PSKEY_USR15
&0299 = 000a 000a 0001 0001 0001 0001 0004 0001 0004 0004 0001 0001 0000 0000 0000 0000 0001 0001 0001 0001 0001 0001 0004 0001
// PSKEY_USR16
&029a = 007c 0005 0001 0009 0006 00a1 0001 0085 0001 0005 0007 0019 00e0 0029 00e7 0015 0000 0025 0001 0075 0001 0095 0008 0081 0002 0095 0001 0075 0008 0081 0003 0095 0005 0075 0001 0005 0008 0019 0001 0029 0005 0091 0002 0095 0001 0075 0003 0091 0003 0095 0006 0075 0008 0015 0000 0025 0065 0005 0007 0019 0000 0029 0065 0081
// PSKEY_USR17
&029b = 0000 0006 0000 00ff 0009 0001 0095 0008 0075 0008 00b1 0002 00c0 0006 0000 00ff 0009 0002 00a1 0001 0085 0002 0075 0008 0095 0001 0015 0001 0025 0064 0009 0020 0081 0000 00c0 0005 000c 0009 0001 00a1 0001 0085 0003 0075 0010 0095 0001 0015 0001 0026 00ff 0002 0019 0001 002a 00ff 0002 0081 0060 00c0
// PSKEY_USR24
&02a2 = 005e 0005 0001 0009 0002 00a1 0001 0009 0001 00a1 0000 0005 0009 0019 0001 0029 0003 0015 0000 0025 0001 0095 0003 0075 0001 0081 0002 0095 0001 0075 0005 0081 0003 0005 0001 0009 0030 0009 0031 0016 0000 00f8 0026 00ff 0007 0075 0010 0095 0002 0081 0006 0009 0038 0015 0080 0025 007f 0075 0008 0095 0001 0081 0006 0009
// PSKEY_USR25
&02a3 = 0001 0015 0000 0025 0003 0095 0001 0075 0002 00b1 0002 0095 0001 0075 0006 00b1 0003 00c0 0006 0000 00ff 0009 0001 0095 0008 0075 0008 00b1 0002 00c0
// PSKEY_USR37
&02af = 766d 7366 0001
// PSKEY_USR38
&02b0 = 0263 0028 0001 0000 0004
// PSKEY_USB_PRODUCT_STRING
&02c2 = 0043 0053 0052 0038 0035 0031 0030 0020 0041 0031 0030
// PSKEY_USB_ATTRIBUTES
&02c5 = 00e0
// PSKEY_USB_MAX_POWER
&02c6 = 0032
// 0x02da
&02da = 00ee 02db
// 0x02db
&02db = 004d 0053 0046 0054 0031 0030 0030 0001
// PSKEY_USB_DONT_RESET_BOOTMODE_ON_HOST_RESET
&03b9 = 0001
// PSKEY_I2C_CONFIG
&03be = 0001
// PSKEY_INITIAL_BOOTMODE
&03cd = 0000
// 0x04b0
&04b0 = 03c0 03cc 22c0
// 0x04b1
&04b1 = 01f9 0042
// 0x04b2
&04b2 = 02bf 03c0 03cc 02bd 000d 000e 215f
// 0x04b8
&04b8 = 0000
// 0x04b9
&04b9 = 0000
// 0x04ba
&04ba = 0001
// 0x04f8
&04f8 = 0000
// 0x04f9
&04f9 = 0001
// 0x0538
&0538 = 100b
// 0x0539
&0539 = 0001
// 0x053a
&053a = 0001
// 0x053b
&053b = 0000 0000 0000
// 0x053c
&053c = 0002
// 0x053d
&053d = 0000
// 0x053e
&053e = 0002 0001 000a 0008 0010 0008 0020 0008 0040 0004 0080 0002 0140 0001 0200 0002
// 0x212d
&212d = 0000 917f 0114 e099 06f0 df00 4a99 03ec 001b 0b26 fc0f 73fd
// 0x212e
&212e = 0002 568b e800 0e18 0512 2500 0e80 0df0 e800 0f15 8000 2f84 08f0 0114 e800 0f25 2600 3314 e800 1325 0900 ee80 07f0 019c e200 4d19 8000 009e 06e0 019c e200 4c19 8000 009e e800 1111 ff30 0218 ff2b ff0e 5700 8e18 00e2 4d4b
// 0x212f
&212f = 0002 5699 e800 0e18 0512 0900 1280 04f0 0616 0234 0626 1c00 0a80 06f0 019c e200 4b19 8000 009e 019c e200 1b19 8000 009e e800 1415 e800 1135 0218 ff2b ff0e 5700 9d18 00e2 5ba0
// 0x2130
&2130 = 0002 d053 0217 0613 0218 ff2b ff0e ce00 9118 009e fa0f f05c
// 0x2131
&2131 = 0004 127e e900 2414 0318 ff2b ff0e 5400 2918 009e e900 ca14 0318 ff2b ff0e 5400 2918 009e 0418 ff2b ff0e 1300 8318 00e2 b8ef
// 0x2132
&2132 = 0002 ffca 7f00 00b4 0426 0218 ff2b ff0e cd18 00e2 d102
// 0x2133
&2133 = 0004 7663 0417 0284 1bf0 0010 0023 0123 ea00 d915 ea00 da11 0018 ff2b ff0e 7100 bc18 009e 0010 ea00 d821 ea00 d921 ea00 da21 0418 ff2b ff0e 7600 6618 00e2 0418 ff2b ff0e 7700 8018 00e2 b276
// 0x2134
&2134 = 0004 7613 1717 101b fd09 1b17 019c e200 5019 8000 009e 0418 ff2b ff0e 7600 1618 00e2 29ee
// 0x2135
&2135 = 0000 7e55 041b 0316 0486 14f0 df00 0715 0284 04f0 0317 0784 0df4 0018 ff2b ff0e 7200 5a18 009e 0018 ff2b ff0e 7e00 3d18 00e2 e200 6915 021b 0326 e200 6929 0018 ff2b ff0e 7e00 5b18 00e2 84c6
// 0x2139
&2139 = 0001 aca8 e500 3111 10e0 e019 0116 1d84 0af0 0216 001b 351a f829 03f4 001a f829 f885 12f4 e019 0012 e099 f0f0 0c14 0018 ff2b ff0e 7a00 0e18 009e 0118 ff2b ff0e ad00 ab18 00e2 0114 f90f 775c
// 0x216d
&216d = 0007
// 0x21f0
&21f0 = 0202
// 0x21f7
&21f7 = fe00 4888 07f0 0018 ff2b ff0e fe00 4818 00e2 fd0b 5f00 7780 27f0 e800 0e18 0316 0400 ffc4 0c36 e119 002b 0516 1b00 ec84 1bf0 0a16 1a9c e119 1016 179c e119 0c12 e099 12f4 001b 0b16 0dec 0122 0926 ffd4 0b26 0a16 e800 0e18 0026 5f00 6e14 0526 fa0f ffd4 0b26 fd0f fe0b 0010 0218 ff2b ff0e 6000 3018 009e fe0f e283
// 0x2225
&2225 = 7200 d688 10f4 e900 dc99 07f0 0218 ff2b ff0e 7500 b418 00e2 0218 ff2b ff0e 7500 d918 00e2 f80f 8aa6
// 0x2226
&2226 = 7500 0188 00f2 0a13 0b80 2ff0 ea00 d815 0687 29f4 0010 0023 0123 ea00 d915 ea00 da11 0018 ff2b ff0e 7100 bc18 009e 0010 0617 ea00 d825 11f4 0009 1000 a090 019c e200 5119 012b 000a 0018 022b 0018 ff2b ff0e 7200 b418 009e ea00 d925 ea00 da21 0114 04e0 0014 02e0 0117 fa0f 4be0
// 0x2227
&2227 = fc0b e800 1819 029a 2cf0 e800 0e18 0316 0400 ffc4 0c36 e119 0416 0284 22f0 0116 0010 0218 ff2b ff0e 6000 5618 009e e119 012b 049a 16f4 0316 0010 0218 ff2b ff0e 6000 5618 009e e119 0100 e912 0023 011b 0416 0b10 0418 ff2b ff0e 4400 f718 009e fc0f 5e08
// 0x2228
&2228 = fe0b e800 0e18 0512 1b00 fd80 26f0 0016 0010 0218 ff2b ff0e 6000 5618 009e e119 0100 fc16 ea00 d725 e800 0e18 0116 0010 0218 ff2b ff0e 6000 4218 009e e119 0016 ea00 d785 19f0 e800 0e18 0110 0022 0216 0526 0014 0626 10e0 3500 d180 0df0 0316 0400 ffc4 0c36 e119 0b12 2300 d780 04f0 0014 e800 0f25 fe0f 1f41
// 0x2229
&2229 = fb0b e800 0e18 0616 0234 0626 0016 0010 0218 ff2b ff0e 6000 5618 009e e119 002b 0f16 0010 0218 ff2b ff0e 6000 5618 009e e119 0612 069a 16f4 e800 0e18 0316 f834 0400 ffc4 0c36 e119 012b 0022 0414 0126 e800 1115 fb34 0226 019c e200 4e19 8000 00e2 fb0f 3359
// 0x222a
&222a = 001b 0316 0010 0218 ff2b ff0e 6000 5618 009e e119 022b 0100 ea16 0100 ea12 011b 0326 0009 08a4 0422 021b 0100 eb16 0100 eb12 011b 0526 0009 08a4 0622 001b 1116 e800 0e18 0126 0900 0f14 0526 fb0f 8e86
// 0x222c
&222c = f90b 0327 ea00 d915 ea00 da11 e0b5 22f4 0010 0023 0123 ea00 d915 ea00 da11 0018 ff2b ff0e 7100 bc18 009e 0010 ea00 d815 11f4 0009 1000 a090 019c e200 5119 012b 000a 0018 022b 0018 ff2b ff0e 7200 b418 009e ea00 d925 ea00 da21 f90f 8598
// 0x222d
&222d = f90b 0423 e019 081a 022b e015 019c e200 5019 8000 009e 041b 0116 e119 0416 0118 ff2b ff0e 5800 4818 009e 0327 26f0 041b 0116 0213 0218 ff2b ff0e c600 f918 009e e199 1bf4 041b 0116 0313 0218 ff2b ff0e c700 3418 009e e111 041b 1638 0217 fd09 0317 0027 0127 041b 0116 0213 0218 ff2b ff0e c700 8b18 009e f90f d780
// 0x22c8
&22c8 = 0008
// 0x2483
&2483 = 0002 0001
// 0x2484
&2484 = 0001 0001
// 0x2485
&2485 = 0000 0001
// 0x2578
&2578 = 0008

Of particular interest here is the PSKEY_INITIAL_BOOTMODE value at offset &03cd which is set to 0001. When the Bluetooth dongle is working in HID mode you will find that this value has been changed to 0002 (although not all dongles seem to have this key present in their out-of-the-box state).

It has been found that some Laird 820 dongles sold in the US actually identify themselves as 04bf:0320 TDK Corp. Bluetooth Adapter. For these variant the following keys are missing and need to be added:

&03cd = 0000
&04b0 = 03c0 03cc 22c0
&04b1 = 01f9 0042
&04b2 = 02bf 03c0 03cc 02bd 000d 000e 215f
&04b8 = 0000
&04b9 = 0000
&04ba = 0001
&04f8 = 0000
&04f9 = 0001
&0538 = 100b
&0539 = 0001
&053a = 0001
&053b = 0000 0000 0000
&053c = 0002
&053d = 0000
&053e = 0002 0001 000a 0008 0010 0008 0020 0008 0040 0004 0080 0002 0140 0001 0200 0002

If these keys are missing then if you run the make_hid'sh script you can end up 'bricking' the dongle. Once this has been done then the dongle has been successfully switched into HID mode.

  • dongles/laird820psread.txt
  • Last modified: 2017/05/02 00:57
  • by itimpi