yashsingh1/xdaforums huggingface dataset:
[FYT Android Head Units] seb21:
Button for assignment must be learned in the SWC app. In config app in right upper corner you have help. Go to last page of that help and you will see the manageable assignments.
[FYT Android Head Units] Sull2:
Gotcha. I did not see that page and of course I had a non compatible button assigned. It works great now.

The double press doesn't seem to be working with my analog buttons and the long press isn't giving me the functionality I was hoping for either, seems to mess up. I'll tinker more with that later though I am happy I got the buttons configured. My canbus buttons work better for this. Maybe I don't have the timing right.
[FYT Android Head Units] matrixx1:
I have a technical question. I have a steering wheel which looks like on the picture above:

Toyota Steering wheel arrow buttons

It has 4 arrows menu button on the wheel. Left and Right are prev and next buttons. But the up and down arrows are interconnected on this unit. No matter what i set up for the up down arrows it will change the configuration of the left right arrows as well. Do you think, would it be possible to cofnigure them seperatly on this unit? on my previous MTCD unit it was possible even with canbus in the factory rom.
[FYT Android Head Units] rs200z:
Hi seb21, another issue I noticed with regards to the analog SWC buttons not working intermittently.

I have NoKill activated. When I turn off my car and back on again the next day, I noticed it loses the "Accessibility permission" as well. Need to reboot my head unit to get it working again.
[FYT Android Head Units] seb21:
Long press does not work with analog. And for double press you should set longer time. From my observations 700 ms will do.
[FYT Android Head Units] seb21:
right now there is no such possibility, maybe in the future.
[FYT Android Head Units] seb21:
I am aware of the accessibility problem.

What do you mean by "not working intermittently"?
[FYT Android Head Units] seb21:
Hi.

I updated the files on first post.

Fixed the help bug reported by @rs200z

I tried to fix the accessibility problem, and i'm really have enough of fighting sleep mode of our units. Because of this i made the accessibility service as standalone and i also put git hub link for this. If someone know how to fix this issue ,then please do it.

Accessibility Service Github
[FYT Android Head Units] Sull2:
I've not tried this version yet, on the previous if I assign a button for split screen when I press the button I get a popup notification saying this app is not compatible with split screen, though you can visually see the first app loading then the second, if I press the button again the two apps would go into split screen. Is that normal ?
[FYT Android Head Units] seb21:
Yes. That's is normal. Pressing it again forces that app to go into split screen. But not all apps can be forced to run in split screen.
[FYT Android Head Units] Matt Devo:
ok, finally got around to testing this:

HOME - toast 1, config app 5 (detected when pressed)

ALL - toast 2, not detected in config app

MUSIC - no toast, not detected (pressing jumps to BT music)

PHONE - no toast, config app 18 (detected when pressed)

CAR - no toast, not detected (pressing toggles brightness)

NAV -no toast, not able to select Carlink (but all user-installed APKs can be)

BACK toast 6, not detected in app

I have a spare unit for testing now, so can hopefully iterate a bit quicker
[FYT Android Head Units] Sull2:
@seb21 My setup is coming along nicely, though I'm in a bit of a pickle as I can't seem to get around this odd bug. I have two buttons connected to KEY1, they work perfectly fine, the issue I have is that I have one button assigned to the rear cam app and the other is assigned to the front camera app, if I launch the front camera app via the button and then launch the rear camera app via the button the apps switch no issue, if the rear camera app is open and the press the button that opens the front camera the screen either goes fuzzy or the app does not change, it's almost as if it does change but the feed is showing the wrong camera as when I exit the app the correct video feed flashes quickly. I thought I solution would be to use your X - Kill feature, it does not help though and I'm not sure why what is the difference between me closing the rear camera and then launching the front camera vs switching from one app to the other.

My question, what is the difference between me exiting the rear camera app via the soft keys in the upper left of the screen vs your user sources KILL before switching to next app ?
[FYT Android Head Units] seb21:
Get the syu.ms.apk from the first post. It should be able to configure these buttons : HOME,ALL,PHONE,BACK

For the rest i really have no idea where to look for them. Sorry.

