Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bluetooth Improvements #45

Open
lemeryfertitta opened this issue Feb 14, 2024 · 4 comments
Open

Bluetooth Improvements #45

lemeryfertitta opened this issue Feb 14, 2024 · 4 comments
Labels
discussion This issue requires further discussion before being worked on

Comments

@lemeryfertitta
Copy link
Owner

lemeryfertitta commented Feb 14, 2024

Just starting a catch-all thread here for various bluetooth-related improvements. This one can be used for discussion and spin-off issues can be created as needed. Some ideas I had immediately from using it for the first time:

  1. The lightbulb symbol could change to be a filled in symbol when connected. There is also an "off" icon available through bootstrap that could be useful. https://icons.getbootstrap.com/?q=lightbulb
  2. Current behavior requires clicking on the lightbulb each time to light up a climb. In my experience, this is a hotly debated feature. When you're boarding alone, its much nicer not to have to keep clicking the light bulb, so you can just swipe through climbs and see the LEDs update. When you're with a group, its nice to be able to look at climbs without affecting the current LEDs so you can pick your next climb while others are still climbing the current one. This feature could work in both cases by using an explicit disconnect (i.e. click the lightbulb again) to avoid changing the lights when picking a new climb.
  3. Navigating away from the results (or create) page requires re-pairing when returning to the page. For example if you light up a climb, change filters, then light up another climb. This requires a pairing dialogue both times. It would be nice to cache the connection in a way that avoids this (when not switching boards).
@lemeryfertitta lemeryfertitta added the discussion This issue requires further discussion before being worked on label Feb 14, 2024
@gardaholm
Copy link
Contributor

  1. The lightbulb symbol could change to be a filled in symbol when connected. There is also an "off" icon available through bootstrap that could be useful. https://icons.getbootstrap.com/?q=lightbulb

If I connect via my MacBook I don't get the filled bulb when a climb is active.

  1. Current behavior requires clicking on the lightbulb each time to light up a climb. In my experience, this is a hotly debated feature. When you're boarding alone, its much nicer not to have to keep clicking the light bulb, so you can just swipe through climbs and see the LEDs update. When you're with a group, its nice to be able to look at climbs without affecting the current LEDs so you can pick your next climb while others are still climbing the current one. This feature could work in both cases by using an explicit disconnect (i.e. click the lightbulb again) to avoid changing the lights when picking a new climb.

I realized that switching works extremely well, even if 2 people are connected. This is not possible in the App. I had 2 connected devices and each time when clicking the bulb it switched the climb within less than 2sec. In the App this would normally take 10 seconds due to the discovery-dialogue.

I have a feature in mind for Group-Sessions – I will add these ideas as a separate issue for discussion – maybe this could be used to distinguish between the different connection states.
or
offer a dialog on the first press of the lightbulb, like a toggle with the setting to stay connected for this session.

  1. Navigating away from the results (or create) page requires re-pairing when returning to the page. For example if you light up a climb, change filters, then light up another climb. This requires a pairing dialogue both times. It would be nice to cache the connection in a way that avoids this (when not switching boards).

if doable this would be a nice feature.

  1. On my Board the colors are a bit off compared to the normal App. The Blue and the Pink are pretty similar. Blue seems to have more red in it and so they look pretty similar, hard to distinguish. I guess the RGB code must be slightly different. Tried to make a picture, but impossible with the flares from the LEDs.

@lemeryfertitta
Copy link
Owner Author

If I connect via my MacBook I don't get the filled bulb when a climb is active.

To clarify, I haven't done anything with the filled bulb/off bulb icons. There is no indicator that the bluetooth is connected right now, that is something that will need to be improved. I'll create a spin-off issue for that.

I realized that switching works extremely well, even if 2 people are connected.

Awesome! Great to hear.

On my Board the colors are a bit off compared to the normal App.

Oh, good eye! I had forgotten that they use two different colors. In the placement_roles table, there is an led_color and a screen_color. I was just using the screen_color before, hadn't been anticipating using the leds 😄. Should be a quick fix.

@lemeryfertitta
Copy link
Owner Author

I had a longer session with two other people using their phones yesterday, both of them were using the official app and I was using Climbdex.

It was decent, but not great. There were a few issues I encountered:

  1. The button is "sticky," meaning I'd tap it, then it would hold the "clicked" state (blue background), and it was hard to tell if clicking it again while it was in this state was doing anything.
  2. There should be some indicator that it is processing the message. It's hard to tell if the click is doing anything after you have paired, and whenever there is an error it takes a pretty long time to respond (> 10 seconds). Maybe some kind of animation that indicates that we are waiting on a response from the LED controller.
  3. Not sure if the cached device wasn't working consistently or if there were issues with multiple people trying to light things up at the same time, but I was getting a fair amount of errors. Maybe some of this could be solved by some group session ideas that you mentioned @gardaholm. I could imagine some kind of "lobby" that people can join, with a "host" who owns the bluetooth connection and "guests" who can request climbs to be lit up. This would be a pretty massive feature though, as it would require some networking code and lots of new UI.

@gardaholm
Copy link
Contributor

gardaholm commented Feb 16, 2024

I had a longer session with two other people using their phones yesterday, both of them were using the official app and I was using Climbdex.

It was decent, but not great. There were a few issues I encountered:

  1. The button is "sticky," meaning I'd tap it, then it would hold the "clicked" state (blue background), and it was hard to tell if clicking it again while it was in this state was doing anything.

I had the same, but clicking worked at least all the time.

  1. There should be some indicator that it is processing the message. It's hard to tell if the click is doing anything after you have paired, and whenever there is an error it takes a pretty long time to respond (> 10 seconds). Maybe some kind of animation that indicates that we are waiting on a response from the LED controller.

we just used climbdex on different devices. Will try to do some variations with climbdex + app in different settings. The app has some settings for auto-disconnect. But I actually never had an error on any device. I heard from peter (the guy behind aurora climbing) that there are different Versions of the controller and the older are generally slower with all the connection stuff. I just had mine upgraded due to the new board. could be a reason why it feels more stable.

  1. Not sure if the cached device wasn't working consistently or if there were issues with multiple people trying to light things up at the same time, but I was getting a fair amount of errors. Maybe some of this could be solved by some group session ideas that you mentioned @gardaholm. I could imagine some kind of "lobby" that people can join, with a "host" who owns the bluetooth connection and "guests" who can request climbs to be lit up. This would be a pretty massive feature though, as it would require some networking code and lots of new UI.

Our idea here was to create a "Session" which is a shareable link. If you open this link you are part of the session:

– the host is the one which is always connected for stable and fast bluetooth connection
– everybody in the session can put climbs in a queue or playlist
– the current climb is always visible so that you can immediately add your tick
– maybe save sessions or pre-create playlists, but thats definitely for later …

definitely not easy to realize, but this would be a gamechanger for sessions :)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
discussion This issue requires further discussion before being worked on
Projects
None yet
Development

No branches or pull requests

2 participants