-
Notifications
You must be signed in to change notification settings - Fork 39
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
iOS 14 #5
Comments
So after messing around with the some more, it turns out the apk only works with the Carlinkit dongle and not one of the clones. |
Ahh, that's a shame (also sorry for the late reply). I'm surprised it doesn't work on the clones though, I'd expect things to be pretty similar - is there a specific point where it fails, or are they totally different? |
No need to apologize for the late reply...what you have made is incredible. I changed the dongle on a whim after seeing this: https://www.reddit.com/r/CarPlay/comments/iwch1s/autokit_android_carlinkit_worked_for_a_while_then/ Not sure at what point it fails, but definitely before the phone connection is made. I was thinking of doing something slightly different (though my python skills are horrid.) It might be possible to display the H264 data on X and then VNC into it. Might end up having less overhead. Currently trying to understand your code a bit more. Attempted to play the audio packets through sounddevice, but I'm fairly far from being able to manage the speaker and microphone connection for now. Like you, I am annoyed with the shenanigans of Tesla's refusal to allow CarPlay. |
I seem to have similar issues, even with the Carlinkit dongle mentioned on the readme on iOS 14:
The device appears to register its name, and even the carkit logo appears, but then dies and nothing seems to get piped through afterwards. |
@harrylepotter Quick suggestion... If you have an RPi lying around, try throwing Android on it and see if the Carlinkit app works on it. I discovered that the knock-off version of the dongle I bought on Amazon didn't even work with the app on Android. |
@bnazari - i tried this on an old Nexus 5 i had sitting in a drawer and the carplay works perfectly. I'm suspecting there may have been some changes to the box fw - according to the app it's running |
update: I found an older (jadx-able) 2019 version of the APK. Have observed that the files uploaded seem to differ in the older release. |
...From what i can see it initialized the car audio, but then i get this message back ( |
Most of that is clearly ASCII, and it decodes to "90:A2:5B:CB:DA:90" which looks like a MAC address. I assume it's something to do with the wifi/Bluetooth support (which my dongle never had, so I was unable to debug it). |
update: ignoring that message (the mac address seems to be the Bluetooth mac address of my iphone) results in a working implementation of
@electric-monk i dont suppose whist on your jadx adventures you found anything referencing sending keypresses? I'm trying to retrofit an old audi headunit with carplay. Noticed in the android app there's config to map keycodes to things like left/right/select/etc. I have a feeling like this is possibly a msgtype=8 with Value=4, and then some additional metadata on the keycode? |
I'm sure I saw some mention of it (as you've also noticed). If I did I likely updated the "function name map" file I was using with jadx to show something more human readable, I thought I'd recently uploaded that into the repo but it looks like I didn't, I'll see if I can find it again as that might have some extra clues for anyone who wants to continue poking around in there. |
Amazing! thankyou so much! |
added support for buttons on another thread. Gist of protocol from Jad here: https://gist.github.com/harrylepotter/f4bfb37f11faf9efcfd6cd4b189cfa33 |
I uploaded the JADX function file to https://github.com/electric-monk/pycarplay/blob/master/Autokit.jobf, hopefully it has some useful extra function names in it (some that are just guesses). |
Amazing program! Have you had a chance to update the code to make it work with iOS14. The phone recognizes the device and adds it to the list of cars, but the protocol.py kicks out a "struct.error: unpack requires a buffer of 24 bytes" error. Not sure if this is a IOS14 issue or an issue with what I'm doing.
The text was updated successfully, but these errors were encountered: