BLE Friend mouse emulation DPI

For CircuitPython issues, ask in the Adafruit CircuitPython forum.

Moderators: adafruit_support_bill, adafruit

Please be positive and constructive with your questions and comments.
Locked
User avatar
Gizm0
 
Posts: 13
Joined: Thu Jul 05, 2018 3:21 am

BLE Friend mouse emulation DPI

Post by Gizm0 »

Hi All,
I have integrated a BLE Friend (UART version with switch) to an iPhone 14 for use as a disability and accessibility device. The unit functions just like a mouse, and you can move the pointer around the x-y axis, and perform button actions. This uses the Adafruit_BLE.h and Adafruit_BluefruitLE_UART.h libraries.

While I can get the project to work, I notice that after a phone and BLE Friend power down/reboot, the DPI setting of the mouse changes.

For example, if I code the unit to move 100 across, and 100 down, this results in the pointer always landing in the same spot (after sending some commands to move to the top left so you have an "absolute" reference).

After the reboot, the location where the pointer lands for the same co-ordinates randomly doubles so it lands where 200x200 would be.

The co-ordinates do not change, and the code does not change - it seems that the iPhone and BLE negotiate a random supported DPI each time.

Is this related to perceived signal strength at connect time, or what else could be causing this random behavior?

Currently I am not performing a factory reset in the code, and the device pairs every time very reliably - am I missing something?

Locked
Please be positive and constructive with your questions and comments.

Return to “Wireless: WiFi and Bluetooth”