yashsingh1/xdaforums huggingface dataset:
[FYT Android Head Units] surfer63:
From the first settings screen, it is the top option "Miscellaneous On/Off settings", and in that screen the bottom option, but you most probably have to scroll down as not all entries fit on the screen.

Edit: Does this mean by the way that you put Xposed and XFytTweaker on your Witson head unit? If so: how?
[FYT Android Head Units] Astur_Torque:
Is it possible to add more than 3 options in the mode src button?

Enviado desde mi Oneplus 5 mediante Tapatalk
[FYT Android Head Units] surfer63:
Currently not. All buttons are "limited" to 3 options.
[FYT Android Head Units] looxonline:
I do. I installed them using the JET 54 apk this Sunday. Didn't need to do anything special. I must admit that I held my breath during the reboot but it bounced back with the framework installed.

I've been meaning to write back about the main server. I compared my main server to the one that you posted and there are some differences. Didn't have much time to check out the smali diff yet but at least on a binary level they are not the same. I also found some references to the winca-canbus.apk in the smali of the main server but I have not had time to check how it is used. In any case it does seem as if the Witson main server is slightly different from the Joying. See the attachment for the Witson ms.

Anyhow since there are differences I have held off on applying the main server mods. Does your apk replace the mainserver with a modified version or does it just edit some files that are referenced by the main server? If it completely replaces it then I'd rather perform the mods on my ms file in smali and recompile it.
[FYT Android Head Units] surfer63:
Great!!

There are always binary differences even when nothing has been changed. They simply recompile on every release. That generates those binary differences. I will compare the apks in jadx this week, but I am currently working on something else.
[FYT Android Head Units] looxonline:
Working crazy hours this week but I'll also try to have a look using jadx when I get a chance. Maybe only on the weekend.
[FYT Android Head Units] Astur_Torque:
And long press?

This is because I only have available 1 button from the steering wheel and I configured 1 touch for music player, two for torque and three for waze

I don't know if its posible configure a long press or doing something to launch google assiatant/voice or something

BTW great job for everything, you make this unit much more useful!

PS: with gusten mod, there were apps that turn down the volume when a notification came... is possible to configure this with certain apps?
[FYT Android Head Units] surfer63:
Long press could be an option, but I currently have no idea how to implement that.

4 taps as such could relatively easy be implemented, but it is just a huge load of work to go through all the settings and reactions to add a 4th option.

For the better mixing of the media, you still need a mod of the sofiaserver/com.syu.ms. It is in my JET apk. Take the default with the extended navi_app.txt. You don't need the nokill version as that is covered by the XFytTweaker.
[FYT Android Head Units] Astur_Torque:
Thanks I'll try the mod of sofiaserver!

Maybe long press is a little dificult to implement... about 4 or more taps, it would be great, but if it takes a lot of work... don't waste time in that, i hope i can get by in other way intead

I will try to "kidnap" other button of the steering wheel xd

Opel corsa has these buttons

on the left, the botton button is MODE SRC, the top is Mute... when I press once, the volume goes to 0 and when I press again it restores wherever it was.

About the right butons, they are to change song and the wheel to raise or low the volume... I am not sure if I could handle the right ones to do differnet actions, or the mute button... You have an option to kidnap this button, but I'm not sure if using your former method to asign multitaps would work... I'll try this.. BTW, do you know the inputkey of mute?

PS: Sorry for my horrible English

PS2: About long press, maybe this can help:

https://xdaforums.com/showthread.php?t=2063741

https://stackoverflow.com/questions/11142843/how-can-i-use-adb-to-send-a-longpress-key-event

https://stackoverflow.com/questions/7919865/detecting-a-long-press-with-android

https://developer.android.com/reference/android/view/KeyEvent

I don't know how to program in android :(
[FYT Android Head Units] surfer63:
There is an image in your post, but even with the direct link I can't see it.
[MENTION=520205]gtxaspec[/MENTION] mentioned that the hardware buttons on the unit like Mode/src or mute, are not the same as the ones on the steering wheel. I don't have steering wheel buttons at all so I can't check it, test it or control it.

