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

Option to preload based on profile? #45

Closed
byronbrewer opened this issue Dec 3, 2022 · 2 comments
Closed

Option to preload based on profile? #45

byronbrewer opened this issue Dec 3, 2022 · 2 comments

Comments

@byronbrewer
Copy link

If I understand the preload option correctly this is what allows Ki2 to be launched so the data fields load in the ride app. Not all of my bikes have Di2 so it would be awesome to be able to control which profiles preload Ki2 so that it's not running when I'm not riding a bike that has Di2.

@valterc
Copy link
Owner

valterc commented Dec 3, 2022

That is not really how it works. Let me try to explain:

  1. The first time you open a ride profile sometimes the SDK applications (like Ki2) take a second to be discovered in the ride app
  2. The Karoo ride application has a bug that does not wait for these SDK applications to be discovered
  3. When this happens, sometimes, visual SDK elements in the profiles will be missing (like the text/graphical elements from Ki2)
  4. The workaround for that is to open a ride profile, back out and open it again - this way the Ki2 and other SDK applications will be already discovered and registered in the ride app the second time that is opened.

The preload option just starts the ride app and then closes it during Karoo startup to 'pre-discover' all SDK applications and hide this Karoo bug.

(Keep in mind that even when the SDK elements are missing and/or preload is disabled, the SDK apps will still be started and running when you start a ride, it's just the visual elements that will not be visible.)

If you use a profile without Ki2 elements, the Ki2 application will still be 'loaded' in Karoo - we cannot really control that. But if you don't have a corresponding Di2 system in connection mode, the connection will not be established and basically the app will just be dormant in the background, not doing anything or consuming resources.

@byronbrewer
Copy link
Author

Ah, that makes sense. I was thinking it would impact power consumption. Thanks for the detailed explanation.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants