Update on V1Driver for V1-Gen2 (and Gen2)

mswlogo

Software Developer
Advanced User
Premium Member
Software Developer
Joined
Nov 1, 2014
Messages
4,002
Reaction score
4,260
Location
MA
This crashing that some folks are running into is real hair puller. I kind of expected something like this but things were going pretty smooth and thought I could take my time.

The first releases to Beta and Finally to the App Store were not that large a change. Mostly fixed grossly wrong stuff to make it more usable. Most of that was the Check Hardware feature (mostly for newbies). But it was crashing even with that feature off for folks. Except one check was accidentally not under that optional switch. So I fixed (so that users to could test with that OFF) and it Still Crashed.

Then I got a nice V1Driver log that looked like it might be pointing out the problem. It was new a handler I put that I should have put years ago to help monitor things are working correctly.
So I took that out. Still crashing for some folks.

I started wondering if it was just faster phones, many crashes were on iPhone Pro 11's, I still run with an X. But I got crash reports on iPhone 7.

Problem is the crash reports point to Valentine API Library code. Not my code. And this library is NOT technically designed for Gen2 !!
But it mostly still works if you use it very carefully.

Now some history:

First release for iPhone (maybe Android too, I forget) were just Binary libraries, no Source code.
That's what I started with. I did a lot of work arounds for things lacking in that library to make AutoConnect work.

Later Valentine released a new iOS Library with source for iOS.
I never bothered to use it because I did so many work arounds that were working solid.

When I did Android, the library Source was available. I ran into so many issues I "embedded" their source code into V1Driver and fixed probably 50 problems (months and months of work).

Since the iOS library is newer and source existed, I just finished "Embedding" that "old" iOS library. Completely different interface than what I was using.
Changes like this are what shut YAV1 down !!
I really didn't want to do this because Valentine said they are going to release ANOTHER API (and warned that it is very different) and they said by end of last week.
Well that didn't happen.

New version of V1Driver is uploaded. Debating on releasing it, probably will tonight. It's a pretty big change.
I expect a few NEW problems, but hopefully they are corner cases I missed. I did not Test Hardware Savvy on anything yet.

What's good is I have complete control over all the source now and I can get exact line numbers of failures from Apple Crash logs.
I can also add some of my one logging to the library and some crash protection.

I got zero warning from Valentine even though I prodded them a while back. I didn't ask for any freebies or favors I just wanted to be ready (for THEIR customers).
They release the hardware, with no API. Not even an Android App yet.