And depending whether they are controlled by the car CANbus, followed by the units CAN bus, ór via key1/key2 connections, they might differ again.

The CANbus ones differ per car model even though they end up in the same function.
[FYT Android Head Units] WEZANGO:
Are there any way to hide stock volume bar? It's annoying and big.
[FYT Android Head Units] derschnelle:
I tried the "show temperature in bar" option on the newest 07/27 version and nothing happend. Is it working for others?
[FYT Android Head Units] surfer63:
It takes a minute to react, as it is coupled to the time display. The time is only updated once a minute.
[FYT Android Head Units] surfer63:
This should be possible. I have a look at it. The volume and its changes are displayed anyway in the status bar.
[FYT Android Head Units] derschnelle:
Yeah I know, as your message box shows that information. I had my unit running for a few hours yesterday and the temperature didn't show up. I think I restarted the device a few times aswell, but will check it out today again.

As it seems that I'm the only one with this problems, I probably have done something wrong :D.
[FYT Android Head Units] derschnelle:
I checked yesterday, temperature still doesn't show up.
[FYT Android Head Units] RoNeReR:
try to hook all mcukeyvol in module,main,handlermain:

public static void mcuKeyVolUp() {
HandlerSound.showVolUi();
HandlerSound.volSrcCmd(-1);
}

public static void mcuKeyVolDown() {
HandlerSound.showVolUi();
HandlerSound.volSrcCmd(-2);
}

public static void mcuKeyVolMute() {
HandlerSound.showVolUi();
HandlerSound.volSrcCmd(-5);
}

u need to remove this function

HandlerSound.showVolUi();
[FYT Android Head Units] IG_Vasilich:
another way is to modify showVolUi itself -just return without doing anything. It is in module->sound->HandlerSound

public static void showVolUi() {
if (ObjApp.getUiVol() != null) {
ObjApp.getUiVol().show();
}
}
[FYT Android Head Units] surfer63:
18 August, XFytTweaker Version 1.4.0 (successor of XSofiaTweaker)

Changelog:

Created a small wiki on the repository. Added link as third option in "Information Screen"

Added option to disable the overlay display of the volume bar on volume changes (the volume is always numerically displayed in the status bar)(thanks to [MENTION=2946605]IG_Vasilich[/MENTION] for pointing me to the right hook)

Some more code cleanup

Can be downloaded from the Xposed repository or my JET apk.
[FYT Android Head Units] RoNeReR:
i want to share my progress with the dac mod,

last weekend i start working on a way to make the volume more dynamic, to find a way to get low volume than the lowest.

i found out that with the tool tinymix, i can control the hardware sound of the dac.

my problem so far, is that i want to create some overlay for this command with at least number, and with reboot or disconnect reconnect the dac go to max volume again.

i know there is possible solution to work with init.d and tasker, but i want more elegant way.

the command is

su

tinymix -D 1 "PCM Playback Volume" 110 100

this number work with sabre u2 dac, maybe work with other dacs.

-D 1 - Dac number. ( 0 is the built in sound card )

"PCM Playback Volume" ( the volume option )

110 110 - the maximum value ( L + R )
[FYT Android Head Units] WEZANGO:
Is it possible to do this trick without xposed installed?
[FYT Android Head Units] surfer63:
You have to decompile the sofiaserver/com.syu.ms apk to its smali code, disable the method, recompile it and push it back to your unit.

And do that on every firmware change.
[FYT Android Head Units] RoNeReR:
Hello [MENTION=2550900]surfer63[/MENTION]

when installing the XFtyTweaker there is delay on volume change,

its becuase u hooked the mcuKeyVol methods even if the dac mod not in use,

i see that u put in comment the original "if" and add "if" for each method,

