I'm using the SmartRF06 Eval board, CC2650EM, and the SimpleBLEPeripheral app. I've got the CC2650 module paired up with my Android device, and I've made an App that has a seek bar (slider). When the seek bar moves, it sends a value (1 byte) to the CC2650. The CC2650 then adjusts a digipot using SPI. The problem is that the seekbar fires it's actionlistener so fast that a lot of the data isn't processed, so rather than a smooth adjustment of the digipot, it pretty much just jumps to a value. When I say "so fast" i don't think it's so fast in the electronic world (maybe 10 times a second tops). So probably about 100ms between transmissions.
I'm using the GATT profile, and a characteristic that's read only on the CC2650 (UUID 0000fff1-0000-1000-8000-00805f9b34fb). On the Android side I write the value to the gatt characteristic with write type, WRITE_NO_RESPONSE. So it shouldn't be expecting an acknowledgement. (?)
I've already disabled the LCD screen, increased the SPI speed, and the difference is slightly noticeable but still not where I want it to be. I'm thinking it's something in the module code rather than the Android. Do I need to disable notifications on the CC2650 for that characteristic? What kind of speeds can I expect using GATT? Any ideas?
I would like to add, it looks like it's receiving all of the data. I swipe the seekbar from one end to the other, and in about the course of one minute the voltage over the digipot slowly adjusts between it's minimum and maximum range. I've done this before with an arduino and a $10 bluetooth module, so it's not the digipot...