For the Carlink setting to NAV button i have a workaround for you. It's a small app that have only one purpose : to launch Carlink. You can set it as Navi.
[FYT Android Head Units] Matt Devo:
awesome, the navi workaround works perfectly. And while it would be nice to be able to reassign CAR and MUSIC, it's not the end of the world. Many thanks for all your work on this
[FYT Android Head Units] matrixx1:
Hi i am not sure but maybe this app could help you with the reconfiguration of the hw buttons. hXXps://github.com/hvdwolf/FytHWOneKey
[FYT Android Head Units] Matt Devo:
thanks, taking a quick look, I don't have any of the hardware buttons that that app allows remapping for, so not sure how useful it will be in this case unfortunately
[FYT Android Head Units] matrixx1:
Well I was not entirely sure if you need to reconfigure hw buttons or other kind of buttons, that's why is wrote "I am note sure" and "maybe could help" ;)
[FYT Android Head Units] surfer63:
It started for the hardware buttons, but actually reacts on the call to the package name of an App. On the older systems, the hardware buttons called the app by its packagename main intent.

For example the radio is called by com.syu.radio (even though the buttons might say BAND). So if you replace the call for the com.syu.radio with something like net.osmand.plus, it will call OsmAnd.

Same for com.syu.music, which you can replace by, for example, com.spotify.music. The first time that a standard FYT app like that is called, the unit will ask to start (in this case) com.syu.music or com.spotify.music, with the "Once" and "Always" option.

Take a look at the Readme on my repo.

The app works OK, but I don't maintain it actively anymore.
[FYT Android Head Units] Matt Devo:
the only one of the HW buttons the app recognizes is the music/media button, which is helpful since seb's mod doesn't handle that one. That means the only button left which I can't remap is the CAR button (brightness level toggle) and that's not the end of the world
[FYT Android Head Units] surfer63:
CAR button? That is really the first time I hear of it.

Which app or screen is opened?
[FYT Android Head Units] Matt Devo:
it toggles the screen brightness between 3 levels. Here's the rest of buttons on the unit:
[FYT Android Head Units] surfer63:
Thanks. New to me. Also that ALL button. That right SD button is also different from old units where it was just just a cap in front of the SD slot. Or is it here as well?
[FYT Android Head Units] Matt Devo:
Out of the box, the ALL button just opened Settings, rather than the App drawer as one might expect. The SD "button" is just a cap that hinges down to reveal the SD card slot
[FYT Android Head Units] Solvin:
Works really great, thanks for that!

Two questions @seb21 :

1. There is a new MS.apk from May 2023, is there an update in the future?

2. Is it possible to program that you can select the applications that should not be killed in the Nokill function? That would be a feature request from me. The background is that only one app should not be killed on my HU and that is Google Maps.

Thanks!
[FYT Android Head Units] seb21:
1. Send me the new file

2. Yes it is possible to have a set of packages that are not killed when the unit goes to sleep.

In the config app go to Misc page and press "Set up external assets" button. The ms.apk internal config files will be copied to a folder "sdcard/ms_mod_prop". In the folder you will find a file named "protected_app.txt" it is "no kill" list. You can add google maps package to that list and reboot the unit. The rest of the files in that folder you can leave or delete if you don't want to edit them.

One more thing : protected_app.txt is in use when the No Kill function is disabled.

If google maps are still killed after adding it to that list you must edit one more file : "skipkillapp.prop" in oem/app folder. To edit this file copy it to a pen drive and edit it on your pc. To copy it back use the lsec method.

skipkillapp.prop is a list for android low memory managment. To be sure that your chosen package is not killed due low memory set it's priority to "-15" . Man should not assign -15 priority to third party apps, but adding one package should not be problematic.
[FYT Android Head Units] Matt Devo:
1) here you go. taken from AllAppUpdate.bin 20230602
[FYT Android Head Units] Solvin:
This is my File:

@seb21 : I think you can compare the two files and which one is newer?

Thanks for the No kill description. I will try it asap.
[FYT Android Head Units] seb21:
Yours is from 17.05.23 . @Matt Devo provided file from 30.05.23

But i will for now port the mod to 17.05 version, because it is obfuscated in the same style as recent versions.

The file from 30.05 is completely different, that mean that i must seek and identify all places used in my mod.This will be not easy. I'm wondering if FYT has done that specially to make modding more difficult.
[FYT Android Head Units] surfer63:
Is the 30-05 file from Matt from an M6 Pro firmware?

@LLIyT_HuK mentioned in another post that the only difference between an M6Pro and a "normal" Mekede is the com.syu.ms. apk
[FYT Android Head Units] seb21:
I don't know from which firmware Matt took the syu.ms.apk, butt i suspect that all forthcomming versions in all manufacturers firmwares will be obfuscated the same way as 30.05 version. Maybe i'm wrong but i think the syu.ms.apk is provided by the FYT to all manufacturers.