there is any reason to do that?
[FYT Android Head Units] surfer63:
Yes, I did. Reading preferences on Android 7.0 and higher is totally different in the "background" modules running within the Xposed framework. So on 6.0.1 I did read all preferences upon module start. I can no longer do that. The settings screen is running from the app and app user itself. The "background" module is running from Xposed Library user and context. I can no longer directly access the settings anymore as on Android every apk has its own user. The Xposed library user can't access the settings from XFytTweaker anymore (which is actually a good change of course, but very annoying when using Xposed).

I had not thought of the delay in the volume keys. I will have a look at that to see if some values really need to be read on start, declare them global/public and then do that from the first general handleLoadPackage.
[FYT Android Head Units] derschnelle:
I can't seem to get the xfyttweaker to work.

What I did:

- wipe unit

- root it

- install xposed via JET

- install xfyttweaker via JET

But still, no matter what I do in the xfyttweaker, my unit doesn't care (temperature doesn't show up, button actions won't work).

What can I do?
[FYT Android Head Units] unisev:
Hello,

The option to show CPU temp in the status bar is not working on my PX5...

....also, remap the SRC hardware key seems a little bit complicated for me.
[FYT Android Head Units] surfer63:
Can you both share the Xposed logs? Go into the Xposed Installer, logs, select "arrow to the right"
[FYT Android Head Units] looxonline:
CPU temp in status bar has never worked for me. Interested to know if there is a fix.
[FYT Android Head Units] surfer63:
[MENTION=9217263]looxonline[/MENTION], [MENTION=580548]unisev[/MENTION], [MENTION=4206807]derschnelle[/MENTION]: Can you also all check which version you are running? It is in the Xposed Installer as well.

I was testing and wanted to restore the latest version, but the Xposed repo did not show me the latest 1.4.0 even though I refreshed it a couple of times. So I installed it from my JET apk.
[FYT Android Head Units] looxonline:
Sure, I'll have a look during lunch.
[FYT Android Head Units] unisev:
See attached file error.log

"modules.list was not found !"

To be honest, I think none of the Xposed option is working for me at the moment

Wich version of ?

Xposed Framework is 90-beta3

Xposed Installer is 3.1.5

XFytTweaker is 1.4.0
[FYT Android Head Units] unisev:
Finally worked !

It finaly worked for me after doing this :

- Optimize app (in Xposed installer)... with a little bit of waiting

- Reboot the device
[FYT Android Head Units] surfer63:
Thanks for mentioning it.
[FYT Android Head Units] surfer63:
That is indeed the correct conclusion. It should also mention in your first framework screen that the Xposed library is not active.

Good that you solved it.
[FYT Android Head Units] R4m80:
You guys are so lucky. I can't get my HU to root so I cannot enjoy this wonderful mods :(
[FYT Android Head Units] surfer63:
I send you a PM.
[FYT Android Head Units] derschnelle:
I got mine solved somehow aswell. The xfyt-module wasn't opted-in in the xposed manager. I had tried this before, but couldn't activate it.

Yesterday it worked, I restarted and everything works great :). Thanks a lot [MENTION=2550900]surfer63[/MENTION]!
[FYT Android Head Units] looxonline:
This also worked for me. Optimization takes a while but when it's done all of the tweaks that I had previously activated started to work. Nice to be able to background the phone app and also to get rid of the volume bar.

[MENTION=2550900]surfer63[/MENTION], where do you source the CPU info and what is the refresh rate? I have three different sources for this data and they all seem to differ. One source is an app called CPU monitor. Another is your JET APK and the final is the CPU temp in the status bar. It seems like the temp in the status bar reports between 5 and 8 degrees Celsius higher than the other two sources regularly.
[FYT Android Head Units] surfer63:
In the JET apk on Sofia I do basically:

