It is being used as a VR control controller by connecting a BLE device.
VR controller is a product of Pico that transmits ble packets to mobile phones at 100Hz cycle in BLE Connection mode.
During development, the following phenomenon was discovered.
On iOS peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error
Receive the BLE signal using
OnCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic) in Android
BLE signal is being received using.
When receiving the same signal from an Android phone and an iPhone, the following differences are observed.
Due to the delay between the previous packet and the current packet, Android has a delay value close to 10ms, and the average is 10ms.
In the case of iOS, the average is 10ms, but the actual values do not exist in the average value, and the average is formed with a large deviation.
The BLE packet contains the position value of the controller pointer to manipulate VR contents. If the user uses the controller,
Compared to Android, when using the controller in iOS, a little slowness or shaking occurs.
So, in order to receive a value close to 10ms, we ask if there is a way to get a value close to 10ms by implementing environment settings or software within iOS.
VR controller is a product of Pico that transmits ble packets to mobile phones at 100Hz cycle in BLE Connection mode.
During development, the following phenomenon was discovered.
On iOS peripheral:(CBPeripheral *)peripheral didUpdateValueForCharacteristic:(CBCharacteristic *)characteristic error:(NSError *)error
Receive the BLE signal using
OnCharacteristicChanged(BluetoothGatt gatt, BluetoothGattCharacteristic characteristic) in Android
BLE signal is being received using.
When receiving the same signal from an Android phone and an iPhone, the following differences are observed.
Due to the delay between the previous packet and the current packet, Android has a delay value close to 10ms, and the average is 10ms.
In the case of iOS, the average is 10ms, but the actual values do not exist in the average value, and the average is formed with a large deviation.
The BLE packet contains the position value of the controller pointer to manipulate VR contents. If the user uses the controller,
Compared to Android, when using the controller in iOS, a little slowness or shaking occurs.
So, in order to receive a value close to 10ms, we ask if there is a way to get a value close to 10ms by implementing environment settings or software within iOS.