Skip to content
Home ยป BarButtons ยป BarButtons FAQ

BarButtons FAQ

What navigation apps are compatible with BarButtons?

See the page with compatible applications.

I use an application that is not supported

If the application has keyboard support, but it is not compatible with the current keymaps, let me know via the contact form, maybe we can tweak the keymaps to make it work.

If the application is wildly different, you might want to try Tasker or Automate to take specific actions based on keystrokes. Some examples of this are on the application page.

Is JaxeADV a commercial organization?

No, I’m just a nerd that likes to ride motorcycles ๐Ÿ˜‰

Is there warranty on the BarButtons?

Not formally, but in case of a defect get in touch and we’ll probably work it out

What phones are supported?

Most modern phones/tablets are supported. At a minimum, the device must have Bluetooth Low Energy (LE). BarButtons have been used on

  • Blackview BV5100 (Android 10)
  • Blackview BV9500 plus (Android 9)
  • Oneplus 5 (Android 9)
  • Samsung active tablet 2 / 3
  • Samsung Tab A 8.0 (Android 11)
  • Samsung S20FE 5g (Android 13)
  • Samsung S7 (Android 8.0)
  • Lenovo Tab4 8 plus (Android 8.1)
  • Lenovo Tab M10 FHD plus (Android 10)
  • Realme gt master (Android 12)
  • Ulefone Armor 7E
  • Oukitel RT3
  • iPhone

BarButtons don’t work on devices that don’t support Bluetooth Low Energy (BLE), including:

  • Samsung Xcover2 (Android 4.2.1)
  • Samsung Galaxy Tab A 7.0 (2016)
  • Blackview BV6800 Pro
  • Huawei P8 (GRA-L09)

note: check app compatibility closely for differences in iPhone and Android

If you have connectivity issues let me know!

Do the BarButtons support Push-to-Talk (PTT)?

Yes and no: the BarButtons don’t support native PTT support (yet). You can however map a ‘direct press’ key to the PTT broadcast intents using Automate or Button Mapper.

To set up PTT on Automate:

  • Install Automate on your phone via the Play Store. Enable the right permissions as indicated by Automate
  • Import this flow: PTT intent on F3. This sends a broadcatst intent android.intent.action.PTT.down when an ‘key down’ on F3 is received and sends android.intent.action.PTT.up when a ‘key up’ on F3 is received.
  • Configure the flow to use the correct ‘direct press’ button on a BarButtons keymap. Edit the flow’s Key Pressed component.
  • Start the flow in Automate
  • Ensure that your PTT app listens to the intent.
    • In Zello you can go to Options > Push-to-talk buttons > (+). If you now press the button on the BarButtons, it should register as ‘Hardware button’. Assign a default contact to this button.

Are the BarButtons rain proof?

They are pretty rain proof, I’ve used them in heavy rain with no issues. I don’t recommend leaving them out in the rain all year round though.

You can improve waterproofness by adding a layer of RTV sealant on the mating surface of the front and back case. Alternatively, you can add potting or silicone glue in the case to isolate the buttons and PCB.

Can I submit pull requests?

Yes, please get in touch via the contact form.

What Arduino libraries do you use?

The BarButtons use an ESP32-C3 Arduino board to emulate a Bluetooth keyboard. These libraries are used:

  • ESP32 BLE Keyboard library by T-vK. This as an awesome library to emulate a keyboard using Arduino
  • Keypad library by Chris–A. The buttons are connected in a keypad arrangement. Initially this was done to minimize the number of wires between the Arduino board and the buttons since the board was remote in the earlier versions. To maintain compatibility, the keypad circuit is still used.

Can I connect the BarButtons to 12V of my bike?

You can not connect the BarButtons to the 12V of the bike directly, but you can use a converter that transforms the voltage on the bike (usually between 12-14V) to a steady 5V. I have used a buck converter like this one successfully: https://www.aliexpress.com/item/32817933017.html. You connect the 5V to the VBUS pin on the Arduino board. This is similar to how USB works, since a USB charger also converts the bikes 12V to 5V. I have heard of people who have successfully added the buck converter into the BarButtons case, but that is a tight fit ๐Ÿ˜‰

Do you have a suggestion for USB chargers?

I am using two USB chargers on my bike:

How can I see the keys that are sent to my device?

You can test the pressed keys on the online keytester here: https://jaxeadv.com/barbuttons/keypress-tester/

BarButtons user Teazel has created 2 apps to verify that the keys of the BarButtons are correctly received. You can check them out here:

On Android there are 2 additional apps that you can use: KeyEvent Display and Which Button / Key Tester.

Some keys work as expected, some keys don’t. I live in a non-English speaking country

There is probably an issue with the Keyboard Layout. The “fun fact” is that all keyboards are (sort of) the same as far as hardware goes, and that the interpretation of keys to characters is dependent on the Keyboard Layout you have configured on your phone or computer. The most widely used Keyboard Layout is US International. This is however different from other keyboards, for example for the location of the + and – keys, as you can see in the picture below:

You can compare different Keyboard Layouts interactively on this website.

Unfortunately, Bluetooth keyboards (like the BarButtons) can’t share information about the intended Keyboard Layout. This is only configured on the phone or computer.

Therefore, if you use, for example, German Keyboard Layout and type a -, you get a รŸ, and if you type a + (shift + =) you get a ` (backtick). These characters are not interpreted by navigation apps (usually) that expect - and +. Therefore, you can’t control the zoom levels using these keys, if your Keyboard Layout is configured as German. On other Keyboard Layouts, similar issues are present.

To fix this, you need to set the locale of the virtual keyboard that the BarButtons provides to US International. You can do that like this:

  • Android: Settings > System > Languages & input > Physical keyboard (or similar). There set the keyboard layout to US International.
  • iOS: Settings > General > Keyboard > Hardware Keyboard. There set the keyboard layout to US International.

You can check if the + and - are sent correctly if you open a text field on your device and press button 1 or 2 on the BarButtons. You should see +-.

A better way to resolve this problem in the longer term would be for applications to support characters that are the same across different keyboard layouts, such as the Function keys.

When the BarButtons are connected, I no longer have a virtual keyboard?

Since the BarButtons are, as far as your phone/tablet is concerned, a normal bluetooth keyboard, some devices turn off the virtual keyboard. This is not what you want . You can change this

  • Android: go to Settings > System > Languages & input > Physical keyboard (or similar). Enable ‘Use on-screen keyboard’
  • iOS: There does not seem to be an option for this, but if you know one, let me know!

Can you recommend a screen lock app that works with BarButtons?

When using a smartphone when it’s raining, the raindrops can cause unintended gestures on the screen. To mitigate this, you can use an app that disables screen input. The problem is that most apps also disable keyboard input, except for Touch Lock by 90s apps. (Android)

How can I change the SSID of a hotspot on an iPhone?

On iOS you can’t change the SSID without changing the name of your device:

  • Open the Settings app on your iPhone.
  • Go to: General > About > Name
  • Next, tap the โ€œxโ€ in the text field to delete the current hotspot name.
  • Enter a new hotspot name