"rm -f /sdcard/cur_temps_freqs.txt",
"cd /sys/devices/virtual/thermal\n",
"cat thermal_zone1/temp >> /sdcard/cur_temps_freqs.txt\n",
"cat thermal_zone2/temp >> /sdcard/cur_temps_freqs.txt\n",
"cat thermal_zone3/temp >> /sdcard/cur_temps_freqs.txt\n",
"cat thermal_zone4/temp >> /sdcard/cur_temps_freqs.txt\n",
"cat thermal_zone5/temp >> /sdcard/cur_temps_freqs.txt\n",
"cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq >> /sdcard/cur_temps_freqs.txt\n",
"cat /sys/devices/system/cpu/cpu1/cpufreq/cpuinfo_cur_freq >> /sdcard/cur_temps_freqs.txt\n",
"cat /sys/devices/system/cpu/cpu2/cpufreq/cpuinfo_cur_freq >> /sdcard/cur_temps_freqs.txt\n",
"cat /sys/devices/system/cpu/cpu3/cpufreq/cpuinfo_cur_freq >> /sdcard/cur_temps_freqs.txt"

And that cur_temps_freqs. txt is then parsed.

On the PX5 I do:

"rm -f /sdcard/cur_temps_freqs.txt",
"cat /sys/rockchip_thermal/temp > /sdcard/cur_temps_freqs.txt\n",
"cat /sys/devices/virtual/thermal/thermal_zone0/temp >> /sdcard/cur_temps_freqs.txt\n",
"cat /sys/devices/virtual/thermal/thermal_zone1/temp >> /sdcard/cur_temps_freqs.txt\n",
"cat /sys/devices/system/cpu/cpufreq/policy0/cpuinfo_cur_freq >> /sdcard/cur_temps_freqs.txt\n",
"cat /sys/devices/system/cpu/cpufreq/policy4/cpuinfo_cur_freq >> /sdcard/cur_temps_freqs.txt"

And that cur_temps_freqs. txt is then parsed.

In the XFYTTweaker I use a java method:

public float getCpuTemp() {
Process p;
float temp = 0;
String tempstr;
String build_version;

build_version = Build.VERSION.RELEASE;
log("build_version: " + build_version);
if (build_version.toLowerCase().contains("6".toLowerCase())) {
try {
for (int i=1; i<5; i++) {
p = Runtime.getRuntime().exec("cat sys/class/thermal/thermal_zone" + Integer.toString(i) + "/temp");
p.waitFor();
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));

String line = reader.readLine();
float tmptemp = Float.parseFloat(line) / 1000.0f;
if (tmptemp > temp) temp = tmptemp;
}
// round to 1 decimal like 45.3
int scale = (int) Math.pow(10, 1);
return (float) Math.round(temp *scale)/scale;

} catch (Exception e) {
e.printStackTrace();
return 0.0f;
}
} else {
try {
p = Runtime.getRuntime().exec("cat /sys/rockchip_thermal/temp");
p.waitFor();
BufferedReader reader = new BufferedReader(new InputStreamReader(p.getInputStream()));
String splitline[] = reader.readLine().split(":");
tempstr = splitline[1].trim();
return (float) Float.parseFloat(tempstr);
} catch (Exception e) {
e.printStackTrace();
return 0.0f;
}
}
}

The temp is updated once a minute as that is how often the system time gets updated.

Note also: I use a very "dirty" trick. If build version contains "6" (so Android 6), assume it is Sofia. If it contains "8", assume it is a PX5. I need to change that to test on product model.

The Sofia loops through some files. The PX5 simply reads the rockchip temp file.

Note that the Sofia reads the 4 temp files, but does not average. It takes the temp of the core with the highest temperature as that one gives the "most important" indication (in my opinion). So that might be the reason why it is sometimes 5-8 degrees higher.
[FYT Android Head Units] looxonline:
Thanks for the code snippets. Since I am running the Witson PX5 I would be sourcing the temperature data from the /sys/rockchip_thermal/temp file. I've never personally opened it but I'll try to dig though it a little later today. By the looks of the code you use the first value that is encapsulated between ':' characters. Based on the JET code it seems that you pipe the same value into the cur_temps_freqs.txt but since I can't see the parsing code I don't know where it is used from there onwards. Is that value an average of the four cores?
[FYT Android Head Units] surfer63:
On the PX5 it says something like "current cpu_temp:45".

