External bluetooth controller - more commands

Evgeny Kurshev shared this idea 1 year ago
Collecting votes

I use external bluetooth controller on my bicycle - this gamepad, manually adopted for handle bar mount (result). This is cool feature!

Please, add this commands to "Hardware buttons" part of config.cfg:


  • Dashboard on/off
  • Open "Quick new point" dialog (definitions tiled list)
  • Speed auto-zoom on/off
  • Zoom lock on/off
  • Swap two last maps

And complex idea: two commands to change map - go up and down by "Quick map switch" list. I understand, that when I change map, this list changes. I don't know good UX solution, bot it will be very useful to cycle through more than two preselected maps using one or two buttons.

Comments (17)

photo
1

As I'm also a happy user of this feature (see http://help.locusmap.eu/topic/bluettoth-button-integration), I would appreciate having more functions accessible via BT (or any other "keyboard").


Seems like I will have to search for a small device with more buttons, though ;-)

photo
1

One more wished command :) (after more controller usage)

  • Route recalculation

photo
1

+1 vote for this improvements

photo
1

More actual description (from another topic):


Simple commands (map existing command to keycode):

- (!) Route recalculation

- (!) Open "Quick new point" dialog

- Dashboard on/off

- Speed auto-zoom on/off

- Zoom lock on/off


New function (but great for bicycle remote control): change maps. I see two simple solutions:

- (simple) change to previous map (== swap two last maps). I can select scheme, then sattelite image. An on bicycle, swap it with one button.

- (complex) two keys for going up and down through "Quick map switch" list.


Current solution with keycodes in config.cfg is very easy to use with cheap gamepad. Now, I don't know how to do this using intents.

photo
1

@Menion: wouldn't make it sense to give any control/function a certain token and to be able to fire this token via bluetooth.

Of course a control-avalaible-and-input-makes-sense-function needs to be run, but just a detail.

Just an idea.

photo
1

I also have the VR remote control suggested by Evgeny. The buttons work fine, although for switching the display off (hardware_buttons_action_display) one must release the button quickly enough for not triggering a "display on" with the same button press.

But the real problem is LocusMap's sluggish response to joystick events. The joystick sends KEYCODE_DPAD_DOWN/UP/LEFT/RIGHT keycodes (assuming the remote works in mode C or D). However, these keycodes seem to be buffered and become only effective when LocusMap updates the screen for some other reason. The key events themselves don't seem to trigger a screen update. So without having GPS activated, the screen is basically never updated and the joystick becomes unusable. With GPS activated, it probably depends on the GPS update rate and related settings how fast and smooth the response to the joystick feels. Given how smoothly the panning works with normal touchscreen gestures, there seems to be quite some room for improvement of handling KEYCODE_DPAD_XXX key events, unfortunately.

photo
1

That's true.

Joystick works bad after smooth screen move was implemented (don't remember version).

In time, when I was made video, it was ok.

photo
1

Thanks guys, an issue with key-events will be fixed in next version.

photo
photo
1

I have exactly the same problem, but I thought that is related to my home made Bluetooth Device. I think I use cursor keys, but the behaviour is the same.


So it is related to some Locus Enhancement, can there be a fix?

photo
2

Yet another mod for attaching the R1 Remote Controller to the bike. I replaced the bottom part of the controller with a 3D-printed part that can be clipped to a bracket which is fixed to the handle bar. In comparison to Evgeny's solution the controller is placed a bit higher above the handle bar and more to the front. It could be lowered by 5mm, but I actually needed the vertical space so that the controller wouldn't collide with the brake fixture. And the bracket had to be thin enough (12mm) to fit between the grip and the brake fixture. Turned out to be more complicated than anticipated - and all that for just a few stupid buttons. Let's see how it is holding up.


20172b23606cb9ed4af4d35c40867104384c98dcf342949a8960c6563dd807b2

4679216d51463d69ffbc3ef61ad461e1af90712835aad1d542ce5230eeaf57b6

photo
1

Great!!!

Can you share 3d models?

And how did you fasten R1 to printed bottom part?

photo
1

I will share the models after next weekend, I guess.

The bottom part is supposed to clip on, much like the original. But these small clips tend to easily break, at least when printed in PLA. So I don't rely on the clips but also glued a piece of plastic with a nut in it onto the inner mount frame, between battery and the PCB for the lower front button. This allows to fix the back part with a M3 screw to the inner frame which, in turn, is fixed to the front part by three smaller screws (in the original already). The M3 screw also kind of attaches the mount bracket to the back (see 2nd picture in my previous post) , but this is not really stable enough as far as the bracket goes. So once I had adjusted the angle of the bracket to my liking, I glued it onto the back in that position.

8b74222cb4f2f638ed559405dffb0e01

photo
1

Wow! This is the most sophisticated solution so far! Well done!

photo
1

Thanks, Zossebart.

And here are the 3D models: https://www.thingiverse.com/thing:2879255

photo
photo
1

One more interesting remote: https://aliexpress.com/item//32832266900.html

Easy mounting with integrated rubber strap.

photo
1

Evgeny Kurshev, Will this device work with Locus?

photo
1

I just found it and have no plans to buy.

I think, music player (camera, etc) can try to intercept some buttons, but there is some methods to prevent.

Somebody can try this remote and report to all of us :)

photo