Export to GitHub

btstack - issue #94

btstack gps demo freezes after a few minutes


Posted on Nov 3, 2010 by Helpful Bird

What steps will reproduce the problem? 1. turn off iPhone BT 2. turn on external bluetooth gps device (Qstarz BT-Q818X) 3. open GPS app (btstack gps, from cydia store) (DEMO VERSION) 4. wait a minute

What is the expected output? What do you see instead? Everything works great for a minute or so, but then the app seems to give up. When running, all the numbers are rapidly changing, everything looks good. But after a few minutes, it all stops completely.

What version of the product are you using? On what operating system? iOS 4.1 (jailbroken) BTStack GPS 1.5-25900 (demo version)

Please provide any additional information below. I know the demo version wont pass GPS data to other apps, but I dont want to buy the full version if it will have the same issue. Is the demo version supposed to time out after a minute or is this a true problem?

Comment #1

Posted on Nov 3, 2010 by Swift Ox

hi. no this is not intended. can you get /tmp/hci_dump.pklg from your device after this happens and upload it here please?

Comment #2

Posted on Nov 3, 2010 by Helpful Bird

Yes, although not now. I am at work. When I get home tonight I will run through the process again and get that .pklg file for you.

Comment #3

Posted on Nov 3, 2010 by Swift Ox

at work too, and usually much slower with responses. don't worry :)

Comment #4

Posted on Nov 3, 2010 by Helpful Bird

Okay, so I got home and tried it again. This time, it worked like a charm. So I'm gonna go ahead and say that you fixed it! Thanks Matthias, I'll be purchasing a full license.

Comment #5

Posted on Nov 4, 2010 by Swift Ox

well. thanks for letting me know, and let's hope that it will stay that way.

Comment #6

Posted on Nov 4, 2010 by Helpful Bird

Okay, bad news. I tried an on-road test this morning en route to work and the same problem happened again. In fact, it happened repeatedly. The good news is that I realized I can email the file you requested straight out from iFile. So I waited for BTstack to freeze, then emailed the file to myself, then started over. I got through several iterations of this process, so I have several versions of the file, all of which are a different file size, so I hope there is useful information here.
I have attached them all, in chronological order. I added a 1-5 in the title of the file so you can tell the chronological order.

I'd say it took about a minute each time for the freeze to happen. One time it happened shortly after the screen auto-locked on me. So the next time I got it working, I used an SBSettings toggle to disable autolock. Doing that triggered another freeze as well.

Thoughts?

Attachments

Comment #7

Posted on Nov 4, 2010 by Swift Ox

thanks for the logs. * can you try with screen auto-lock disabled (in the settings without any hacks) and not pressing the power/sleep button? * what's that other device that constantly connects to your iPhone and does a service discovery request? (it's different from the ones by Mac and Windows)

Other than that, it looks like the GPS just stops sending. This might be related to a bug in the credit-based flow control, I cannot tell at the moment who's fault it is. The freeze just means no data coming in, not really that the device locks up (which is good)

And yes, iFile (even the free version) is awesome. :)

Comment #8

Posted on Nov 4, 2010 by Helpful Bird

Okay, I disabled auto-lock in settings (the normal way). The freeze happened almost immediately. Here's the log.

The other device you saw in this morning's logs has got to be the BMW bluetooth telephone service. Think that could part of the problem? Although now that I'm in the office, there's no way BMW bluetooth is getting in the way.

Attachments

Comment #9

Posted on Nov 4, 2010 by Swift Ox

the BMW bluetooth is not supposed to create a problem. in log #6, which is very short, the GPS stops sending after only 4 messages although it received 48 credits. Here is suspect the GPS to be either broken or maybe the battery is down? Can you make sure the battery is fully charged? (blind-guessing as there are no anomalies in that last file)

Comment #10

Posted on Nov 4, 2010 by Helpful Bird

I got this device in the mail yesterday and charged it to full right away. I doubt the battery is the problem. It may be a faulty device entirely. After the last attempt (the super-short one), I got the connection working again. It's holding pretty good for now, and has held strong for a while. If it freezes again, I'll post a log. In addition, when I get a chance (may be a few days), I will try it on my girlfriend's phone. If she has the same problem, I will return the GPS device for a replacement.

Thanks for your help!

Comment #11

Posted on Nov 4, 2010 by Helpful Bird

The lock held for almost an hour, so I went ahead and purchased a full license so I could run some tests with my desired app. (Harry's Lap Timer)

I've got a question for you. When I use Harry's app without the BTstack (using iPhone internal GPS), the app tells me I'm getting about 1hz updates and accuracy of roughly 100ft. When I use BTstack and the external GPS, the app tells me I'm getting a little over 3hz updates and accuracy of roughly 5 ft. So it looks like I'm getting better info to the app with the BTstack and external GPS.

However, Harry's app says "no NMEA device connected", regardless of whether I am using the external GPS device. Is that normal? Should it recognize the GPS device as an NMEA device?

Comment #12

Posted on Nov 4, 2010 by Swift Ox

The number of updates reflects how often the GPS (which sometimes can be configured) sends an update. So, if you get 3 samples/s, well, that's it. The accuracy reported by BTstack GPS is fixed/fake as I've said before.

As far as I know, the Apple SDK does not provide a way to figure out where the locations reported by the LocationManger do come from. Please ask "Harry" how the app decides that where the data is coming from :)

Comment #13

Posted on Nov 4, 2010 by Helpful Bird

I heard back from Harry.

"LapTimer accesses sensors either using the Apple API or directly. Direct access = NMEA access is supported for TomTom and G-FI only. BTstack replaces Apple's API, LapTimer doesn't see the difference, although the quality is much better."

Comment #14

Posted on Nov 4, 2010 by Swift Ox

wow. that was fast. Sounds good to me. (Not sure why external GPS are better by default. It depends on the used hardware).

Comment #15

Posted on Nov 4, 2010 by Helpful Bird

Yeah, Harry's laptimer app is great, and he is very responsive to users (as are you). I only took a snippet from his email; he is the one that recommended this particular external GPS device to me, so I think he was referring to that particular external device improving the quality of the GPS info available to the app.

Thanks again for all your help. I will keep updating here as the situation progresses.

Comment #16

Posted on Nov 4, 2010 by Helpful Bird

Problems. Ran another test on the way home and it seems to have frozen again. HOWEVER, this time it went another step. After working, freezing, working, freezing, (pulling hci_dump each time) it stopped working entirely. The GPS app gets hung at "Activating BTstack..." Worse yet, it seems that the file we've been discussing isn't being updated with this problem. I tried closing the app manually... I tried doing a full respring... Only a true power cycle solved the problem.

This seems to belie blaming the GPS hardware, dont you think?

Attachments

Comment #17

Posted on Nov 4, 2010 by Helpful Bird

How do you disable BTstack and go back to normal iPhone bluetooth?

Status: WontFix

Labels:
Type-Defect Priority-Medium