splitline[1] means the 2nd (0 ...x).

The Float.parseFloat(tempstr) is a handy function. It simply removes the characters incl. space, the C and the degree sign. In this case that is perfect for me. No need for more complex parsing. And in case some rubbish comes with it, it will automatically be removed.
[FYT Android Head Units] unisev:
Hello,

Could someone help me to simply remap the SRC hardware button ?
[FYT Android Head Units] surfer63:
See post #2
[FYT Android Head Units] unisev:
Yes, I already read that... and I just don't understand what to do... but I'm sure I can do it...

The main problem for me is that the SRC button is not listed in the XFyttweaker app.
[FYT Android Head Units] surfer63:
It is NOT under "Assign app or action to hardware buttons".

It is under "Assign app or action to steering wheel buttons".

This is indeed confusing but there seems to be a difference to the Mode/SRC hardware button and the steering wheel button. At this moment they should actually all be in "Assign app or action to hardware buttons".

Others mentioned this difference in behavior in the same button: as hardware button or as steering wheel button.

I don't have steering wheel buttons, so I'm actually dependent on other users.
[FYT Android Head Units] warata:
Hi

The FYT unit can not create a shortcut for Driving mode of Google maps.

Still can be started with the launch intent?

Thanks
[FYT Android Head Units] warata:
Hi

I want to use SRC key as HOME key.

So I struggled with XFyt tweaker, Unfortunately my device did not have MEDIA key or DVD key.

Is there any way to have home key function from steering wheel?

Thanks
[FYT Android Head Units] surfer63:
The SRC/MODE key is NOT under "Assign app or action to hardware buttons".

It is under "Assign app or action to steering wheel buttons". (see 3 posts up).

HOME key is "input keyevent 3" as system call.
[FYT Android Head Units] etrefal:
[MENTION=2550900]surfer63[/MENTION]: Have you had the chance to look at the volume problems we've experienced with XfytTweaker? I haven't seen anything in the changelog about this...

Thanks!
[FYT Android Head Units] surfer63:
I have been looking at it (spent at least 4 hours on it) but not found a solution yet.

Edit: I assume you only experience this when using a USB-dac?

I don't have a usb-dac and for me it works fine.

Edit2: I might have found a solution, but did not start that yet. I'm extremely busy until next Monday.
[FYT Android Head Units] etrefal:
No I don't use an external DAC. I'm on v9a3 on January ROM and I'm not even using V4A anymore....
[FYT Android Head Units] surfer63:
Oh, that is really strange. Did you activate any other "sound related" settings?
[FYT Android Head Units] unisev:
Ok, worked for me...

Is there a way to call the "app that is actually playing music ?"

Sometime I use bluetooth, sometime Spotify, sometime mp3 player...
[FYT Android Head Units] etrefal:
Nothing out of the ordinary... I'm using the subwoofer out, but nothing in my setup is complicated.
[FYT Android Head Units] warata:
Thank you! SRC key now works as HOME key.

However, since it takes 3 seconds each time from pressing the key until reacting,

I adjusted tap delay settings to 50 ms, but the reaction does not change.

What else should I do?

Thanks
[FYT Android Head Units] gtxaspec:
The delay is only for multiple taps.
[FYT Android Head Units] surfer63:
The "input keyevent xy" is a very slow command. We use it also to pause and restart media-players on ACC_Off/ACC_ON. It is just very slow.

There is an intent for this which would make it instantly, but that would again require a micro apk, like this
[FYT Android Head Units] warata:
But in my environment, a delay of 3 seconds occurs even with a single tap.

Is it impossible to adjust the delay of single tap?