Beside this i have looked in older M6 Pro ms.apk and there was no big difference to other manufacturers versions.
[FYT Android Head Units] surfer63:
Did you try jadx-gui? It has an "un-obfuscate" option.
[FYT Android Head Units] Matt Devo:
it's from `MKD M6PLUS-UI29R-4L-850-国外360-付费语音-横屏2k-20230602-lzp.rar` which is an update for the M6ProPlus. I've used it on a M6Pro and M500 w/o issue, only changing the config.txt as needed, and stripping AllAppUpdate.bin before install
[FYT Android Head Units] seb21:
Yes. It makes the code more readable but for me it has no use. I need in decompiled java the same names of classes and methods as in smali.
[FYT Android Head Units] seb21:
Exactly. The software is the same, the only change is configuration.
[FYT Android Head Units] Solvin:
It's working with protected_app.txt, thank you!

One last question to the skipkillap.prop: To copy the file back, I have to put only the lsec6315update and skipkillap.prop on the USB-Stick? I will add your mod.accessibility.service, because every time it's being killed....
[FYT Android Head Units] seb21:
To copy it back to your unit use exactly the same method used for replacing the syu.ms.apk. Just add (you can remove the content if you don't wish to replace your syu.ms.apk) these lines to XXXXlsec.sh script

rm -rf /oem/app/skipkillapp.prop
cp /storage/sdcard1/skipkillapp.prop /oem/app/skipkillapp.prop
chmod 0744 /oem/app/skipkillapp.prop

And check if the mod.accessibility.service is in protected_app.txt .If not then add it.
[FYT Android Head Units] LLIyT_HuK:
I used the old version, probably added support for m6 in the new ones, but it also works on regular FYT. Haven't checked yet)
[FYT Android Head Units] seb21:
It's a 17.05.23 based mod.

IMPORTANT :

As i do not have a unit now to test this i'm not sure if i made no mistakes. Please test it and let me know. If the unit will behave abnormal then flash last good version and check in "sdcard/crash" folder for crash reports from ms.apk. If there will be some of them then send me the most recent one.
[FYT Android Head Units] Solvin:
Already flashed and ready for a test ;-)

Edit: Damn that version is crazy buggy. No button was working and I cant lock my car. No sound etc. Flashed back to the old version and now everything is ok.

Log attached.
[FYT Android Head Units] seb21:
It was a stupid mistake.

Test this.
[FYT Android Head Units] Aran:
Thanks for this mod. Installed it with the info from this topic. All works great.

Is it correct that the 19000... ...apk is installed with the flashing? Or do I have to install that one afterwards?

Have not used the accessibility app.

My steer has a few extra buttons that were working with the original stereo/carkit (Honda Civic 2016). They are not recognized by the unit and also not with this mod sadly.
[FYT Android Head Units] seb21:
The syu.ms.apk must be flashed, it is a system app. Question about the extra buttons : on PX5 were they working?
[FYT Android Head Units] Aran:
I don't know. I had the px5 in a different car. Also Honda Civic, but lower spec, without carkit.

Read on a Honda Forum that people who switched their OEM head unit for an pioneer/JVC/etc also lost the extra carkit-buttons. So not very hopefull
[FYT Android Head Units] seb21:
Try to change in your unit the canbus settings.
[FYT Android Head Units] Aran:
Yeah, will do that.
[FYT Android Head Units] Solvin:
That's working. Tested and currently found no bugs ;-)
[FYT Android Head Units] seb21:
Mod is now on 17.05.23 version of syu.ms.apk.

File updated in first post
[FYT Android Head Units] Specy01:
Excuse me @seb21, which file did you update? Early this morning I downloaded the 4 files in the first post. Do I need to download all 4 of them again?
[FYT Android Head Units] seb21:
only the syu.ms.apk is updated.
[FYT Android Head Units] Specy01:
👍 Thank you man.
[FYT Android Head Units] marchnz:
Bump development over noise threads
[FYT Android Head Units] veletron:
Hi. Is it still the case with the latest version that ATOTO/Resistive SWC is not supported (Atoto S8)? Save me trying if not!! Thanks.
[FYT Android Head Units] seb21:
It is working. If you install this mod check help in config app for more info about analog SWC
[FYT Android Head Units] veletron:
Thanks. Do you know if I should use the Joying or Mekede installer for an Atoto S8. I am assuming Joying?
[FYT Android Head Units] seb21:
That does not matter. Take latest version from first post ( syu.ms.apk and config app). Installation method is the same for all FYT units except Teyes.
[FYT Android Head Units] veletron:
Thanks. Tested on my ATOTO S8 and the redirects from SWC are working. Unfortunately it wont let me reassign the voice search/microphone option to Alexa (eg instead of google). Unfortunately, simply starting the alexa app wont work, it needs to do whatever magic the alexa widget does when you tap that. I guess this is an intent, but I don't know the intent and the internet not much help!

