diff options
Diffstat (limited to 'protocol/iwrap/iWRAP.txt')
-rw-r--r-- | protocol/iwrap/iWRAP.txt | 376 |
1 files changed, 376 insertions, 0 deletions
diff --git a/protocol/iwrap/iWRAP.txt b/protocol/iwrap/iWRAP.txt new file mode 100644 index 0000000000..2a062d9d98 --- /dev/null +++ b/protocol/iwrap/iWRAP.txt @@ -0,0 +1,376 @@ +Bulegiga WT12 +============= +WT12 is a bluetooth module from Bluegiga. http://www.bluegiga.com/ + +iWRAP + higher layer interface for bluetooth firmware + communicate with UART + +iWRAP HID +default setting + 115200 8bit/n/1/n + + +TODO +---- +KiCAD circuit/PCB design +power saving + AVR sleep(15ms by watch dog timer) + WT12 sleep + measuring current consumption + measuring battery life of normal usage/idle/intensive usage +software reset/bootloarder +LED indicator(chaging/paring/connecting) +license confirmation of suart.c +consumer page is not working +authenticate method/SSP +SPP keyboard support +SPP debug console support +mouse wheel feature request to Bluegiga + + +Problems +-------- +power consumption +no consumer page support(bug?) +no mouse wheel support +no paring management +no interactive auth method + + +UART hardware flow control +-------------------------- +(iWRAP4 User Guide 9.5) +Hardware flow control is enabled by default and it should not be disabled unless mandatory, because without the hardware flow control the data transmission may not be reliable. +If the hardware flow control is enabled from PS-keys, but no flow control is used, the following steps should be implemented in the hardware design: +- CTS pin must be grounded +- RTS pin must be left floating + + +Power Saving +------------ +power consume + without opimization: 4hr to shutdown(310mAh) + 2011/08/25: 9hr(310mAh) SNIFF MASTER sleep/WDTO_120MS + +measure current consumption + HHKB keyswitch matrix board + idle + scanning + Bluegiga WT12 module + SLEEP command + deep sleep on/off in config bits + +HHKB keyswich + how to power off + I/O pin configuration when sleeping + FET switch for 5V regulator + +Bluetooth module + power off when in USB mode + power off by FET switch + +AVR configuration + unused pins + ADC + + + +SET CONTROL CONFIG +------------------ + SET CONTROL CONFIG 4810 + SET CONTROL CONFIG LIST + SET CONTROL CONFIG 0000 0000 4910 DEEP_SLEEP KLUDGE INTERACTIVE_PIN UART_LATENCY + + Bit14 UART low latency + Bit11 Interactive pairing mode + Bit04 Deep sleep + + +Reconnection +------------ +SET CONTROL AUTOCALL 1124 5000 HID + 1124 HID service class + 5000 interval ms + +HID profile +----------- +This is needed to configure only once. + SET PROFILE HID ON + RESET + +HID class +--------- + SET BT CLASS 005C0 // keyboard/mouse combined devie + +Pairing Security +---------------- +Secure Simple Pairing(SSP) + SET BT SSP 2 0 // Enables SSP for keyboard and Man-in-the-middle protection + SET BT SSP 3 0 // Enables SSP just works mode + +for keyboard with SSP + SET BT AUTH * 0000 + SET BT SSP 2 0 + SET CONTROL CONFIG 800 + RESET + +for keyboard without SSP + SET BT AUTH * 0000 + SET CONTROL CONFIG 800 + RESET + +AUTH + AUTH xx:xx:xx:xx:xx:xx? // Pairing request event + AUTH xx:xx:xx:xx:xx:xx 0000 + + SSP PASSKEY 78:dd:08:b7:e4:a2 ? + SSP PASSKEY 78:dd:08:b7:e4:a2 xxxxx + (SSP COMPLETE 78:dd:08:b7:e4:a2 HCI_ERROR_AUTH_FAIL // failed) + RING 0 78:dd:08:b7:e4:a2 11 HID + +Connecton + RING xx:xx:xx:xx:xx:xx xx HID // connection event + + KILL xx:xx:xx:xx:xx:xx + +Mode +---- +Command mode +Data mode + Raw mode + (Simple mode not for a real keyboard) + +Raw mode + Keyboard: + 0x9f, length(10), 0xa1, 0x01, mods, 0x00, key1, key2, key3, key4, key5, key6 + + Mouse: + 0x9f, length(5), 0xa1, 0x02, buttons, X, Y + + Consumer page: + 0x9f, length(5), 0xa1, 0x03, bitfield1, bitfield2, bitfield3 + + consumer page suage + Bitfield 1: + 0x01 Volume Increment + 0x02 Volume Decrement + 0x04 Mute + 0x08 Play/Pause + 0x10 Scan Next Track + 0x20 Scan Previous Track + 0x40 Stop + 0x80 Eject + Bitfield 2: + 0x01 Email Reader + 0x02 Application Control Search + 0x04 AC Bookmarks + 0x08 AC Home + 0x10 AC Back + 0x20 AC Forward + 0x40 AC Stop + 0x80 AC Refresh + Bitfield 3: + 0x01 Application Launch Generic Consumer Control + 0x02 AL Internet Browser + 0x04 AL Calculator + 0x08 AL Terminal Lock / Screensaver + 0x10 AL Local Machine Browser + 0x20 AC Minimize + 0x40 Record + 0x80 Rewind + + + + + +2011/07/13 +set +SET BT BDADDR 00:07:80:47:22:14 +SET BT NAME HHKB pro BT +SET BT CLASS 0005c0 +SET BT AUTH * 0000 +SET BT IDENT BT:47 f000 4.1.0 Bluegiga iWRAP +SET BT LAP 9e8b33 +SET BT PAGEMODE 4 2000 1 +SET BT PAIR 78:dd:08:b7:e4:a2 a191189cd7e51030ad6a07848ce879bb +SET BT POWER 3 3 3 +SET BT ROLE 0 f 7d00 +SET BT SNIFF 0 20 1 8 +SET BT SSP 2 1 +SET BT MTU 667 +SET CONTROL AUTOCALL 1124 3000 HID +SET CONTROL BAUD 38400,8n1 +SET CONTROL CD 00 0 +SET CONTROL ECHO 7 +SET CONTROL ESCAPE 43 00 1 +SET CONTROL GAIN 0 5 +SET CONTROL INIT SET CONTROL MUX 0 +SET CONTROL MSC DTE 00 00 00 00 00 00 +SET CONTROL MUX 1 +SET CONTROL PIO 00 00 +SET CONTROL READY 00 +SET PROFILE HID f HID +SET + +info config + +!!! THIS IS BETA RELEASE AND MAY BE USED FOR EVALUATION PURPOSES ONLY !!! + +WRAP THOR AI (4.1.0 build 435) +Copyright (c) 2003-2011 Bluegiga Technologies Inc. +Compiled on Jun 28 2011 17:19:51, running on WT12-A module, psr v31 + AVRCP BGIO FTP HFP HFP_AG HID HID_CONSUMER_PAGE HSP LEDS MAP OTA PBAP PIO=0x00fc SSP SUBRATE TEST VOLUME + - BOCK3 version 435 (Jun 28 2011 17:19:37) (max acl/sco 7/1) + - Bluetooth version 2.1, Power class 2 + - Loader 4279, firmware 6297 (56-bit encryption), native execution mode + - up 0 days, 06:23, 2 connections (pool 2) + - User configuration: +&028a = 0001 0000 0000 0011 0024 0000 0000 0010 0000 0080 0000 0000 0080 005f 009b 0034 00fb 0006 +&028b = 0000 0bb8 +&028d = 0001 +&0295 = 0000 0005 000b 0000 0003 0000 0000 0000 0000 0000 0000 +&0298 = a006 +&0299 = 0000 0000 +&02a3 = 0030 0030 0030 0030 +&02a4 = 009d 0000 +&02a5 = 0053 0045 0054 0020 0043 004f 004e 0054 0052 004f 004c 0020 004d 0055 0058 0020 0030 +&02a7 = 0000 05c0 +&02a8 = 4910 0000 0000 +&02aa = 0004 2000 0001 0033 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 +&02ac = 0000 0000 002b 0000 0000 0000 0000 0000 0000 0000 0002 0000 0000 0000 0010 0000 0000 0000 0000 029b 0000 0000 0000 0000 +&02ad = 4848 424b 7020 6f72 4220 0054 +&02b3 = 0005 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 +&02b7 = 000f 4948 0044 +&02bb = 8000 +READY. + + + + +2011/07/07 settings: +set +SET BT BDADDR 00:07:80:47:22:14 +SET BT NAME HHKB Pro BT +SET BT CLASS 0005c0 +SET BT AUTH * 000 +SET BT IDENT BT:47 f000 4.0.0 Bluegiga iWRAP +SET BT LAP 9e8b33 +SET BT PAGEMODE 4 2000 1 +SET BT PAIR 78:dd:08:b7:e4:a2 9e54d0aabb1b4d73cfccddb1ea4ef2d6 +SET BT POWER 3 3 3 +SET BT ROLE 0 f 7d00 +SET BT SNIFF 0 20 1 8 +SET BT SSP 3 0 +SET BT MTU 667 +SET CONTROL BAUD 38400,8n1 +SET CONTROL CD 00 0 +SET CONTROL ECHO 7 +SET CONTROL ESCAPE 255 00 1 +SET CONTROL GAIN 0 5 +SET CONTROL INIT set control mux 0 +SET CONTROL MSC DTE 00 00 00 00 00 00 +SET CONTROL PREAMP 1 1 +SET CONTROL READY 00 +SET PROFILE HID HID +SET PROFILE SPP Bluetooth Serial Port +SET + +info config +WRAP THOR AI (4.0.0 build 317) +Copyright (c) 2003-2010 Bluegiga Technologies Inc. +Compiled on Apr 20 2010 16:44:28, running on WT12-A module, psr v31 + AVRCP FTP PBAP PIO=0x00fc SSP SUBRATE VOLUME + - BOCK3 version 317 (Apr 20 2010 16:44:21) (max acl/sco 7/1) + - Bluetooth version 2.1, Power class 2 + - Loader 4279, firmware 6297 (56-bit encryption), native execution mode + - up 0 days, 00:00, 0 connections (pool 1) + - User configuration: +&028c = 0001 0020 0000 0001 0008 0000 +&028d = 0000 +&0296 = 0047 0001 f000 0400 6c42 6575 6967 6167 6920 5257 5041 +&0298 = c006 +&02a3 = 0030 0030 0030 +&02a4 = 009d 0000 +&02a5 = 0073 0065 0074 0020 0063 006f 006e 0074 0072 006f 006c 0020 006d 0075 0078 0020 0030 +&02a7 = 0000 05c0 +&02a8 = 0800 0000 0000 +&02ac = 0000 0000 00ff 0000 0000 0000 0000 0000 0000 0000 0002 0000 0000 0000 0010 0000 0000 0000 0000 029b 0000 0000 0000 0000 +&02ad = 4848 424b 5020 6f72 4220 0054 +&02b3 = 0004 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 0003 +&02b7 = 0000 +&02bb = 6c42 6575 6f74 746f 2068 6553 6972 6c61 5020 726f 0074 +READY. + + + +2011/08/23: +SET BT BDADDR 00:07:80:47:22:14 +SET BT NAME HHKB pro BT +SET BT CLASS 0005c0 +SET BT AUTH * 0000 +SET BT IDENT BT:47 f000 4.1.0 Bluegiga iWRAP +SET BT LAP 9e8b33 +SET BT PAGEMODE 4 2000 1 +SET BT PAIRCOUNT 4 +SET BT POWER 3 3 3 +SET BT ROLE 1 f 12c0 +SET BT SNIFF 10 2 1 8 +SET BT SSP 3 0 +SET BT MTU 667 +SET CONTROL BAUD 38400,8n1 +SET CONTROL CD 00 0 +SET CONTROL ECHO 7 +SET CONTROL ESCAPE 43 00 1 +SET CONTROL GAIN 0 5 +SET CONTROL INIT SET CONTROL MUX 0 +SET CONTROL MSC DTE 00 00 00 00 00 00 +SET CONTROL MUX 1 +SET CONTROL PIO 00 00 +SET CONTROL READY 00 +SET PROFILE HID 7 HIDKeyboardMouse +SET + +SET CONTROL CONFIG 0000 0004 481e CLOCK_CACHE INTERLACED_INQ INTERLACED_PAGE DEEP_SLEEP INTERACTIVE_PIN UART_LATENCY 23D_NOKLUDGE + + + +2011/08/25: +SET BT BDADDR 00:07:80:47:22:14 +SET BT NAME HHKB pro BT +SET BT CLASS 0005c0 + +SET BT IDENT BT:47 f000 4.1.0 Bluegiga iWRAP +SET BT LAP 9e8b33 +SET BT PAGEMODE 4 2000 1 +SET BT PAIRCOUNT 4 +SET BT PAIR 78:dd:08:b7:e4:a2 0be83335a03fed8ededae42e99554e28 +SET BT POWER 3 3 3 +SET BT ROLE 1 f 12c0 +SET BT SNIFF 100 20 1 8 +SET BT SSP 3 0 +SET BT MTU 667 +SET CONTROL BAUD 38400,8n1 +SET CONTROL CD 00 0 +SET CONTROL ECHO 7 +SET CONTROL ESCAPE - 20 1 +SET CONTROL GAIN 0 5 +SET CONTROL INIT SET CONTROL MUX 0 +SET CONTROL MSC DTE 00 00 00 00 00 00 +SET CONTROL MUX 1 +SET CONTROL PIO 00 00 +SET CONTROL READY 00 +SET PROFILE HID f HIDKeyboardMouse +SET + + +SET CONTROL CONFIG 0000 0000 490e CLOCK_CACHE INTERLACED_INQ INTERLACED_PAGE KLUDGE INTERACTIVE_PIN UART_LATENCY + + +2011/09/08: +SET CONTROL CONFIG 0000 0000 410e CLOCK_CACHE INTERLACED_INQ INTERLACED_PAGE KLUDGE UART_LATENCY + + Removed INTERACTIVE_PIN to avoid interactive auth and use SET BT AUTH pin(0000). + + +EOF |