opcodes documentation
Iain Hibbert
plunky at rya-online.net
Thu May 5 15:04:01 UTC 2011
On Thu, 5 May 2011, Raoul wrote:
> are they device specifics, or something like read/rwite and so on?
>
> Sorry for thje naive newbie question, but sure some slight
> additions to the man page would be appreciated on this topic.
you would need to read the Bluetooth Core specification for details about
this, see www.bluetooth.com which I guess the manpage should also
reference.
the 'opcode' that you need is constructed by the NG_HCI_OPCODE() macro,
from the OGF & OCF values for each command which are all defined in
ng_hci.h along with the packet structures..
in NetBSD I provided an HCI_CMD_xxx value that evaluates to the correct
value for each command (since there is only a single command with each
name, it doesn't really make sense to require the OGF/OCF in the API), and
BlueZ also uses this method now I believe..
regards,
iain
-------------- next part --------------
#define HCI_CMD_INQUIRY 0x0401
#define HCI_CMD_INQUIRY_CANCEL 0x0402
#define HCI_CMD_PERIODIC_INQUIRY 0x0403
#define HCI_CMD_EXIT_PERIODIC_INQUIRY 0x0404
#define HCI_CMD_CREATE_CON 0x0405
#define HCI_CMD_DISCONNECT 0x0406
#define HCI_CMD_ADD_SCO_CON 0x0407
#define HCI_CMD_CREATE_CON_CANCEL 0x0408
#define HCI_CMD_ACCEPT_CON 0x0409
#define HCI_CMD_REJECT_CON 0x040A
#define HCI_CMD_LINK_KEY_REP 0x040B
#define HCI_CMD_LINK_KEY_NEG_REP 0x040C
#define HCI_CMD_PIN_CODE_REP 0x040D
#define HCI_CMD_PIN_CODE_NEG_REP 0x040E
#define HCI_CMD_CHANGE_CON_PACKET_TYPE 0x040F
#define HCI_CMD_AUTH_REQ 0x0411
#define HCI_CMD_SET_CON_ENCRYPTION 0x0413
#define HCI_CMD_CHANGE_CON_LINK_KEY 0x0415
#define HCI_CMD_MASTER_LINK_KEY 0x0417
#define HCI_CMD_REMOTE_NAME_REQ 0x0419
#define HCI_CMD_REMOTE_NAME_REQ_CANCEL 0x041A
#define HCI_CMD_READ_REMOTE_FEATURES 0x041B
#define HCI_CMD_READ_REMOTE_EXTENDED_FEATURES 0x041C
#define HCI_CMD_READ_REMOTE_VER_INFO 0x041D
#define HCI_CMD_READ_CLOCK_OFFSET 0x041F
#define HCI_CMD_READ_LMP_HANDLE 0x0420
#define HCI_CMD_SETUP_SCO_CON 0x0428
#define HCI_CMD_ACCEPT_SCO_CON_REQ 0x0429
#define HCI_CMD_REJECT_SCO_CON_REQ 0x042a
#define HCI_CMD_IO_CAPABILITY_REP 0x042a
#define HCI_CMD_USER_CONFIRM_REP 0x042c
#define HCI_CMD_USER_CONFIRM_NEG_REP 0x042d
#define HCI_CMD_USER_PASSKEY_REP 0x042e
#define HCI_CMD_USER_PASSKEY_NEG_REP 0x042f
#define HCI_CMD_OOB_DATA_REP 0x0430
#define HCI_CMD_OOB_DATA_NEG_REP 0x0433
#define HCI_CMD_IO_CAPABILITY_NEG_REP 0x0434
#define HCI_CMD_HOLD_MODE 0x0801
#define HCI_CMD_SNIFF_MODE 0x0803
#define HCI_CMD_EXIT_SNIFF_MODE 0x0804
#define HCI_CMD_PARK_MODE 0x0805
#define HCI_CMD_EXIT_PARK_MODE 0x0806
#define HCI_CMD_QOS_SETUP 0x0807
#define HCI_CMD_ROLE_DISCOVERY 0x0809
#define HCI_CMD_SWITCH_ROLE 0x080B
#define HCI_CMD_READ_LINK_POLICY_SETTINGS 0x080C
#define HCI_CMD_WRITE_LINK_POLICY_SETTINGS 0x080D
#define HCI_CMD_READ_DEFAULT_LINK_POLICY_SETTINGS 0x080E
#define HCI_CMD_WRITE_DEFAULT_LINK_POLICY_SETTINGS 0x080F
#define HCI_CMD_FLOW_SPECIFICATION 0x0810
#define HCI_CMD_SNIFF_SUBRATING 0x0810
#define HCI_CMD_SET_EVENT_MASK 0x0C01
#define HCI_CMD_RESET 0x0C03
#define HCI_CMD_SET_EVENT_FILTER 0x0C05
#define HCI_CMD_FLUSH 0x0C08
#define HCI_CMD_READ_PIN_TYPE 0x0C09
#define HCI_CMD_WRITE_PIN_TYPE 0x0C0A
#define HCI_CMD_CREATE_NEW_UNIT_KEY 0x0C0B
#define HCI_CMD_READ_STORED_LINK_KEY 0x0C0D
#define HCI_CMD_WRITE_STORED_LINK_KEY 0x0C11
#define HCI_CMD_DELETE_STORED_LINK_KEY 0x0C12
#define HCI_CMD_WRITE_LOCAL_NAME 0x0C13
#define HCI_CMD_READ_LOCAL_NAME 0x0C14
#define HCI_CMD_READ_CON_ACCEPT_TIMEOUT 0x0C15
#define HCI_CMD_WRITE_CON_ACCEPT_TIMEOUT 0x0C16
#define HCI_CMD_READ_PAGE_TIMEOUT 0x0C17
#define HCI_CMD_WRITE_PAGE_TIMEOUT 0x0C18
#define HCI_CMD_READ_SCAN_ENABLE 0x0C19
#define HCI_CMD_WRITE_SCAN_ENABLE 0x0C1A
#define HCI_CMD_READ_PAGE_SCAN_ACTIVITY 0x0C1B
#define HCI_CMD_WRITE_PAGE_SCAN_ACTIVITY 0x0C1C
#define HCI_CMD_READ_INQUIRY_SCAN_ACTIVITY 0x0C1D
#define HCI_CMD_WRITE_INQUIRY_SCAN_ACTIVITY 0x0C1E
#define HCI_CMD_READ_AUTH_ENABLE 0x0C1F
#define HCI_CMD_WRITE_AUTH_ENABLE 0x0C20
#define HCI_CMD_READ_ENCRYPTION_MODE 0x0C21
#define HCI_CMD_WRITE_ENCRYPTION_MODE 0x0C22
#define HCI_CMD_READ_UNIT_CLASS 0x0C23
#define HCI_CMD_WRITE_UNIT_CLASS 0x0C24
#define HCI_CMD_READ_VOICE_SETTING 0x0C25
#define HCI_CMD_WRITE_VOICE_SETTING 0x0C26
#define HCI_CMD_READ_AUTO_FLUSH_TIMEOUT 0x0C27
#define HCI_CMD_WRITE_AUTO_FLUSH_TIMEOUT 0x0C28
#define HCI_CMD_READ_NUM_BROADCAST_RETRANS 0x0C29
#define HCI_CMD_WRITE_NUM_BROADCAST_RETRANS 0x0C2A
#define HCI_CMD_READ_HOLD_MODE_ACTIVITY 0x0C2B
#define HCI_CMD_WRITE_HOLD_MODE_ACTIVITY 0x0C2C
#define HCI_CMD_READ_XMIT_LEVEL 0x0C2D
#define HCI_CMD_READ_SCO_FLOW_CONTROL 0x0C2E
#define HCI_CMD_WRITE_SCO_FLOW_CONTROL 0x0C2F
#define HCI_CMD_HC2H_FLOW_CONTROL 0x0C31
#define HCI_CMD_HOST_BUFFER_SIZE 0x0C33
#define HCI_CMD_HOST_NUM_COMPL_PKTS 0x0C35
#define HCI_CMD_READ_LINK_SUPERVISION_TIMEOUT 0x0C36
#define HCI_CMD_WRITE_LINK_SUPERVISION_TIMEOUT 0x0C37
#define HCI_CMD_READ_NUM_SUPPORTED_IAC 0x0C38
#define HCI_CMD_READ_IAC_LAP 0x0C39
#define HCI_CMD_WRITE_IAC_LAP 0x0C3A
#define HCI_CMD_READ_PAGE_SCAN_PERIOD 0x0C3B
#define HCI_CMD_WRITE_PAGE_SCAN_PERIOD 0x0C3C
#define HCI_CMD_READ_PAGE_SCAN 0x0C3D
#define HCI_CMD_WRITE_PAGE_SCAN 0x0C3E
#define HCI_CMD_SET_AFH_CLASSIFICATION 0x0C3F
#define HCI_CMD_READ_INQUIRY_SCAN_TYPE 0x0C42
#define HCI_CMD_WRITE_INQUIRY_SCAN_TYPE 0x0C43
#define HCI_CMD_READ_INQUIRY_MODE 0x0C44
#define HCI_CMD_WRITE_INQUIRY_MODE 0x0C45
#define HCI_CMD_READ_PAGE_SCAN_TYPE 0x0C46
#define HCI_CMD_WRITE_PAGE_SCAN_TYPE 0x0C47
#define HCI_CMD_READ_AFH_ASSESSMENT 0x0C48
#define HCI_CMD_WRITE_AFH_ASSESSMENT 0x0C49
#define HCI_CMD_READ_EXTENDED_INQUIRY_RSP 0x0C51
#define HCI_CMD_WRITE_EXTENDED_INQUIRY_RSP 0x0C52
#define HCI_CMD_REFRESH_ENCRYPTION_KEY 0x0C53
#define HCI_CMD_READ_SIMPLE_PAIRING_MODE 0x0C55
#define HCI_CMD_WRITE_SIMPLE_PAIRING_MODE 0x0C56
#define HCI_CMD_READ_LOCAL_OOB_DATA 0x0C57
#define HCI_CMD_READ_INQUIRY_RSP_XMIT_POWER 0x0C58
#define HCI_CMD_WRITE_INQUIRY_RSP_XMIT_POWER 0x0C59
#define HCI_CMD_READ_DEFAULT_ERRDATA_REPORTING 0x0C5A
#define HCI_CMD_WRITE_DEFAULT_ERRDATA_REPORTING 0x0C5B
#define HCI_CMD_ENHANCED_FLUSH 0x0C5F
#define HCI_CMD_SEND_KEYPRESS_NOTIFICATION 0x0C60
#define HCI_CMD_READ_LOCAL_VER 0x1001
#define HCI_CMD_READ_LOCAL_COMMANDS 0x1002
#define HCI_CMD_READ_LOCAL_FEATURES 0x1003
#define HCI_CMD_READ_LOCAL_EXTENDED_FEATURES 0x1004
#define HCI_CMD_READ_BUFFER_SIZE 0x1005
#define HCI_CMD_READ_COUNTRY_CODE 0x1007
#define HCI_CMD_READ_BDADDR 0x1009
#define HCI_CMD_READ_FAILED_CONTACT_CNTR 0x1401
#define HCI_CMD_RESET_FAILED_CONTACT_CNTR 0x1402
#define HCI_CMD_READ_LINK_QUALITY 0x1403
#define HCI_CMD_READ_RSSI 0x1405
#define HCI_CMD_READ_AFH_CHANNEL_MAP 0x1406
#define HCI_CMD_READ_CLOCK 0x1407
#define HCI_CMD_READ_LOOPBACK_MODE 0x1801
#define HCI_CMD_WRITE_LOOPBACK_MODE 0x1802
#define HCI_CMD_ENABLE_UNIT_UNDER_TEST 0x1803
#define HCI_CMD_WRITE_SIMPLE_PAIRING_DEBUG_MODE 0x1804
More information about the freebsd-bluetooth
mailing list