I'll try mapping it to tapping on a part of the screen where the (working) mic button is.

I've got it working direct on the HU screen by changing the default assistant from google voice to Alexa, then using the Google Assistant option in place of the Google Voice option on AGAMA.
[FYT Android Head Units] rafc02:
Thanks @seb21! Awesome app.

I wasn't able to get the double tap or long press options to work. Anytime I assign either of those to a button, it stops working completely. Any idea if there's a fix for this? I tried a few different actions for the buttons but even just launching a simple app on double tap seems to break it. (Maybe i'm configuring something incorrectly?)
[FYT Android Head Units] seb21:
Analog or canbus SWC ?
[FYT Android Head Units] rafc02:
I have tried it for both. My vehicle has most of the audio controls on canbus, but the phone/bluetooth controls were only available via analog signal so I connected that to the swckey1 input. All are recognized by the app - and work great for single press but not double or long press.
[FYT Android Head Units] Vincent.Corleone:
Thanks @seb21 for the app. Got it working nicely on my Atoto S8.

@veletron

Does it work with Automate?

Building block: App Start

Package: com.amazon.dee.app

Activity class: com.amazon.dee.app.ui.voice.LaunchAlexaActivity

If yes, you can use Torsten's Flowstarter with your own flow and assign the APK to your SWC button.
[FYT Android Head Units] migaja:
Hello, I have an UIS8581a device and before installing this mod I've checked the code in the installer from post #15. I noticed the code in lsec_updatesh/8581lsec.sh is different from lsec_updatesh/7862lsec.sh.

7862lsec.sh:

#!/system/bin/sh

#backup original
cp -rf /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk /storage/sdcard1/backup/190000000_com.syu.ms.apk

#replace original with modded one
cp -rf /storage/sdcard1/190000000_com.syu.ms_modded.apk /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk
chown -R 0.0 /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk
chmod 0755 /oem/app/190000000_com.syu.ms
chmod 0644 /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk

8581lsec.sh:

#!/system/bin/sh

cp -rf /storage/sdcard1/lsec_updatesh/fyt_build.prop /oem/app/fyt_build.prop
chmod 644 /oem/app/fyt_build.prop

Maybe I'm missing something but ,¿Is this script really working in my 8581 device? I can't see anything related to fyt_build.prop in this thread.
[FYT Android Head Units] wipika1:
@seb21 thank you for this mod. Do you have a PayPal donation link? I'd like to contribute as a small token of appreciation.
[FYT Android Head Units] zachwiej:
Hi,

I'm having troubles with installation, I have some generic flavor of fyt but tried both mekede and joying scripts and results are similar.

Mod app says file is not modded,

update screen and original ms.apk attached :
[FYT Android Head Units] surfer63:
Why do you think so? This is completely correct. The last error is a tmpfs filesystem. A virtual "in memory" file system which is only available when Android itself is running. In this case "only" the recovery is running executing the scripts and therefore the dm-2 can't be mounted.

When Android IS running, you would have seen:

tmpfs on /apex type tmpfs (rw,seclabel,nosuid,nodev,noexec,relatime,size=931052k,nr_inodes=232763,mode=755)
/dev/block/dm-2 on /apex/com.android.tzdata@290000000 type ext4 (ro,seclabel,relatime)
/dev/block/dm-2 on /apex/com.android.tzdata type ext4 (ro,seclabel,relatime)
/dev/block/dm-2 on /apex/com.android.runtime@1 type ext4 (ro,seclabel,relatime)
/dev/block/dm-2 on /apex/com.android.runtime type ext4 (ro,seclabel,relatime)
/dev/block/dm-2 on /apex/com.android.conscrypt@290000000 type ext4 (ro,seclabel,nodev,relatime)
/dev/block/dm-2 on /apex/com.android.conscrypt type ext4 (ro,seclabel,nodev,relatime)
/dev/block/dm-2 on /apex/com.android.media@290000000 type ext4 (ro,seclabel,nodev,relatime)
/dev/block/dm-2 on /apex/com.android.media type ext4 (ro,seclabel,nodev,relatime)
/dev/block/dm-2 on /apex/com.android.media.swcodec@290000000 type ext4 (ro,seclabel,nodev,relatime)
/dev/block/dm-2 on /apex/com.android.media.swcodec type ext4 (ro,seclabel,nodev,relatime)
/dev/block/dm-2 on /apex/com.android.resolv@290000000 type ext4 (ro,seclabel,nodev,relatime)
/dev/block/dm-2 on /apex/com.android.resolv type ext4 (ro,seclabel,nodev,relatime)
.
[FYT Android Head Units] zachwiej:
Ok thanks, yet still mod is not recognized, that's why I thought it could be connected :)
[FYT Android Head Units] seb21:
What is the compilation date of your installed syu.ms.apk ?
[FYT Android Head Units] zachwiej:
and in OEM folder the date is from today (permissions also are like in script)
[FYT Android Head Units] seb21:
You have old syu.ms.apk, it is not compatible with current Config app !!!

Install that from first post.
[FYT Android Head Units] seb21:
@migaja

@zachwiej

I just added FLASH.zip to the first post. It contains all necessary files for flashing this mod.
[FYT Android Head Units] seb21:
Thank you, but it's really not necessary.
[FYT Android Head Units] wipika1:
humbled. Thank you again for all the work.
[FYT Android Head Units] migaja:
Thnak you for your work. I tried this zip and seemengly it worked ok with no errors in terminal, but it`s showing "Ms.apk is not modded".
[FYT Android Head Units] seb21:
I see that your syu.ms.apk is newer than the modded one. Check if the syu.ms.apk on your device has the same size as the modded one. If so then the mod is installed but your system is still using version from Dalvik cache.

You must clear dalvik cache. @surfer63 has somewhere explained how to do that.
[FYT Android Head Units] migaja:
Yes, it has the same size. I will search for clearing cache. Thank you again.
[FYT Android Head Units] surfer63:
If you used the flash.zip from the first post, you will find in the 7862lsec.sh the following lines

#!/system/bin/sh

mount -o remount,rw /oem
# MOD
rm -rf /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk
cp /storage/sdcard1/190000000_com.syu.ms.apk /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk
chmod 0744 /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk
# SkipKillApp
rm -rf /oem/app/skipkillapp.prop
cp /storage/sdcard1/skipkillapp.prop /oem/app/skipkillapp.prop
chmod 0744 /oem/app/skipkillapp.prop

Please change these to:

#!/system/bin/sh

# MOD
rm -rf /data/dalvik-cache/profiles/com.syu.ms*
rm -rf /data/dalvik-cache/arm/*com.syu.ms*
rm -rf /data/dalvik-cache/arm64/*com.syu.ms*
rm -rf /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk
cp /storage/sdcard1/190000000_com.syu.ms.apk /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk
chmod 0744 /oem/app/190000000_com.syu.ms/190000000_com.syu.ms.apk
# SkipKillApp
rm -rf /oem/app/skipkillapp.prop
cp /storage/sdcard1/skipkillapp.prop /oem/app/skipkillapp.prop
chmod 0744 /oem/app/skipkillapp.prop

Note that the first "mount -o remount,rw /oem" is not necessary for flashing on the 7862 and 8581a units, and doesn't work anymore in rooted scripts.
[FYT Android Head Units] migaja:
Thank you for you help, but unfortunately I didn't worked, still the same message "not modded" in the config app.

I added some lines to collect what there is in the directory data, as I can't access it from android. The result is that there is no directory named /data/dalvik-cache/profiles in my unit, and there are only two files containing "com.syu.ms":

- /data/data/com.syu.ms

- /data/app/com.syu.ms-6Uz5ndqDyds9x3s8H16sVw==

Probably the ones in arm/atm64 directories were removed in previos executions of the script.

I don't know what else to do. Should I remove those two files as well?
[FYT Android Head Units] aikair66:
Всем доброго дня.Могу ли я с помощью этого Mod MS реализовать на кнопки руля двойные и длительные нажатия? Кнопки аналоговые(резистивные),подключены через KEY1,KEY2.Кан адаптера нет.Магнитола MEKEDE M500S.
[FYT Android Head Units] surfer63:
English please. It is the mandatory language in this forum. Switch off "auto translation" in your browser if you use that.
[FYT Android Head Units] aikair66:
Good day to everyone.Can I use this Mod MS to implement double and long presses on the steering wheel buttons? The buttons are analog (resistive), connected via KEY1,KEY2.There is no can adapter.The MEKEDE M500S radio.ToyotaCortolla 2011 car
[FYT Android Head Units] seb21:
For analog SWC only double presses, long are not working
[FYT Android Head Units] zachwiej:
@seb21 big thanks it works like a charm! maybe voice assistant key still cannot be assigned (still brings up the app for built in ford sync, does not show any code in mng app)

now the only and final holly grail is to be able to BT dial a contact with google assistant :D
[FYT Android Head Units] seb21:
Look at https://xdaforums.com/t/fyt-units-f...her-apps-to-the-unit-hardware-buttons.3912075

Maybe it helps.

@fahrenhayt46 is using something called Google Assistant Go to make calls. I was not able to install it on my unit , but maybe you will have more luck.

​