Wonderlinq support

Tony Rosselli shared this idea 12 days ago
In Progress

Wonderling is a interface to BMW motorcycles electronics and the handle bar wonder wheel.

I allows the BMW handle bar wheel to control a cell phone that is bluetooth connected.

I use Locus as my mapping software on the bike and would like more function control of the Locus map software, Currently the wheel can be used for zoom in and out. Please consider working with

Blackbox Embedded the makers of Wonderlinq. https://blackboxembedded.com/

thanks

Tony

Comments (1)

photo
1

Hello Tony,

I'm thinking (and searching a little) about this idea and I'm not sure how we may help here.

Locus Map should already support basic movement & back commands that this controller does. For deeper integration, there should be a need for some effort on blackboxembedded.com side. Locus Map already offers a wide range of control options also for 3rd party systems like this over so-called "Action tasks".

One very nice example of a very similar controller that is already well integrated with Locus Map is CarpeIter.

Menion

photo
1

Hi Menion,

I'm one of the developers of the WunderLINQ. The WunderLINQ is a combination of hardware and software. Our App is a hub of sorts that launches apps, controls devices like GoPros, shows performance data, etc. The hardware is essentially a Bluetooth keyboard.

Basically we need the following as map zooming already works with the WunderLINQ hardware.

  • An intent to launch Locus without interrupting current navigation
  • An intent to launch Locus and navigate to a lat/lon
  • An intent to launch Locus and view a lat/lon

We also would need you to map the ESCAPE Keycode to launch our URL, or as we suggest in our documentation to add a calling app argument to your launch intent/URL then have ESCAPE call that.

Our developer documentation details a basic integration between our apps, we've described a way that other developers could use and wouldn't be specific to the WunderLINQ.


We have quite a few mutual customers and would be willing to help in any way I can.

Keith

photo
1

Hello Keith,

nice to meet you and thanks for additional information.

Your three points should be already possible with basic intent system offered by Android, this should not be a problem. The question is if you are also able to add some Locus-specific features to your control software.

As I wrote in my previous post, Locus Map offers quite complex control over mentioned "Action tasks". Mainly for motorbike navigation, I may suggest quite a hidden feature quick_action_menu which is currently available only over this menu.

ESC key, I'll check it. Is there any method of how to test proper implementation without purchase your hardware?

Menion

photo
1

Hi Menion,

Nice to meet you as well.

I must not be looking in the right place for the intent documentation? I also tested using the Android default URIs like "google-navigation:" and "maps.google.com" but can't seem to get Locus Map Pro to show up in the Android list of apps supporting those URIs. I did work out the ability to launch Locus Map without interrupting current Navigation worked out.

I'll look into what I can do with the quick_action_menu Action Task.

You can actually test with any keyboard, our device sends the following keycodes, UP, DOWN, LEFT, RIGHT, ENTER & ESCAPE

Thanks for your help!

Keith

photo
1

Hello Keith,

"google.navigation" intent is not implemented in Locus Map. Based on these docs, I've added it for a query with defined coordinates. So will work in next Locus Map 3.41.0 version.

Support for ESC key: I just tried to add it, but seems that by BT keyboard send some weird ESCAPE key_event that cause that every app is minimized. So support for ESCAPE should be also since 3.41.0 working, but it needs test because I can't simply verify it's functionality.

Menion

photo
1

Hi Menion,

Awesome, thanks for adding support for "google.navigation" Which intent/URL do I use to open LocusMap to just view a Lat/Lon passed to it?

Some older version of Android used the ESCAPE keycode as BACK keypress, is this what your seeing? I forgot to mention the WunderLINQ app is free in the app store. If you would like I could give you beta access so you could test the whole flow?


Thanks for your work on this!

Keith

photo
1

Disregard my first question, I've worked viewing a waypoint out. :)

photo
1

Hello,

glad you find a solution on the first point. Basic links like http://maps.google.com/maps?q=50.539097,13.784375 and similar should work (and many others).

ESC key ... it works more like a "HOME" button, completely in all apps. And the home button is "unstoppable" :). Anyway, best if you will be able to test it in the next Locus Map version. If there will be a problem, we may do one or more iteration steps of course.

Btw. if you want to speed it up, I'll be probably today publishing a new Beta version, so you may give it a try.

Menion

photo
1

HI,


Weird, none of my test phones treat the ESCAPE key this way. Could you tell me the device and Android version your testing on?


Just signed up for the beta, I'll start testing.

photo
1

Just tried the current beta passing it a point in the following format google.navigation:q=lat,long

Locus opened and searched but found no results for the point.

photo
1

Hmm, how you test it? There should be no "search", just immediate display of "Navigate to" screen.

I'm testing it directly over ADB with the command:

adb shell am start -a "android.intent.action.VIEW" -d "google.navigation:q=50.1,14.2"
I'm just trying WunderLINQ app and found that after I've declined most of the requests on permission, the app with every action ask and ask and ask and warn again on disabled permissions. Event worst after a new start. Not an ideal approach I believe. For better user experience I really suggest to ask only when you need them and in worst case once per app start.

When I defined "Home" address, then why the app needs location permission when I click "Go home", when then immediately call public intent,

Anyway selecting Locus Map in the dialog with apps that are able to handle intent, Locus Map is correctly started and seems to handle received intent "google.navigation:q=50.0750555,14.4531749&navigate=yes" correctly, so it display "Navigate to" screen with coordinates predefined as target.

photo
1

Thanks for your suggestions. I'm actually planning a permissions overhaul.

You can replicate what I'm seeing with the following command:

adb shell am start -a "android.intent.action.VIEW" -d "google.navigation:q=38.847021,-104.8236649999999&navigate=yes"

Using 50.1,14.2 works for me as well.

photo
1

Negative coordinate numbers are always problems for people living in north-east part :).

Thanks, fixed.

photo
1

Thanks, I'll watch for the next beta to test.

I had a question in regards to your ESCAPE key findings. None of my test phones treat the ESCAPE key this way. Could you tell me the device(s) and Android version(s) your testing on?

photo
1

Ah sorry. Most probably weird keyboard. Just checked it on the second device and the same result, so it seems not to be device-dependent. Anyway, it's most probably not important. Important is if currently implementation (in already published Beta version), correctly reacts on "ESC" event, so please test it. If not, I'll try to connect a different keyboard for the test.

photo