Bluetooth

ProPTT2 support Bluetooth PTT accessories for an external PTT button.

Bluetooth 2.0/3.0

SPP

ProPTT2 Android, iOS version both support PTT key through SPP.

Savox BTR-155, CODA S command: This would be a common protocol.

PTT key

Key pressed: +PTT=P
Key released: +PTT=R

SOS key

Key pressed: +SOS=P
Key released: +SOS=R

iOS control protocol for MFi Hardware

ProPTT2 is using "com.proptt2.control.pttbutton".

Special protocol

ProPTT2 also can support a special protocol of bluetooth device.

Developer's References

iOS: https://developer.apple.com/library/ios/featuredarticles/ExternalAccessoryPT/Introduction/Introduction.html#//apple_ref/doc/uid/TP40009498-SW1

Android: https://developer.android.com/guide/topics/connectivity/bluetooth.html

Windows: serial communication

Bluetooth 4.0(Standard BLE)

ProPTT2 Android and iOS(There could be issues) version support PTT key through GATT.

Common UUID for notification

Service: 0000FFE0-0000-1000-8000-00805F9B34FB
Characteristic: 0000FFE1-0000-1000-8000-00805F9B34FB
Value: 1 = Pressed, 0 = Released

Special UUID for device and notification

ProPTT2 also can support a special UUID of bluetooth device.

Developer's References

iOS: https://developer.apple.com/library/ios/documentation/NetworkingInternetWeb/Conceptual/CoreBluetooth_concepts/AboutCoreBluetooth/
Introduction.html
Android: https://developer.android.com/guide/topics/connectivity/bluetooth-le.html
Windows: https://msdn.microsoft.com/en-us/library/windows/apps/xaml/dn263141.aspx
                     https://msdn.microsoft.com/en-us/library/windows/hardware/hh450825(v=vs.85).aspx

Coda compatible mode(BLE)

ProPTT2 Android, iOS version both support Coda compatible mode.

Check name

Android version is checking that device name contains "CODA".
iOS version is checking only service UUID.

Dedicate key as a PTT

Service: 2320AE58-8394-4652-95F7-0A872AC0958F
Characteristic: 481DE929-8D4C-4D9E-A574-772A73E63977
Value(App=>Device): {(byte)0x09, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00, (byte)0x00}

Notify PTT key

Service: 89A8591D-BB19-485B-9F59-58492BC33E24
Characteristic: 894C8042-E841-461C-A5C9-5A73D25DB08E
Value(Device=>App): 0x01 = Pressed, 0x00 = Released