valterc / ki2 Goto Github PK
View Code? Open in Web Editor NEWKaroo companion app for Japanese electronic shifting groupsets. Display gear/battery information and control Karoo ride screen.
License: MIT License
Karoo companion app for Japanese electronic shifting groupsets. Display gear/battery information and control Karoo ride screen.
License: MIT License
Is it possible to add the ability to map a long press on the hood buttons to one of the bottom buttons on the K2 so it can be used for pausing and / or lapping.
This way it would be possible to swap from the original behavior of the buttons.
Firstly thanks for all your hard work. I've got a Giant ebike equipped with Di2 shifters. Single chainring, 11 cogs on the back. The right hand side shifters take care of the rear gear change whilst the left hand side shifters look after the power assist levels. The buttons on top of the hoods do nothing, but I'd love for them to control screens on the Hammerhead2.
Details.
Giant Revolt E+
Sensor-RideControl GO, frame integrated, Support up/down from STI levers
Shifters-Shimano GRX Di2 ST-RX815-R/L 1x11speed
So I've somehow managed to bumble my way through side loading the app onto the Hammerhead2 unit. I thought that would be that hardest part done. I can open the app. Searching for the device brings up Sensor 64475, but there's no "ADD" button off to the right to push.
It seems to me (a technical dummy) that the Di2 sensor can be seen, but I'm not able to connect to it.
The Karoo is only new, it's still in the 45 day satisfaction period, so if I can't get this sorted I can send it back and grab a Garmin/Wahoo. I'd much rather keep it though.
Any help would be great. Cheers.
It would be nice if there would be a delay of 15 seconds or so for audio/beep warnings of trying to shift past highest/lowest gear. That way if you hit the shifter really quick a few times it doesn't cause the beeper to go off multiple times.
This might not be possible with the way the Karoo 2 works but it is a feature I use a lot on Garmin.
In 2018, when I have Wahoo Bolt bike computer (and it does not support Japanese e-bikes officially), it was possible to pair e-bike with bike computer as Di2 sensor to view e-bike battery %. May be it is possible to add this functionality (with small amount of time investment) into ki2?
For now, Karoo 2 and Ki2 doesn't see e-bikes at all.
One of my favorite things about the Garmin computers' support of di2 is that they beep (pretty loudly) when you shift to either the highest or lowest gear. This is really useful to hear in cases where you're on a screen not showing the gears, or you can't safely look at the screen (for example, while going fast down a curvy road). It's a great way to know that you "have no more gears"
Not sure it's possible given the API you have to work with, but it would be awesome if ki2 could do this.
Thanks for considering.
Currently new releases of Ki2 are posted in Github and must be manually downloaded and sideloaded into Karoo. This is a process that requires users to be notified of new updates via a Github account and manually update the app.
Add a feature to automatically check for updates within the app itself and if possible automatically download and prompt to install updates directly in Karoo.
The "synchro" and "limit" displays in the overlay could stand out more. Perhaps use a bold yellow font in dark mode and a bold red font in light mode?
And maybe move the text more to the lower right corner, so that it is stands out even more?
Hello valter, your app is so great I’ve bought you a coffee ;) and thanks for your support in last two questions ;)
I’m trying to provide edge remote support (I know isn’t in your roadmap); I think I can achieve with your work in ji2, but if you guide me how can map de buttons/hood with the buttons in Karoo this wil be very helpful
I know the Karoo SDK is very limited and it’s not possible to send key commands and this will be possible in ride app, but if you can provide me where is done or some kind of guide howto do in ride app, it’ll be enough and very useful for me.
I give you my email ([email protected]) if you want to write there and no dirt these comments. ;) thanks a lot
Version 2.0, I do have drivetrain and it works well and really like that display. Hood buttons are working well and I checked that buttons only was not selected.
Side note, are you in Ukraine? I spent quite a bit of time there about 10 years ago, various cities. Loved it.
I'm relatively new to this and started with the 3.7 version a few weeks ago (just got the Karoo v2) - updated to 4.0 on 4/10.
The Di2 info is available during the first part of the ride but then disappears (shows N/A on the data and graphical drivetrain fields). I believe this also happened on 3.7.
I switch screens in the same profile (don't switch profiles during a ride) so I'm not sure if that triggers something not working.
Sensors sometimes go in/out of connected status like the Garmin Varia but generally come back. I wasn't sure if this was reported so thought I would check. Thanks.
I had expected that even if I don't have a Ki2 data element on a ride profile the hood buttons should work if "Pre load ride application" setting is enabled. However, this does not seem to be the case - a Ki2 data element must be present.
Garmin's implementation of Di2 support shows an on screen notification and beeps when upon the next shift Synchro Shift will shift the front derailleur either up or down. It would be amazing if Ki2 could do the same.
This is a similar feature to #70 but is only relevant when in Synchro Shift Mode 2.
Additionally, this feature requires being able to obtain the front derailleur shift points from the Di2 system. Since this can, in theory, be changed on the fly using the iOS/Android App this probably needs to be regularly updated or requested when it is required depending on latency.
I really appreciate the work and timeyou put in to this app and would like to buy you a coffee. However, I can't find the link. Can you post it here?
It would be great to have optional on-screen notifications to accompany Di2 shifting audio beeps.
This issue follows on with the remaining functionality which is yet to be implemented from #75.
how can I program the number of teeth on the cassette and the front sprockets?
Hello
I successfully paired ki2 to my Turbo Creo's di2, but when I start the ride the ki2 app immediately crashes, 100% repro. I'm thinking perhaps this is because the bike has no front derailleur? (it's a gravel bike)
Everything works fine with my Specialized Aethos di2 setup (it does have a front derailleur)
Anyway, it would be great if the issue could be fixed.
Please let me know if I can help debug the issue.
Thanks
-Rob Boyer
Opening a Di2 when two devices are connected Simultaneously causes the
And other related data to flicker rapidly between the two active connections.
Clicking on the device appears to open all active connections not be filtered by decice ID / serial number of the one clicked upon.
See video attached
Hello! You’ve added support to di2 remotes like titan kommander (problem kommander is out of stock and it’s difficult to buy if you are in Spain etc).
You’re app it’s very interesting for gear but also for remote for Karoo (map etc).
Could you add support to garmin remote (not for di2 gears), but only for change screens etc. function that you have developed ;)
Regard
PS:I don’t know another remote (titan or garmin remote only)
thanks
Zooming in and out of the map with long-holding the hood-buttons is very imprecise. There is a very noticeable lag between the button press and the reaction of the map. That's obviously not a ki2 problem, this was also a present in the original Karoo support.
I think mapping the double-click left and right to zoom-in and zoom-out would work much better.
Could you add this options to the double-click actions?
I created some new data pages within my bike profile recently, and 2 of the pages have the "Gears" ki2 widget.
Today, on a ride (first time using this profile), the ki2 "gears" widget on only one of the data pages updated as I shifted gears, the other one did not and was stuck on 1/2 (front) and 6/11 (rear) the entire ride. Note that the graphic elements were showing, but they simply didn't update. Shifting while on the page did not cause the widget to update. The other data page with the same ki2 widget updates fine, whether or not you're on that page when shifting.
Strangely, while on the non-working data page, the audible alerts at shift limits still worked fine.
Add support for custom chainring information for bikes with systems that don't support reporting chainring information or have custom chainrings.
The default number of beeps seems to be 3. could this be reduced? I appreciate having an audio reminder of the upcoming shift etc. but the default number is tooo many! I also use the varia radar and the combo is overwhelming. I'd like just one beep for the di2 integration.
thnx, Doug
Sideloaded onto the Karoo 2 no problem, however I am having problems connecting to the DI2. The app starts the search but cant seem to find the DI2 on the bike? Any suggestions?
I have seen that in ki2 v2.0 the option to use a remote control to pass screens has been added. This titan lab model is out of stock and I have a Garmin remote control. Is it not possible to add it as a sensor? It would be amazing!!!
I dont have the audio alert on the synchro shifting, only on the max and lower gear.
I´m using the 1.0 version and the latest firmware from Hammerhead: Build Version 1.352.1409
Add option to keep overlay always visible until it is clicked/tapped.
Not an issue, but wanted to let you know that I think you may have gotten some new traction today from a reddit thread. Thanks for making and sharing this project!
reddit.com/r/Karoo/comments/zadz78/ki2_app_for_karoo_to_restore_di2_functionality/
With the preload ride option enabled it turns off wfi but does not turn it back on.
Create an option to re-enable it (if previously enabled) after the preload has happened.
If you ride more than one Di2-equipped bike and switch the Karoo between them, it can be difficult to tell which Di2 sensor corresponds to which bike, because the devices appear in the ki2 list as "Di2 someRandomNumber". It would be awesome if you could rename the devices into something more user-friendly, for example:
"Aethos Di2"
"Creo Di2"
etc. I believe the wahoo and/or Garmin computers let you do this, as well as the Karoo itself. A logical place to add a "Rename" button would be on the screen that comes up when you touch a sensor in the list (e.g. where the "Remove" button is")
I don't know how are this would be but I would throw it out there.
Is it possible to add and show the gear ratio instead of numbers? for me, numbers are nothing, gear ratio is huge.
I donated for your coffee. I hope it's not Starbucks xD
I will keep donating to maintain and improve it. Thank you!!!!
Within the control options. Navigate left / rigth, go to the map screen, etc... It would be interesting to be able to turn lights on/off, as is allowed in Garmin. Is it possible?
Hello Valterc! Sorry for ask you another question. You know I'm trying to develope some kind of remote support. I'm very grateful for your code and for your last answer (about switch mapping, etc).
I've been able to integrate ant remote (with a ant plus profile because a controller is a little diferent that a sensor or shift) and the app can change screens (inside course obviously) but I've a problem.
The problem is ... when I'm testing the app all works fine, but when I start a ride ( and connect my mobile and other ant devices) the response, sometimes, has a big delay (sometime 3s but sometimes 60 secons.. and it's like the actions are delaced , for example in a queue, and when the app has acces ... all actions are executed.. for exemple, if i push three times righ button, the app change three times the screen but with a delay of 60-90 seconds, for the first action)
I run one threat (for the ant listener in de kiservice) and I suppose there are other process that they have more priority than the app.. but this not happen with your app and hood buttons.
Could you help me ? I know your code (I've studied because I'm not an android developer . I've expertise wiht python, C++ , etc.. )
and if you can guide howto solve this in your code.
Thanks for your help
I updated karoo2 with latest software version 1.352.1409.12, and can't see any information on profile view. App is loaded and connects to di2 without ussues, but when riding or entering profile, the fields only display N/A or "..." (three dots), no information is visible from ki2 in ride.
I think hammerhead broke something, intentionally?
I have latest version of ki2 1.0. I already try to uninstall and install again, but same issue.
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.
I use the Ki2 for screen management with the Titan Lab Kommander. Since I updated to v 2.0 when I start the route it stops working.
Small request: the overlay takes a lot of room from the map. It's it possible to allow used to choose which info to show? for example, just the gear image and then remove everything below that?
Just a very minor issue, I noticed that when I select "Navigate left" for a hood button the Karoo acts as if I had pressed the right side button and vice versa.
Same for the "zoom in" and "zoom out" functions. If I set the left button long press to "zoom out" and "zoom in" to the right button long press (as it was on the original Karoo implementation) it would actually zoom in on left and zoom out on right 😆
These issues were quickly fixed during my first ride, just opened the ki2 app and changed the button actions on the fly 😉
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.