Android API no gitHub update in 4 years (should have been months ago)
iOS API no gitHub update in 2 years (should have been months ago)
Android App no update in 1 years (should have been weeks ago, it doesn't reveal any big secrets when connected to Gen1)

And they have rewritten the interface like 3 times.

When and if they ever do release the API I'm not sure when I'll adopt it. Depending on how much work it is and how much gain I get. Might not have a choice.

That's the scoop
 

westwind77

Advanced User
Lifetime Premium Member
Joined
Dec 7, 2016
Messages
2,915
Reaction score
5,586
I started wondering if it was just faster phones, many crashes were on iPhone Pro 11's, I still run with an X. But I got crash reports on iPhone 7.
Thank you for all of your hard work in regard to this! That said I'm running an 11 Pro and have yet to have it crash. If you need me to send you any logs of it running 'well' let me know. I have my app updates set to manual so I can keep it on this version after you push the latest version if that will help at all.
 
Last edited:

rhk118

Learning to Fly
Beginner User
Joined
Sep 1, 2019
Messages
69
Reaction score
54
Location
New England
That's the scoop
Wow, thanks so much for this. I hope you don't go through the same thing when V1 releases their updated API. Listening to the interview with Mike V and Vortex I suspect that when they update the V1 firmware they will be changing some things that might require a major overhaul of software (like laser filtering) and likely affect the API (maybe for the better, how cool would it be for them to open up raw signals and let developers develop their own filtering schemes? maybe it does that now)...so they've taken their time getting to that mound of a project just to get the physical device out the door and not hold things up, but those couple of major overhauls are coming from them at some point likely with the new API.

Question for you for iOS users - I always keep 'send crash data to developers' turned on in my settings - is this enough for V1Driver to send you crash data (does it actually make it to you?) or should we email you crash data when they occur. My plan is just drive around with V1Driver this week turned on and get used to it but I might not catch every crash when it occurs...otherwise will do my best.
 

DocTJ

PSL + X= 100
Advanced User
Joined
Nov 12, 2017
Messages
1,844
Reaction score
4,603
Location
GA
Thanks for your time and your developments
 

mswlogo

Software Developer
Advanced User
Premium Member
Software Developer
Joined
Nov 1, 2014
Messages
4,002
Reaction score
4,260
Location
MA
I don’t expect firmware changes in the V1 itself to trigger much in API changes. Possibly Config options around it.

I do expect the Gen2 API to trigger big changes. How much I don’t know.

The log in V1Driver can help with crashes and has to be manually sent. But Either TestFlight logs can be automatic or manually sent with comments. This is fairly new or it’s easier for users to do because I got a bunch of them. If you have Analytics for Developers enabled those are sent automatically (for App Store releases). Both TestFlight and Analytics are the same. But TestFlight ones are more immediate.

V1Driver log didn’t help to much on this crash. But it did give me a hint. TestFlight logs told me it wasn’t in my code and in the API but not much else. This release fixes that.

I did end up releasing beta with embedded API code. And another release to allow bypassing Hardware Savvy.
 
Last edited:

Deadhead1971

Tonight the American flag floats from yonder hill
Advanced User
Joined
Dec 7, 2014
Messages
4,162
Reaction score
7,941
Location
Central NC
Thanks - sounds complicated. I gave up programming with computers years ago in basic language. it’s not my gig. Thanks for your work

no Issues or crashes - iPhone 11, IOS 13.1.1. 128GB
 

mswlogo

Software Developer
Advanced User
Premium Member
Software Developer
Joined
Nov 1, 2014
Messages
4,002
Reaction score
4,260
Location
MA
Valentine Research really stepped it up the past few days.

They released Android App
They released Android API for Gen2
They released iOS API for Gen2

Luckily the changes were very minimal for iOS API (like 10 lines of code for me).
Android is a major change (what was public was pretty old compared to iOS).

I just released another Beta of V1Driver using the latest API.
I also fixed a fairly serious bug of V1Driver trying to connect to non V1 devices, why this popped up I don't know, this code never changed. This could cause reconnect failures, hangs or crashes. Depends on types of other BTLE near by.
 

rhk118

Learning to Fly
Beginner User
Joined
Sep 1, 2019
Messages
69
Reaction score
54
Location
New England
Newest version playing well with Savvy. No crashes past 2 days at all since I’ve been using it. V1G2 iPhone 11 Pro 13.3.1
 

jdong

Advanced User
Premium Member
Joined
Jun 5, 2013
Messages
7,347
Reaction score
11,307
Valentine Research really stepped it up the past few days.

They released Android App
They released Android API for Gen2
They released iOS API for Gen2

Luckily the changes were very minimal for iOS API (like 10 lines of code for me).
Android is a major change (what was public was pretty old compared to iOS).

I just released another Beta of V1Driver using the latest API.
I also fixed a fairly serious bug of V1Driver trying to connect to non V1 devices, why this popped up I don't know, this code never changed. This could cause reconnect failures, hangs or crashes. Depends on types of other BTLE near by.
So I'm kind of disappointed that the Gen2 API updates on github reflect relatively minor changes from the original API. Not necessarily a bad thing per se, I was just secretly hoping for some new API features, like having logic analyzer metadata on bogeys reported in every mode, or the ability for apps to see alerts hidden by big-L, or for apps to be able to mute specific bogeys by an identifier so that if a new bogey comes in the detector automatically unmutes rather than relying on the apps... or to be able to suppress an alert entirely (even not show up on the V1 display) on a per-bogey basis.

Oh well maybe one day :)
 