[YOUTUBE]I2SR3mZRXzk[/YOUTUBE]
[FYT Android Head Units] warata:
understood. Calling the home screen from the Steering Wheel remote control is very useful when using split screen.

Why does not JOYING add to this control.

Thank you anyway.
[FYT Android Head Units] warata:
Hi surfer

I want to add Back key function to steering control too.

Do you know what number should I write key event?

Sorry for continuous post, Thanks
[FYT Android Head Units] surfer63:
input key event 4
[FYT Android Head Units] surfer63:
After that previous BTMusicStarter app it took only 10 minutes to write another 18Kb micro app: GoHome.

Creating the icon took most of the time :)

All it does is call the HOME screen.

See attached.

Edit: Call it by package name with org.hvdw.gohome (or check from JET or XFytTweaker for the package name).

source code: https://github.com/hvdwolf/GoHome
[FYT Android Head Units] warata:
That's excellent:good:Thank you very much!

And I confirmed adjustment of delay time under 200ms are mostly doesn't work properly.

Even if I try double tap at super high speed it will do single tap action.
[FYT Android Head Units] surfer63:
Something must not work OK then. For me double-tap/triple-tap works.

Other users having this experience?

And I forgot that the standard Joying launcher uses rounded icons. I should have added an ic_launcher_round.png.
[FYT Android Head Units] warata:
To put it correctly, first double tap will work normally, but once I single tap it will not work double tap afterwards.

By the way could you write wi-fi on and off in java code like a "input keyevent 127;"

Because I want to restart wi-fi every acc-on.

Thanks
[FYT Android Head Units] surfer63:
I will have a look at the tap-options. Maybe the "tap counter" should be reset after every action.

"input keyevent 127;"?

I did not even know that existed. But why do you want that? What does it matter in Acc_On/Acc_Off if it takes 2-3 seconds?

Edit: does this "input keyevent 127;" even exist? and if so: is it for On or for Off and what is the counter code then?
[FYT Android Head Units] warata:
My unit has poor Wi-Fi connectivity. Sometimes it does not connect at all. However, if I restart Wi-Fi, it will be connected soon so I'd like to do it automatically with the system call command. It's not java code? Sorry. Forget it.

Thanks
[FYT Android Head Units] tOz666:
I've bought myself some wireless steering wheel buttons: (no spam) https://aliexpress.com/item/Multifu...-Material-Small-Size-for-Car/32850871426.html

I can confirm that when I assign "navi" button, only the action/app assigned to the first tap works always, i'm lucky if I can get the double tap app working (takes like 10 tries to get 1 succesful) I have not set a triple tap app.

By the way [MENTION=2550900]surfer63[/MENTION] here's the steering wheel config app: (my unit does not have physical buttons on it, it's one of the "tablet-like" 1 din units)

[IMG="steering wheel config app for joying"]https://i.ytimg.com/vi/TdDLZGaVgKs/maxresdefault.jpg[/IMG]

In XFytTweaker I can see the "Band" button for configuring actions to it, however, when assing a steering wheel key using the above screen to the "SRC" button on config, it does not catch the action, seems to be not working.

However, "GPS" button on this screen seems to correspond to your "Navi". and this works well.
[FYT Android Head Units] surfer63:
It is dead-simple (at least it seems dead simple). I'll give it a try tonight. My WiFi does not always return as well after deep-sleep. I will create them. I can use them myself as well :).

However, I'm extremely busy this weekend so I might not have time to do it even if it is (seemingly) simple.
[FYT Android Head Units] warata:
Wow lucky:D

Have a nice week end!
[FYT Android Head Units] surfer63:
Fortunately 20 minutes left before dinner. :)

Again 2 14Kb micro apks: WiFiOn.apk and WiFiOff.apk

package names: org.hvdw.wifion and org.hvdw.wifioff

See attached.

source: https://github.com/hvdwolf/WiFiOn and https://github.com/hvdwolf/WiFiOff