mswlogo

Software Developer
Advanced User
Premium Member
Software Developer
Joined
Nov 1, 2014
Messages
4,002
Reaction score
4,260
Location
MA
So I'm kind of disappointed that the Gen2 API updates on github reflect relatively minor changes from the original API. Not necessarily a bad thing per se, I was just secretly hoping for some new API features, like having logic analyzer metadata on bogeys reported in every mode, or the ability for apps to see alerts hidden by big-L, or for apps to be able to mute specific bogeys by an identifier so that if a new bogey comes in the detector automatically unmutes rather than relying on the apps... or to be able to suppress an alert entirely (even not show up on the V1 display) on a per-bogey basis.

Oh well maybe one day :)
My guess is, baby steps, don’t fix what ain’t broken and their (correct) view that most of their user base don’t care and will only generate more support calls and be confused.
 

jdong

Advanced User
Premium Member
Joined
Jun 5, 2013
Messages
7,347
Reaction score
11,307
My guess is, baby steps, don’t fix what ain’t broken and their (correct) view that most of their user base don’t care and will only generate more support calls and be confused.
Yeah and I think this makes it easier for app developers like you too. Imagine if it were a bigger restructuring of the API and all of us were clamoring for the V1G2 compatible version! :D


Sent from my iPhone using Tapatalk Pro
 

BagNDrag

Advanced User
Lifetime Premium Member
Joined
Feb 22, 2012
Messages
656
Reaction score
2,072
Are the new APIs linked from their site? I can’t seem to find them. Thanks in advance.

-Mark
 

thanks

for all the fish
Advanced User
Lifetime Premium Member
Joined
Sep 16, 2016
Messages
7,156
Reaction score
9,651
@mswlogo I may have asked before but here goes, on the main V1Driver screen I see ?. Mute. Is the ? supposed to show the A, L or l?
 

mswlogo

Software Developer
Advanced User
Premium Member
Software Developer
Joined
Nov 1, 2014
Messages
4,002
Reaction score
4,260
Location
MA
@mswlogo I may have asked before but here goes, on the main V1Driver screen I see ?. Mute. Is the ? supposed to show the A, L or l?
Thanks for letting me know this, but yeah, it should be A,L or l

Can you run down how you have your V1 (G2 I assume) setup and what mode is showing on the V1.
 

thanks

for all the fish
Advanced User
Lifetime Premium Member
Joined
Sep 16, 2016
Messages
7,156
Reaction score
9,651
Custom Frequencies Little L 'l" Logic mode.
so V1 CD shows Little "L."
 

mswlogo

Software Developer
Advanced User
Premium Member
Software Developer
Joined
Nov 1, 2014
Messages
4,002
Reaction score
4,260
Location
MA
Custom Frequencies Little L 'l" Logic mode.
so V1 CD shows Little "L."
Hmmm, I know I tested that case, but I did do a lot of work since then. I'll fix it.

Thanks
 

thanks

for all the fish
Advanced User
Lifetime Premium Member
Joined
Sep 16, 2016
Messages
7,156
Reaction score
9,651
Hmmm, I know I tested that case, but I did do a lot of work since then. I'll fix it.

Thanks
BTW, latest beta, but I have seen this for as long as I remember, and don't believe switching modes made a difference.
 

mswlogo

Software Developer
Advanced User
Premium Member
Software Developer
Joined
Nov 1, 2014
Messages
4,002
Reaction score
4,260
Location
MA
BTW, latest beta, but I have seen this for as long as I remember, and don't believe switching modes made a difference.
It's fixed, will come in next Beta. Thanks.
All Modes with CustomFrequencies was broken.
 

Discord Server

Latest threads

Forum statistics

Threads
87,857
Messages
1,336,527
Members
22,130
Latest member
JerseyMike
Top