General Joying Intel Sofia - All you need to know - micro tutorials - Q&A

Search This thread

edit

Senior Member
May 25, 2006
855
305
Revised 1-Mar-2018
I've updated the writings a bit for the 1 Sept firmware update.

In case you are wondering I have this unit : Joying EU-JY-FL121N2


01. It is worth the upgrade from Androd 5 to 6?
For me this things determined me to update
1. Split screen - you can put side by side 2 apps, not all apps work but most do. (does not work with 1 sept firmware)
On Android 6 the split screen it known to be buggy but for me it worked ok, i find it useful putting Waze and PlayerPro side by side. iGo does not support split screen if you wonder.
When the units enters sleep it "forgets" which apps were in split screen so next time the HU wakes up you need to set those 2 apps again in split screen. It does not take long but if you do it on a daily basis it gets annoying... quickly.
2. Better CPU management and with that comes a bit better CPU power management (less heat generated for basic tasks, like playing music)
3. The notifications background is not white anymore with the white text on it... it's how it is supposed to be... dark gray so you can read the white text

Later edit :
I been through all the Android 6 releases and I can tell you that it still does not feel as stable as it was on Android 5. There are many times when I felt sorry that I've upgraded to 6. I would downgrade to 5 in an instant if it would be possible. The unit bad implementation of the sleep behavior it really bugs me.
Ranting more on the subject here : https://forum.xda-developers.com/showpost.php?p=72726651&postcount=47
L.E. 25 July offers the best stability so far, can't recommend the 1 sept update : read here

02. The mods of Android 5 are updated for Android 6 - 21 Sept (the latest at the time of writing)
Yes ! All of them.


03. Are there any custom roms for the Joying Intel Sofia ?
Yes ! Finally ! Thanks to @gtxaspec and @surfer63 we have this :
https://forum.xda-developers.com/an.../rom-gtx-joying-stock-rom-2018-01-29-t3742482


04. Deezer white bar issue : This bug presents itself on android 6 only. Deezer has a white bar in player mode, annoying at night and ugly looking. Contacted Deezer, they promised a fix that never came, it’s been a month. Contacted Joying, they told me that they can’t do anything about it. Tested a lot of Deezer versions and found out that the version 5.3.11.90 is the newest that does not have the bug.
LE : they still haven't fixed it and wrote them 5 times already... they promised each time... they value my input... yeah, right.
L.E.E - 2018: kept writing up tickets latest was 2 weeks ago... they are still looking into was the answer.... for more then 1 year i must add... very poor user support,


05. XiiaLive Pro issue : If the unit has the server no-kill mod installed, XiiaLive Pro has FFmpeg as the decoder (this is set by default), you put the app on pause and send the unit to sleep (turn off the engine), for some unknown reason the unit start to drain 0.15A instead of the default 0.01A and after a few minutes of sleeping it shuts down. You NEED to change the decoder from FFmpeg to Android to solve the problem.
LE : They pretty much abandoned the development. This app has some issues, a big one being that when another music app steals the audio focus the Xia app does not pause or stop and continues to stream in the background, eating data for no reason. Wrote them a few times... nothing...


06. What is the unit default DPI? Everything seems so small coming from my old unit.
The default DPI is 160. If you set the DPI to 161 some apps will change the look of the interface (tablet - phone)
L.E. - this can be solved with the help of the @gtxaspec custom ROM or installing Xposed and AppSettings mod via JET app made by @surfer63

Unfortunately once you change the unit DPI from the default 160 to anything else, say 200, some of the default apps do not scale well and the notification bar grows in thickness a lot (taking a lot of screen estate) so I recommend a restart after each DPI modification to see how the android UI looks and also you need to check all the apps to see if there are badly affected by the DPI change.

You can set the DPI via adb like this (you need to have adb installed) :

adb kill-server
adb connect IP (exemple : adb connect 192.168.1.55)
adb shell wm density xxx (xxx being the density number for example 180 or 190 or 200 or 220 )


07. After the update the unit shuts down instead of sleeping what shall I do:
This unit has some kind of power monitoring, if an process or an app hangs the unit, draining more power then it should while it's in sleep mode it shuts down the unit in order to protect the car battery from draining completely.
Most of the people that upgraded the unit (from android 5 to 6 or from one build of android 6 to another build of 6) without wipeing the data had various problems so updating this unit is not an option in my opinion with a proper wipe, no matter the firmware or version number.

For trouble free, smooth operation you MUST do the following: (revised 05-sep-2017)
1. backup data
2. take out all the microsd cards, usb sticks and check them all for errors (some users had problems with data corruption on the cards that they kept in while updating)
3. delete ALL the files from the internal storage (with the default file manager, go to internal storage, select all, delete)
4. wipe the unit / reset the unit to defaults from the settings
5. before flash the new firmware (again) let the unit cool down at least 30-45 minutes because without additional cooling it overheats and the CPU throttles all the way down to 416Mhz (processing everything extremely slowly) preventing the unit to successfully finish the firmware update. The updating is on a timer and once the timer is out the unit reset itself even if it did not finish the update. And you might find yourself in an endless loop and in some rare cases people got their units bricked. I've never had any problems because I update my units at home and while they are on my desk I take the lid off and put an big fan to blow over the components to cool everything down.
6. wipe it again / reset the unit to defaults from the settings (this is optional)
7. test the sleep function (to see if the unit without any additional software installed behaves ok)
8. put everything back / reconfigure (I personally prefer not to restore from a Titanium backup and reinstall everything and reconfigure)
9. test the sleep function again (to see if the unit is still ok after all that you installed or moded)
10. before inserting back the old microSD cards and usb sticks in the new reflashed/reinstalled unit, make sure that are no files on them from the previous installation (files left over by apps from the the previous installation)
It's always a good idea to start clean and delete the leftovers files that sometimes could be damaged and once you put the back you might encounter problems.

08. I’ve just upgraded my unit and it feels slow, slugish?
Follow the above tutorial except step 7 and 9 :)


09.I can’t turn off the screen/touch BEEP, it’s annoying! Help !

Solution 1
BEFORE flashing or reflashing edit the file “config.txt” from the root of the update
And change this line "ro.fyt.amp_switch=1" to this "ro.fyt.amp_switch=0" (it sets the AMP Enable to OFF by default)

Solution 2
1. Enter Car Settings app
2. Go to the bottom right tab (the one with the screwdriver on it) ckick it and enter 3368
3. go to the AMP Enable option and turn it OFF
4. go to the EQ menu (second bottom tab from right to left) from the Car Settings and now you have Keypad Tone option and you can turn it off.

10. After update, adb via wi-fi does not work anymore.
Solution 1: by @gtxaspec
Before flashing edit the “config.txt” (in the root of the firmware) and add this line without the quotes “service.adb.tcp.port=5555”

Solution 2 : by @gustden
1) download a terminal program ( Terminal Emulator for Android )
2) enter the following command: setprop persist.adb.tcp.port 5555
3) reboot


Solution 3 : mod by @AssassinsLament
In order to be able to do anything on the unit via ADB you NEED to enable ABD over Wi-Fi so download AoW_v1.0.apk from here https://forum.xda-developers.com/showpost.php?p=71616884&postcount=273 , copy the apk to a stick, run it in the unit and let it do it's job. (you can uninstall it at the end but I advise you to keep it and disable the ADB Over Wi-FI for security purposes)


11. I need to root what shall I do?
The mod credit goes to @surfer63 !

1. Go to https://github.com/hvdwolf/Joying-RootAssistant
2. go to the green button "Clone or download" and choose Download ZIP, download the file
3. create folder c:\rootjoy and unpack the zip there
4. connect to a router (home or phone router), and check what IP your headunit has (something like 192.168.1.34)
4. open an command prompt with admin rights
5. type the following without the quotes
- "cd c:\rootjoy"
- "cd SuperSU_for_Joying_Intel"
6. at this point restart the unit, once it has booted enter next line (don't let the HU IDLE too long once it has booted because you will get disconnect errors)
- copy_install.bat IP (example copy_install.bat 192.168.1.34)
- if there are no errors, reboot (I followed the steps above and never failed)
7. you are now rooted

Later edit : @surfer63 moved files around and the repository adress from point 1 is at : https://github.com/hvdwolf/Joying-RootAssistant/releases/tag/20170617-02
I haven't tested rooting with the new archive

Later edit 2 : @surfer63 put up a nice tutorial here : https://hvdwolf.github.io/Joying-RootAssistant/rooting.html

12. The default EQ and overall sound quality is poor, can I do anything to improve it?

Solution 1
Viper4Android : brought the sound to life for me, without it the sound quality is poor. With this software you can improve it quite a lot. The unit NEEDS to be rooted so you have to follow the above tutorial and root the unit first in order to install the Viper.
01. go to this post https://forum.xda-developers.com/showpost.php?p=72064749&postcount=41, download the viper.zip file.
02. For the me last version of the Viper4Android (included in the viper.zip) works ok but the EQ section is broken for me (meaning changing the EQ modifies the sound just slightly) so I used an older version of Viper4Android where the EQ section actually works and you can clearly hear the difference when playing with the EQ bars.. If you want to use my version go to to step 12 if you want to install the @AssassinsLament version go to step 03
03. unpack the viper.zip to C:\viper
04. open an cmd prompt with admin rights
05. "cd c:\viper"
06. restart the HU, just to be safe, after the reboot enter the next line in cmd prompt
07. enter "viper.bat IP" (example : viper.bat 192.168.1.34)
08. after it finished reboot the HU
09. after reboot ran the app, say yes when it wants to install the driver, wait, it takes a few minutes, if android wants to end the task press wait, be patient, when it's done reboot again.
10. ran the app again, from the left menu select settings, and lock on the headset profile (because the headset has all the options enabled so more power to you for tweaking the sound)
11. select headset profile and have fun tweaking the sound.
12. unpack the viper.zip to C:\viper
13. go to https://forum.xda-developers.com/showthread.php?t=2191223 scroll down to v2.3.4.0 (Android 2.3~5.0) and download the mediafire link next to it (http://www.mediafire.com/download/cnqqdme51qy9ft4/ViPER4Android_FX_v2340.zip)
14. inside the ViPER4Android_FX_v2340.zip there are 2 files, unpack the ViPER4Android_FX_A4.x.apk to the "c:\viper\viper" folder
15. rename it from ViPER4Android_FX_A4.x.apk to ViPER4Android_FX_v2505_A4.x-A7.x.apk and overwrite the original ViPER4Android_FX_v2505_A4.x-A7.x.apk
16. now you can follow the steps from 05 to 10 pretty much.

Later edit : Unfortunately, the EQ section from the Viper app (no matter the version used) does not work with 25May and 7July firmware, the sound stutters, the music speed slows down in a weird way, there are pops in the speakers.
Currently I am using the Viper only to enhance the bass mainly that you can't do otherwise with the extremely limited default Joying EQ.
My settings are as follows :
Viper Bass to +8db
Viper Clarity to +3.5db
Dynamic System to 10% - High Performance Headphones v1

Solution 2 - by @bogdi1988
You can change the default AMP TDA 7388 chip with the Pioneer PA2030A or the TDA7850
Read here the details:
https://forum.xda-developers.com/android-auto/android-head-units/joying-sofia-chip-upgrade-t3589587


13. Enable “OK Google” from any screen or app possible on this unit?
No, at this time, with this firmware version (25 May) at the time of writing there is no solution.
The velvet.apk works fine, it does not crash, you can OK Google from any screen/app BUT it breaks the unit sleep mode, the unit will shutdown instead of sleeping.


14. In this (25 May) firmware of android 6 is the Google Maps voice finally works with the FM Radio app?
Yes!


15. When I turn off the engine all the apps that are running are closed (killed) while the unit is sleeping.
You need to have a look at this thread for the @gustden mod:
For the 25 May firmware he built the 6.3 version of it’s mod.
All the details and more here :
https://forum.xda-developers.com/an...-units/joying-2gb-steering-wheel-key-t3543390

Later edit : The 6.3 mod still works with 7 July but the guy that worked his magic on the mod did not update the mod for the 7July firmware at the time of writing and it's been away for 1.5 months so I am not sure about the future of the mod :(

16. I want to enable split screen so I can run 2 apps at the same time.
In order to do that you need to replace the Joying modified Settings.apk with the original android.
We are gonna use the @AssassinsLament script so
1. Go to this post https://forum.xda-developers.com/showpost.php?p=72107737&postcount=109 and download the “4-27-17_Original_5009_20_Settings.zip” file
2. Create the folder c:\replace_settings and unpack the content of the 4-27-17_Original_5009_20_Settings.zip file
3. Create a new folder called c:\replace_settings_temp and unpack the in this folder the contents of the 5009_60.zip file that it’s in the root of the firmware that that you used to flash the unit.
If you don't have it download exactly the same firmware archive that you did to update the unit, unpack it and in the root you will find the 5009_60.zip archive that contains the Settings.apk and Settings.odex that you need.
4. Copy the Settings.apk file that you will find in the c:\replace_settings_temp\system\priv-app\Settings\ to c:\replace_settings\SETTINGS, (overwriting the old one)
5. Also copy the file Settings.odex from c:\replace_settings_temp\system\priv-app\Settings\oat\x86\ to c:\replace_settings\SETTINGS, (overwriting the old one)
6. Now run a cmd prompt with admin rights and enter the c:\replace_settings folder
7. Enter settings.bat IP (IP of the unit, example: settings.bat 192.168.1.55)
8. Reboot
9.Go to settings and to About Tablet option, go all the way down to the Build number and keep tapping it till it tells you that you have become a developer
10.Push back once and now you have a new menu “Developer options”
11.Enter it and at the “Drawing” section there is an option called “Multi-window mode” ENABLE it
12.Now when you push the task switcher (from the notification bar) when the running apps are presented they have some icons on the left and you can decide how the apps will run, full screen, split screen on the right part of the screen, split screen on the left of the screen


17. I want to tether via Bluetooth, is it possible?
Yes with the mod made by @doitright

Solution 1
Go to https://forum.xda-developers.com/an...elopment/bluetooth-settings-launcher-t3504526 and download BluetoothTethering.apk
You can follow the tutorial on that page if you are comfortable with ADB or if can follow mine so :
1. Make a folder (with Root Explorer) named “BluetoothTethering” in “/system/priv-app/
2. Give the folder 755 permissions (long click on the folder to have the folder selected and then go to the upper left to the 3 dots , and from the menu pick permissions then tick the boxes till you get 755)
3. Copy in the newly created folder the BluetoothTethering.apk file and give it 644 permissions
4. Reboot
5. Open the HU default bluetooth app and pair the phone with the HU (I suggest to change the default PIN (0000) to something else for security purposes
6. Start the BluetoothTethering app select the paired phone, enable Auto Connect PAN, push Start Service, also Enable Auto Bluetooth Tethering.

Solution 2
Use this app from the playstore :
Free version : https://play.google.com/store/apps/details?id=com.tomlocksapps.bluetoothtetheringmanager
Paid version : https://play.google.com/store/apps/details?id=com.tomlocksapps.bluetoothtetheringmanager.pro

18. Even at the lowest settings the screen is too bright.

Solution 1
1. Enter the Car Settings app
2. Select the lowest tab on the lower right (the one with the screwdriver)
3. Enter code 3368
4. Scroll towards the bottom and you shall see a option named :”Backlight current adjustment”. I have this menu, some said they don’t have it so my guess is that it depends on the model of the unit … can’t say for sure. (LE : the menu is present if you flash the firmware with a certain file read at no 48 down the page)
5. The pass for the menu is 5768 and here you can define the high and low of the brightness slider from the notification bar (swipe down 2 times). For my unit I have no problem turning the brightness low point all the way to 5 and still I am not quite satisfied by the brightness low level.. Some users complained that if they turn it down to 30 the screen turns black, like in the illumination stops completely and some complained that they can’t turn it back on. So PAY ATTENTION while you play with the sliders… and if something bad happens don’t touch the screen at random in order to avoid pushing the SAVE button… you better reset the unit via RST button and start over.

Solution 2:
You need to modify in the customercfg.txt file that you find it in the root of the firmware before flashing.The file contains these 2 lines :
set-blduty-min=5 -> 5 defines the lowest point for brightness slider
set-blduty-max=100 -> 100 defines the highest point for the brightness slider

For me works perfectly 5 and 100. For some at 5 the illumination turns completely off so they run into issues like “after booting the screen turns off” so you NEED to TEST how low can you go on the slider in the “Backlight current adjustment” manu before modifying the file with the proper numbers.

Solution 3: Software
There are some software solutions for dimming the screen even more by applying a screen filter/overlay:
Warning : It does not play well with SuperSu that has TapJacking protection so while the filter is active the SuperSu does not acknowledge your tapping on it's menus if you want to Grand an app permissions for instance.
There is an option to disable the Tapjacking protection in SuperSu but I would advise not to.
The go to app for me is this : https://play.google.com/store/apps/details?id=com.haxor


19. When I install Google app the launcher crashes.
Yes it does, you can’t do anything about it except changing the launcher before installing Google app or change the launcher to a 3rd party launcher like Nova launcher or the default “launcher” (not Launcher3).
If you have installed Google and it keeps on crashing use the DOT app (if you haven’t disable it) on the screen to get to settings and uninstall Google app, reboot, then change the launcher, then reinstall the Google app.

Later edit - 7july - They finally fixed the problem in the 7 July firmware. I haven't tested personally but from what people wrote on the forum it seems ok now.
@CadillacMike confirms here : https://forum.xda-developers.com/showpost.php?p=73063409&postcount=969

20. Everytime I reboot the unit the FM Radio app starts automatically, can I turn that off.
No, there is no solution on how to take that “feature” down yet :)
Later edit : @Skinzaholic found this solution : https://forum.xda-developers.com/showpost.php?p=73672935&postcount=251

Other threads that you need to read

1. Mostly about android 5 but also many usefull informations and redirects to various usefull threads like hardware cooling mods
ROLL-UP -Joying 2GB - Sofia ( Non MTCB/MTCD )- Tips, tricks and mods
https://forum.xda-developers.com/an...roll-joying-2gb-sofia-mtcb-mtcd-tips-t3555249

2. The initial android 6 thread with lots of good info but spread on many pages, a good read none the less
Joying Intel Head Unit Android 6 Update
https://forum.xda-developers.com/an...ing-intel-head-unit-android-6-update-t3597121
 
Last edited:

edit

Senior Member
May 25, 2006
855
305
21. Some have the FYT5009 SOM but some have the new FYT6021, what are the differences?

1. both have 2Gb or ram and 32Gb storage
2. the CPU on the FYT5009 has a max clock of 1.041Ghz
3. the CPU on the FYT6021 has a max clock of 1,2Ghz
4. the FYT6021 SOM has a tiny bit better heatsink (shape wise to dissipate the heat) but worse for cooling mods. The heatsink is attached with screws so it's easy to take out and replace the thermal paste (with a higher quality one) between the components of the SOM (CPU, VRM) and the heatsink. It does not have thermal pads between the components of the SOM and the heatsink like the FYT5009 does if you look at the pictures here http://4pda.ru/forum/lofiversion/index.php?t793304-1400.html
5. the FYT5009 has an worse heatsink but way better for a cooling mod because of it's smooth surface (glue a bigger heatsink on it), it also has a big and thick thermal pad under the SOM to move some of the heat to the bottom of the steel case. The heatsink is soldered to the SOM board so it's tricky to open up and replace the thermal paste, but someone did it on the russian forum, user YAM1966 and he claims that he lowered the temp by 13C . More details here : http://4pda.ru/forum/lofiversion/index.php?t793304-1400.html (use google translate)
6. the motherboard that hosts the FYT6021 SoM does not have the 2 video out RCAs like the one that hosts the FYT5009 SoM

If you ask me BOTH SOMs need active cooling. The default heatsink on both is poor and without active cooling the heat builds up very fast to 60-70C.


22. Is there a problem if I flash the firmware made for FYT6021 to the FYT5009?
I heaven't seen anyone doing that for testing purposes so I don't know what happens. I was curious to see if flashing the 6021 firmware onto a 5009 drives the CPU clock to 1.2Ghz but I haven't found any info on it.
Although the SOMs are pretty much the same the motherboards that sit on look different from one model to another (different layout, some extra connectors on the board, missing video outputs) so the MCU's could be a bit different... I would say it's a small chance that you could brick the unit.... I can't tell if it will be permanent or temporary (if in the brick state allows you to you flash it again with the proper firmware)


23. Are there any mods/skins of the default FM Radio app?
Yes. @surfer63 did a very nice work here (with pictures)
https://hvdwolf.github.io/Joying-RootAssistant/RadioMods-examples.html


24. Are there any mirrors to the Joying firmwares?
Yes. @gtxaspec was very kind and hosted some here : http://mirrors.gtxlabs.com/joying/1_Firmware/
But not the latest one....


25. I need a small ADB kit to install and use, where can I find one?
Here : https://forum.xda-developers.com/showthread.php?p=42407269#post42407269
You can find portable (no install needed) and non portable versions also.


26. How much power it drains in sleep mode?
Usually the unit enters sleep in 50 seconds to 1 minute after you turn off the engine. In those 50 seconds to 1 minute the power drain fluctuates from 0.50 to 0.75A. After that the unit drains ONLY 0.012A.
I noticed 2 instances when the sleep behavior changes, can't really tell if it's by design or it's a bug:
1 If you happen turn on the engine in that 50 seconds to 1 minute time frame, before the HU enters sleep, from that moment on the unit will enter sleep only after 5 minutes from the moment the engine is off. In those 5 minutes the power drain fluctuates from 0.50A to 0.75A but mostly in the 0.60A area. After those 5 minutes it enters sleep mode and drains only 0.012A
2. After using Waze and iGo at some point the same issue occurs, and the unit behaves like I described above.
The unit has some fail safes and if for some reason it gets stuck draining more power than it should it shuts down/power off on it's own.


27. How long does it stay in sleep mode ?
Personally I haven't test it for more then 2.5 days and it slept fine 2.5 days without shutting down.. I use my car every day so it rarely sits in the driveway for long periods of time.
Some users said that it shuts down after 72 hours.


28. I am leaving my car in a parking lot of a month, I am afraid that my car battery will be empty when I get back, what shall I do?
If you don't start the car for a a longer period of time and you left the unit sleeping the HU shuts down/turn off at some point on it's own, no one really knows exactly after how much time is needed for that to happen.
To be absolutely sure that the unit drains no power at all and the car battery is safe do this :
1. enter Car settings app
2. Go to the bottom right tab (the one with the screwdriver on it) ckick it and enter 3368
3. Make sure that Dormancy Settings is set to OFF (the unit will power off/shut down when you stop the engine)
In the power off mode the HU it drains 0.00A


29. Why not use the Shutdown button from the notification bar to shutdown the unit ( 2 swipes down) ?
If in the Car Settings app the Dormancy Settings is set to ON, after you pushed the on screen button with the engine still running, the HU turns off the screen and backlight and it drains 0.45-0.60A. After you turn off the engine it enters sleep mode and drains the usual 0.012A. It does NOT shutdown! If you turn on the engine it wakes up in 2 seconds.


30. What about the Standby button?
It is semi-useless in my opinion. It displays the time and the date, white fonts on a black background.... nothing more.


31. Waze hangs when the HU exits sleep
I happened to me in many firmware versions, did not had the time to check how it behaves in the 25May version.
What I did is:
1. install the V6.3-Custom_Keys-Mods.zip made by @gustden from here : https://forum.xda-developers.com/an...-units/joying-2gb-steering-wheel-key-t3543390
2. I've downloaded Notepad++ app to be able to edit the install.sh from here : https://notepad-plus-plus.org/download/v7.4.1.html
2. Edited the launcher.sh with Notepad++ and inserted this
sleep 5
am force-stop com.waze
After this:
98) # ACC_OFF - executes on key off
$pause
In the end it should look like this :
98) # ACC_OFF - executes on key off
$pause
sleep 5
am force-stop com.waze

What is does is after you turn off the engine, it waits for 5 seconds and it kills the waze task. The good thing is that once the units wakes up it launches automatically the last active app, so it starts Waze and it resumes the course if it was interrupted during a course.


32. What app shall I use to edit launcher.sh ?
Notepad++, free, official download site : https://notepad-plus-plus.org/download/v7.4.1.html


33. How fast does the unit start?
1. From shutdown it takes 43 seconds.
2. From sleep it takes 2-3 seconds
My experience : I am using the unit for more then 3 weeks now and the unit never rebooted and it never started in the morning from shutdown.


34. What was your previous unit? Why did you choose this one?
Before this one I had an Witson unit with an RK3066 (dual core 1.6Ghz) with 1Gb of ram and 8Gb of storage, 2 microsd slots, 2 usb ports.
I upgraded to this one mostly for 2 reasons it's instant power on and the XDA support and community. After I bought it, I discovered that it has GLONASS and that was a great addition and it had a bit better GPS signal also a welcomed plus. After that I discovered that the unit can be tethered via bluetooth, a major plus.
The new unit lacks a CD/DVD drive but I don't need one, because I mostly stream music and use Waze... when I am in an area with no cellular coverage I use PlayerPro and iGo/Here. I haven't touched a CD in years also I consider the DVD technology obsolete. The sound quality of the FM Radio on the Joying unit is a lot better than my previous unit but it still lacks badly for me, especially when I listen to music, it lacks the dynamic range, it lacks punch, the clarity needed to be able to enjoy music. For talk shows and news is perfectly fine.
Believe me or not but I haven't really felt that this unit is faster then my previous one probably because I keep my units simple, I have very few apps loaded and running.


35. Have you done any hardware mods to your unit?
Yes. I could not stand the high temperatures of the CPU and the throttling on a hot day so I glued (with the help of Arctic Alumina thermal adhesive) some small heatsinks on top the (default) smooth aluminium heatsink to help dissipate the heat more efficiently and soon after I added a few more taller heatsinks for an even better efficiency. All that helped till a certain point where the heat buillt up in the steel case and remains trapped there heating everything up pretty nicely. So I drilled a lot of holes into the top of the case and mounted an low power, low noise high quality fan (Noctua NF R8 redux 1200). The fan sucks the air into the case and slowly cools down the internals.


36. Is there a way to start Google Maps with a darker theme at night to search for a place?
Yes! I was also bothered that when I start the Google Maps at night time, it welcomes me with a blinding white-gray map. Once you plot a course it enters navigation mode, checks (via gps) if its night outside and goes to a dark theme but untill that moment you have to deal with the white map.
So there is an Google Maps widget, more like a shortcut called "Driving" and that one starts the Google Maps in driving mode and at night has the proper dark theme and the cool thing is that in daytime has the proper bright theme.

37. Is there a way to set the default start up volume?
Yes ! In Car Settings app, first tab, lower left, scroll down till you found "Default boot volume" and set it to a decent 7 or 8... the default is 18 and it's too much.

38. I am using a pair of sunglasses that are polarized when I am driving and when I look at the unit the screen reflections (glare) are rainbow like, extremely annoying and the screen looks somewhat darker? Is there a solution for that?
Yes I bought an anti-reflex screen protector, from here : http://www.magic-guard.com/screen-protector-antireflex.html
I measured the screen exactly and ordered 2 sets, one exactly what I measured and the second with 1mm smaller just to be on the safe side in case the first one does not fit for some reason. They take custom size measurements and they laser cut it to your specifications.
It cuts the rainbow effect of the reflections, the fingerprints are no longer a problem, yes it still gathers fingerprints but are not that visible. It cuts down a bit on clarity if you look at it really close, it's nothing bad, but that was to be expected since the screen protector has a grainy texture. I don't really notice any clarity issues because the unit it's at an arm length from my face at all times :)

39. The glare on these units with clear glass on a car environment are absolutely horrible, any solution?
Yes! look above at question 38. Indeed the fixed unit position, depending on the car of course, mine is pretty up on the dashboard and pointed a bit up so the light from the side windows reflects pretty badly. I cannot use it without an anti-reflex screen protector to cut down the glare.

40. I installed Poweramp, I have the Custom Keys mod installed and working alright with other apps but it does not work with Poweramp to start the music on engine start. Is there a solution?
Yes! In the launcher.sh I added this :
# Poweramp
poweramp="com.maxmpz.audioplayer/.PlayerUIActivity"
poweramp_press=$play

and at "97)" you have to replace the simple "$play" with "( $poweramp && sleep 2 && $play ) &" in the end it should look like this:

97) # ACC_ON - execute on key on
( $poweramp && sleep 2 && $play ) &
;;

41. I've made the modifications that you mentioned above at 40 but it take some time for the music to play when I start the engine.
Yes, indeed it takes about 15 seconds. I haven't found a solution for that yet. On PlayerPro music player I did not encounter these kind of problems, it was almost instant from the moment the car was on and the app resumed ( not exactly instant mode like 5-6 seconds overall). @dayanandgp mentioned that is the units fault because it insists to scan the USB ports at every unit wake up.

Later edit : I found out after tons of testing (of course it's never fast or easy) that when you have installed the Google app there is that 15 seconds delay at Poweramp start. Once I uninstalled Google app the Poweramp music starts playing 3-4 seconds after the unit wakes up. What's strange is that Deezer is not affected by the Google app presence.... with or without Google app installed it starts playing in 3-4 seconds after the unit wakes up.

42. Poweramp does not work with Viper4Android even if other installed apps seem to work file with Viper.
Go to Settings -> Audio -> Advanced Tweaks -> Direct Volume Control (untick / disable it)
Now it should work fine..


43. are you using a different Google account for the car or the same that you have on your phone.
For a long time I was using my main account but at one point decided to make a new one just for my car because these Chinese units have very poor security and if you value your privacy I recommend to do the same.


44. How do you decide on what model to buy from all the Chinese units?
1. First of all I look for the unit that has the biggest fan club here on XDA :) Without the xda support, the mods that xda members make these units are pretty poor even if they have good hardware because most of the time the software (out of the box) is so bad that it makes you regret buying it in the first place.
2. Second, EXTREMELY important for me is to make sure the unit has ROOT. Most of the units that I've encountered have poor EQ, (that translates into very poor bass output for my speakers), some have 3 EQ bands, some have 7 or 9 or 10... NO matter how many EQ bands they have I've never seen a good implementation of the EQ... That's why for me Viper4Android is a MUST have piece of software I can tune the sound to my preference and tailor it to my car speakers. Viper4Android needs root to be able to install and run. For me and my car speakers (nothing fancy, but of average quality (or a bit above average) Viper4Android trully made the sound quality good (took it from poor to good).
3. I start to read a lot on the people experiences, gather as much data as I can find and decide if the unit will suits my needs or not.
4. After I gather enough data I make a list of questions to make sure that the unit really fits my needs and that I got all the facts straight (sometimes things change for better or worse depending on the firmwares)
5. it's also a bonus if the unit can be purchased from an European store because in some countries with the import taxes and vat the price can get quite high...


45. Why have you chosen this unit and not a different one ?
1. Mainly for the instant on feature. Got tired of my old unit that took 40 seconds to turn on each time I got into my car. After waiting for 40 seconds had to wait a bit more to start the music app, pick up a playlist of album and press play... then start waze, select the location and set sail. Wasted time around 1-1.30 minutes each time. With the new unit the time the music starts automatically where it left off, the waze starts automatically, I only need to enter the adress and go... wasted time 20 seconds at best.
The moment I turn on my car the last used music app resumes playing where it left off (this works only the @gustden "no kill" mod). Basically in 5 seconds from the car start the music starts playing without me touching the unit. Pure gold !
2. BT tethering - second best feature for me because I stream a lot of music and it's not heavy on the phone battery while I am the road for hours,
3. because it has GLONASS... it helps a lot with the GPS precision in many situations
4. the screen is decent for such a cheap unit. It has decent brightness during daytime and also goes low enough during night time but not as low as I would have liked... I have to use an app to take it further down... wrote about about it.
5. the SOM has the BT/Wi-Fi chip on it so the android has full access to the BT and WI-FI module so I can enable BT tethering something that I haven't seen on other Chinese units.... it's also very important for me. The downside is that is badly implemented in the software out of the box.... of course. A mod made it work (as i said the XDA community is pure gold when it comes to these units) but out of the box the BT tethering is impossible.
6. has good BT and Wi-Fi signal quality... not amazing speed or anything but enough
7. it has 2Gb of ram and 32 gb (24Gb free in fact) storage and a decent CPU. The CPU is just decent, it gets the job done but I could not call it good. The storage is slow when it comes to writing and decent when it comes to reading so rebooting (or booting from shutdown) is a bit on the slow side compared to my old rk3066 dual core at 1.6ghz with 1 gb of ram and 8gb storage. My old unit, using the same apps was booting in 40-45 seconds and this new one (Joying Sofia) is booting in the same amount of time (more of less) but it's a quad with 2gb of ram... I expected a faster booting experience but it is what it is. The upside is that I rarely reboot it or forced to boot up from the shutdown mode.
8. It has hardware buttons and volume knobs - The capacities buttons are not good for car use, you need to take your eyes from the road to look for the buttons you need to press
9. It does not have an CD unit but I am not interested in having one. I haven't touched a CD in the last 3 years and I haven't bought one in the last 6. I stream all my music for convenience. I don't need to handle CD's while driving, searching for an album or song is lightning fast, compiling big playlists is easy.
10. The FM radio implementation software and hardware is decent enough on the Joying unit but rather poor in my opinion so I don't use it. I rather stream an FM radio station over the internet... I get a lot better sound quality.

46. I want to flash JUST the MCU from another firmware without flashing the whole firmware how can I do that

If you want for some reason to flash the MCU only extract these files from an firmware and put in the in the root of a flashcard or usb stick :
AllInOne.bat
SQLSOFIA
STM8_PROJECT cov.s19
STM8UD.BIN

EVEN if you flash the MCU only at the end of the flashing it will wipe the unit also so BE carefully.


47. What If I want to flash the OS part of the firmware but I want to keep my old MCU

If you want for some reason to flash/reflash an firmware without the MCU (because you want to keep the MCU you have) unpack the firmware archive in a folder and delete these 3 files (just the 3, SQLSOFIA is needed for the unit to detect and flash the firmware, it's the flash trigger file)

AllInOne.bat
STM8_PROJECT cov.s19
STM8UD.BIN


48. I can't adjust brightness properly, it's way to bright at night and the "Backlight current adjustment" menu from the Car Settings app is gone

I flashed the 25May firmware the FYT5009 version on a 5009 unit and discovered that It does not have the brightness menu in the Car Settings app so I flashed the 25May FYT6021 version on the 5009 unit, flashed ok and the brightness menu showed up.
Then decided to compare the files (binary) between the firmwares to see what files are different and except the customercfg.txt and rksofiacfg.cfg all the other files are identical between the 2 firmwares.
The rksofiacfg.cfg file has the same size on both firmwares but the content is different.

It ALL comes down to this file when it comes to "Backlight current adjustment" menu being present or not : rksofiacfg.cfg

My advice is to get this file from a previous firmware that you used and where the "Backlight current adjustment" menu was present and working.

49. Is just me or the BT speed is lower with the Android 6 firmwares versus the Android 5 ones?
Indeed for some reason with Android 6 the bluetooth speed droped like 50-60%. Also I find the unit pretty picky with the phones when it comes to Bluetooth speed, I tested with an Huawei and it would never get past 220k DL but with a Samsung gets to 340k...

50. Is there any piece of software for the Joying unit that can make my life easier?
Yes it is. Thank @surfer63 for his nice piece of software!
More info here : https://forum.xda-developers.com/an...s/joying-extra-tools-apk-apk-to-help-t3628200

51. Can I cut the 3 second lag on the launcher.sh somehow? I feel that when I use the custom keys mod there is lag when I use the keys or steering wheel buttons.
@surfer63 gave some pointers here : https://forum.xda-developers.com/showpost.php?p=73023988&postcount=930

Edit the launcher.sh with Notepad++ and add "#!/system/bin/sh" at the beginning of the file

"This makes it slighly faster (approx 1 second) as the system does not have to check first whether "this executable" really is a shell script.
Next to that I removed all unused stuff as it makes the loading of the script slightly faster as well, but that should be in the range of milliseconds and is actually not worth the effort."

52. I want to turn off the screen but not the unit, the brightness bothers me at night.
Press and hold the MUTE button for 2-3 seconds and the screen will go off. Push any button or touch the screen to turn the screen back on.

53a. What cooling solutions do you have for the 5009 and 6021 units given the SoM have different heatsinks (more like heatplates)

Disclaimer : I am just giving some ideas here... just to make sure that your modding is safe talk to someone with extensive experience when it comes to electronics

IF you want to KEEP your warranty, especially when you have 2 years (European buyers) the best and single solution is to mount an 80 or 120 mm fan on the top of the case.
The fan needs to be high quality, silent, low power, low speed, no more then 1200-1800 RPM. Use a FUSE box for the FAN... ask someone with experience in electronics for more details.
You will need to cut a hole for the fan or drill a lot of small holes in the top steel cover for the air to get in... If you cut a single big hole and you are worried about the dust use an magnetic dust filter on top of the unit... you can find plenty of models online for PC cases.
With just a fan (and no additional heatsink glued onto the SoM), depending on your unit placement,the dash configuration, fan speed you might never see impressive low temperatures but at least you will not see the unit getting toasty at 100C. To explain a bit more about the temperature in the dash... some car have the air vents above the headunit and those vents cool the place up when AC is running , some cars have the headunit totally isolated... just a hole in the dash with little to no air getting to the unit so in this scenario the unit will heat up slowly but surely no matter what (in this case an the fan's help will be limited but still better then nothing)


On the 5009 - given the smooth surface, first remove the stickers, clean the surface, then find an aluminium heatsink that has many high fins (help dissipate the heat faster) and it's tall and long enough to NOT cover the SoM holes, use some thermal adhesive and glue it in. Also try not to pick up heatsinks with thick base, it ads up more weight but aren't necessarily more efficient. The CPU is under the "dent" so the dent and the area around it is very important. I guess you could fill up the dent with thermal glue to help with the contact of the new to be mounted heatsink although I did NOT test that.
You could glue in 2 heatsinks if they are the right size and the SoM holes will not be covered.
Example of heatsinks.
1 : https://www.micforg.co.jp/images/c_cs.jpg or this one http://northamericanshores.com/slowblog/good_heatsink.jpg

On the 6021 - given those tiny fins using a thermal adhesive on it it's a bit tricky. The CPU is under that middle flat square spot. You should use enough glue to fill the space between the fins (around the flat spot) to maximize the contact surface between your (new) soon to be mounted heatsink and the SoM heatsink. Be careful that a bigger amount of thermal adhesive will have a longer curing time (also is more liquid).
Use adhesive tape to cover the holes of the SoM heatsink so you don't accidentally get thermal adhesive inside those... and carefully remove the adhesive tape later when thermal adhesive has hardened enough.

About the height :
1. If you have a single DIN unit the heatsink needs to be lower so maybe 2 cm tall.... you need to measure because it depends on the fan position
2. if you have a standard 2DIN unit 3-4 cm would work ok (even 5 cm might be ok but check if you have enough spare room for the fan above)

When it comes to heatsinks the bigger the better... the more surface there is to dissipate the heat the cooler the component will get. I prefer aluminium heatsinks over the copper ones (when we talk about gluing them to the SoM) mostly because of the weight but there are some other issues like corrosion (copper with aluminium).... given the 5009 SoM is soldered to the motherboard the weight of the SoM+heatsink, combined with the car vibrations (more or less, depending on the car brand, engine type, road quality) could stress too much the SoM soldering points and possibly crack/break some in time. I am NOT sure of it, I don't have the means to test that, but just by looking at the soldering points I just don't have enough confidence to recommend an big 200-300 grams heatsinks. The heatsinks I've installed were around 60-120 grams max.
On the 6021 unit giving the socketed type of the SoM (way more solid built than 5009) you could probably install an heavier heatsink, say 200 grams, without worrying so much.... again, I have not test it to be absolute sure that nothing goes wrong in 3-6 years time.

Do NOT cover the SoM ventilation holes. Again, I don't have the expertise to be able to tell what happens if you cover those but I think the holes are there for a reason so let's keep them open.
Use some adhesive tape to cover the holes and remove it after you finished the modding (to prevent the holes to fill up with glue)

These thermal adhesive are good :
Warning : Both linked below are PERMANENT thermal adhesive, once you glued the heatsink on the SoM ... it's there for LIFE
I used this one because it's completly safe, it's not capacitive or conductive.
http://www.arcticsilver.com/arctic_alumina_thermal_adhesive.htm

This is better formula for heat transfering but it is slightly capacitive :
http://www.arcticsilver.com/arctic_silver_thermal_adhesive.htm
Be careful not to drop some by accident on the motherboard.

These 2 adhesives curing time depends a lot on the temperature.... the higher the temperature the faster the curing time is

Fans that I would use:
These 2 are adequate for a 2DIN unit :
Noctua, 80mm, 1200RPM - http://noctua.at/en/products/product-line-redux/nf-r8-redux-1200
Noctua, 120mm, 1200RPM - http://noctua.at/en/products/product-line-redux/nf-s12b-redux-1200

And maybe this ones are good option for some that think that they need more airflow although it will generate a bit more noise:
Noctua, 92mm, 1600RPM - http://noctua.at/en/products/product-line-redux/nf-b9-redux-1600
Noctua, 80mm, 1800RPM - http://noctua.at/en/products/product-line-redux/nf-r8-redux-1800

One thing I don't know is how these fans will behave in very cold weather, in the winter time at -10 to -25C.
I opted for the fans above because the Noctua brand is well known for it's very high quality fans and designs, 6 years warranty, having low RPM is good because they are very quiet although the airflow takes a hit, but I am using the 80mm 1200RPM fan and it's more then enough when you have an heatsink glued onto the SoM.
Remember that in the end no matter what fan size or speed you end up using, it is better to have a fan because every bit of airflow helps so if you don't have the space (in 1 din units) to install an 80mm fan install something that fits your space. Don't forget to install a fuse on the fan... if for some reason the fan breaks and for some reason shorts out... you need a failsafe (fuse).

go to 53b ->
 
Last edited:

edit

Senior Member
May 25, 2006
855
305
53b. What cooling solutions do you have for the 5009 and 6021 units given the SoM have different heatsinks (more like heatplates)

-> continued

Just some test thoughts : If you want to do some testing with various types of heatsinks because you don't know what to install, cover the motherboard with adhesive tape and leave only the SoM heatsink heatplate clear (to avoid a short in case an heatsink falls down the SoM heatsink over the motherboard. Now cover the SoM holes (to avoid thermal paste gettin in there). Take some thermal paste (NOT thermal adesive) and spread a thin layer on the whole SoM heatsink/heatplate and put the heatsink/heatsinks on it and mount the fan above it. Be carefully with the fan speed because the thermal paste does not offer a lot of stability for the heatsink... so a big fan speed might push the heatsink away from the SoM heatplate. Test for temperatures. Use this app to check for temps https://play.google.com/store/apps/details?id=info.kfsoft.android.MemoryIndicator it shows the CPU temp (1 core of your choosing) and CPU load (average or per core) at all times in the upper bar (if you configure it)
Use this app to simulate heavy system load to check how is the heatsink coping with the heat : https://play.google.com/store/apps/details?id=com.into.stability
Decide what do you want to keep. Clean very well the thermal paste from all the heatsinks and SoM heatsink with this http://www.arcticsilver.com/arcticlean.htm
Use permanent thermal adhesive this time to glue in the heatsink of your choice. Take all the adhesive tape out.


In the end is all about testing and taking risks, you don't feel like installing a big heatsink, you can do with small (15x15x15mm) heatsinks as long as you install many, not a single one but also remember that once you decided and you have glued them in and you are not happy with the performance (the risk i was talking about) there is no turning back.... if you don't feel like installing an 120mm fan because you feel like installing an 140mm fan that is laying around for years... install that one if it fits... if it breaks down after a week (risk) take everything out and change it.....just test everything before mounting it in your car and ask people if you want to do electric/electronic modification that you are not sure of.

Also when you drill holes always clean the holes of the metallic debris carefully, because if the debris drops on your motherboard it could short it out.

Later edit : Some people asked me if this mod it's a must and if their unit will fail if they will not mod it. If you ask me it's a must and without the mod the unit will fail and let me explain you why because it depends on a lot of factors. You see the CPU was made to function from -25C to 85C, 85 being the max safe temperature. The CPU on this unit gets easily to 90-100C if you run the unit for 1-2 hours, during a hot summer day, running an music player and a GPS software like Waze for instance (that tends to use a lot of CPU power). If you drive constantly for hours every day, during the day and you live in a hot climate this will shorten the lifespan of the unit by a lot. Not only that the CPU works above it's specifications but all the chips around the CPU (the RAM, storage chips, GPS chip, Wi-Fi, BT) will be force to run very hot because so called heatsink (more like a heatplate) will radiate the heat and slowly cook up everything on the SoM....sooner or later one of the chips will fail.

So if you are the kind of guy that drives 30 minutes in the morning and 30 minutes in the evening while listening to the radio or to some mp3 music, you keep your car always in a garage and you do not live in a hot climate, your unit will have a long life. But if you live in a hot climate and you drive a lot during the day, with music streaming over the internet, GPS software always on, you only park outside in the hot sun that gets the interior of the car frequently to 40-50C.... well, your unit will have a very short life.


54. What apps do you use to monitor the CPU temp?
Right now I am using this one, Resource Monitor Pro, because It shows me the temp (on a core of my choosing) but also the CPU usage (average) the free mem and CPU speed) and you can place all these info in the upper bar, visible at all times.
a. Paid version : https://play.google.com/store/apps/details?id=info.kfsoft.android.MemoryIndicatorPro
b. Free version : https://play.google.com/store/apps/details?id=info.kfsoft.android.MemoryIndicator

I also used this one, CPU Temperature Pure, it's a little more basic, it displays the CPU temp only but you can place it on the status bar, always visible and it looks good.
a. paid version : https://play.google.com/store/apps/details?id=com.yanyan.cputemppure
b. free version : https://play.google.com/store/apps/details?id=com.yanyan.cputemp

I also used this one to be able to look at all the CPU cores temps at once :
a. HWMonitor Pro - https://play.google.com/store/apps/details?id=com.cpuid.hwmonitorpro
b. CPU-Z - https://play.google.com/store/apps/details?id=com.cpuid.cpu_z

55. My steering wheel NEXT and PREV buttons functions are reversed. What can I do?
My previous unit an Witson 3066/1Gb ram had an CAN decoder that worked fine for my Ford but the Joying ones work only 85% fine meaning the PREV and NEXT buttons were reversed and that was a pain to use since all my life when I push the NEXT button I expect to hear the next song not the previous one. Although I was struggling to correct the Joying CAN mistake I could not because I did not find any way that I could reflash the CAN box. Joying said that the CAN might not be 100% compatible with my car although it should be.
Even if the old CAN box from my former Witson unit was looking exactly the same and the wire socket was exactly the same as the Joying one, the wiring was completely different, different wiring positioning in the socket, different wire colours. The internals of the CAN boxes looked almost the same but I did not had the courage to test the Witson one on the Joying afraid that I would damage the headunit or more importantly the car...

What I did in the end was to directly connect the resistive buttons of the steering wheel directly to the unit using some of the printed diagrams found in the unit box (bypassing the CAN) and program them via the unit software and let the CAN box to decode the other stuff like putting the car in reverse, turning on the lights, feeding +12V to the unit when I start the car.

What I learned is that CAN box is a black box... if it's not working it's almost impossible to find a fix of any kind... or buy a working replacement...

56. Do you recommend the 1 September Android 6 update?
Short answer, no! Long answer read here : https://forum.xda-developers.com/showpost.php?p=74324433&postcount=338

57. I just got my unit, it has Android 6, what build/release date shall I use in order to have a functional Viper4Android ?
I just tested a bunch of Android 6 firmwares over the last 5 days and these are my results : https://forum.xda-developers.com/showpost.php?p=75117890&postcount=412
Unfortunately none is as good as the Android 5 latest firmware ... not even close.

58. My GPS signal is poor. Any ideas?

Things to do :
1. check if GPS cable it's securely attached to the headunit
2. check the GPS antenna positioning and the signal strength - I personally attached directly to the windshield for the maximum signal strength but It's true that it does not look that good
- if the positioning is bad (under the dash for instance) and the signal is weak when you are on the road, open skys all around you, then it will be worse in the city and you might even loose it if you have tall buildings around... if that's the care you really need to reposition the GPS antenna
3. some windshields have a special coating to reduce cabin heat (have a greenish/violet tent when you look from outside) that blocks GPS signals up to 60% in that case you need to find a solution to mount the GPS antenna on the outside of the car OR in same cases there are special areas on the windshield (usually near/around the inside mirror) where are safe to mount the antenna - if that's the case check the car manual for more details of those zones
4. some windshields have heating elements in them, very thin and tiny wiring that heat up the windshields.... those block the GPS signal up to 40% but there are areas where you can mount the GPS antenna on the windshield without issues
5. antenna cable might get broken (inside wiring breaks and usually it's not visible when you visually inspect the cable) if the cable is bent, tensioned or from vibrations (usually on diesel cars where the engine vibrates a lot) - if that's the case buy another from a store that accept returns, it costs 9-12$, install it, if everything works fine then keep it... if not return it and go at step 6
6. open up the HU case and check GPS antenna cable soldering on the SoM, check if the soldering points are ok
7. if you use a custom rom with Xposed check if the GPSSpeedFix module is install and active, disable the GPS module from Xposed and restart the HU, check the behaviour again
8. if nothing works I would suggest reflashing a stock Joying firmware, so far, at this point in time (17/feb/2018) the December firmware worked the best for me... I still haven't tested the January one. Please follow the tutorial I made for flashing/reflashing.

59. My unit looses the GPS signal. Any ideas?
Check the answer for the question no 58 (above)

60. Where can I find/download the stock Joying firmware?
Have a look here : https://www.joyingauto.com/blog/tag/joying-intel-sofia-android-car-stereo-software-update/
Download the firmware based on your unit MCU (you will find it in the settings-> about section) and screen resolution.
 
Last edited:

edit

Senior Member
May 25, 2006
855
305
Many, many thanks @CadillacMike for the gift and many thanks @sanangel.
For more then a month I've read everything there is about the units, flashed my HU at least 30 times to test for everything so I figured it's time to post most of all I know about the unit.
@gustden inspired me with it's roll-up thread on android 5... Being a newcomer, with zero knowledge about this unit his thread was pure gold for me back then.

It's work in progress, I have more to write but I figured that I need to post this wall of text so people can use it untill I prepare the rest.

Right now I hit a bump, I can't edit the post anymore... something about a security token error... I wrote to an admin to help me out... I still need to clean the first one a bit.
 
Last edited:
  • Like
Reactions: KamaL

gustden

Senior Member
Oct 19, 2010
371
337
Chicago
18. Even at the lowest settings the screen is too bright.

Solution 1
1. Enter the Car Settings app
2. Select the lowest tab on the lower right (the one with the screwdriver)
3. Enter code 3368
4. Scroll towards the bottom and you shall see a option named :”Backlight current adjustment”. I have this menu, some said they don’t have it so my guess is that it depends on the model of the unit … can’t say for sure.

On the 5/25 ROM and I don't have the menu :( It working fine for me on 5/8 ROM. I have contacted joying about it, hopefully they fix it for my unit.

4. In this (25 May) firmware of android 6 is the Google Maps voice finally works with the FM Radio app?
Yes!

Google maps works, but it other apps that played previously while on radio do not. Even when added to the navi_app.txt file.

Thank you for this very informative post!
 
  • Like
Reactions: rhacy

edit

Senior Member
May 25, 2006
855
305
On the 5/25 ROM and I don't have the menu :( It working fine for me on 5/8 ROM. I have contacted joying about it, hopefully they fix it for my unit.

I am really sorry that it does not show. For me it did not show in the 12May firmware and it took me weeks of emailing every single day trying to to explain in various ways how important is this menu.
In the end they understood what I was talking about and I can see the menu in the 25May update. In fact I was convinced that everyone could see it. The language barrier is a really big issue so you need to have patience. My advice is to show them screenshots of the missing menu (there are some posted by me) and ask them to bring the menu back in the next firmware for your unit. And don't give up until they understand what you want from them. Compared to other Chinese HU brands that I've talked to, the support from Joying is actually quite decent.

Google maps works, but it other apps that played previously while on radio do not. Even when added to the navi_app.txt file.!

Owww... that's an real issue. I only use, iGo, Here we GO, Waze and Google Maps... and in the last 2 years since I began to use Waze I rarely use the others. I keep iGo and Here only as backup when I am out of the net coverage.

Thank you for this very informative post!

Thank you for all the help that you given us all this time !
 

Tervinder

Member
Nov 23, 2014
29
8
Really appreciate the write up! Does anyone have the issue when recieving a phone call while running Google Maps and the half screen bluetooth dialer comes up and all the caller can hear is a horrible distortion static sound? I can hear the caller but all they can hear is this terrible noise? I closed Google Maps and when the full screen bluetooth dialer comes up the call is fine.
 

edit

Senior Member
May 25, 2006
855
305
Really appreciate the write up! Does anyone have the issue when recieving a phone call while running Google Maps and the half screen bluetooth dialer comes up and all the caller can hear is a horrible distortion static sound? I can hear the caller but all they can hear is this terrible noise? I closed Google Maps and when the full screen bluetooth dialer comes up the call is fine.

That sounds like mic/cable interference to me. It a hardware problem. If you are using the external mic, from my testing (unit tested on my desk at home) the mic cable is not shielded at all and picks up really easy all the interference that the unit gives out and the one you are talking to on the phone hears all these strange sounds that the mic cable pics up.
1. first test mic cable is ok, test that is plugged in correctly, make a Google + voice call again, if the sound is bad go to step 2
2. unplug the mic, the one near the screen will take over, do the test again ? is it better? I bet it's better :)
3. if it's better you need an mic with good shielded cable
4. if the call test it's not better and the sound is same bad quality that means that you have an hardware issue related to the internals, mic, flat cables.
5. you can either have a look in side and check if all the flat cables inside the headunit and properly inserted
6. or you can send the unit for warranty repairs
 

Tervinder

Member
Nov 23, 2014
29
8
Thanks that all sounds like good steps if the Mic was always like that. However it worked fine prior to Android 6 update. And still works fine, it only causes interference when the bluetooth dialer overlaps with Google Maps.
 

edit

Senior Member
May 25, 2006
855
305
Thanks that all sounds like good steps if the Mic was always like that. However it worked fine prior to Android 6 update. And still works fine, it only causes interference when the bluetooth dialer overlaps with Google Maps.

I am curious if with the internal mic you encounter the same problem...
Have you wiped the unit after the update?
You updated from what version to what version?
 

Tervinder

Member
Nov 23, 2014
29
8
Is there any way to disable the external mic without just unplugging it? As it is currently installed in my truck and would be tedious to remove.

Yes I wiped the unit after the May 25 update, but did not wipe it prior to the update. Possibly the issue?

I went from May 12 to May 25 update recently, but I'm not sure when the interference started. I know 100% it worked on the last newest 5.1 update.
 

Clandaries

Senior Member
May 9, 2013
1,332
357
Stapel
Can someone confirm that the radio skins are working?

Dooing all those steps and i can see in cmd that it should work but when i reboot i still have the original radio app.

Thank you and greetings
 

Tervinder

Member
Nov 23, 2014
29
8
Eureka!! I figured it out. I ended up factory resetting, reflashing, and then resetting again. However the problem of terrible noise with Bluetooth Calls during Google Maps still persisted. I was quite disheartened, I also noticed if I hit the home button during the call the call quality would return to normal. So I knew it was something to do with Google Maps. My last ditch effort was to go into the Google app and disable "Ok Google Detection in Google Maps" and VOILA I tested a call during the same scenario and no weird interference! So if anyone else has this issue, just do as stated. Finally, I think my head unit is near back to where I want it.

Cheers Thanks again for all the Q/As it helped greatly!






That sounds like mic/cable interference to me. It a hardware problem. If you are using the external mic, from my testing (unit tested on my desk at home) the mic cable is not shielded at all and picks up really easy all the interference that the unit gives out and the one you are talking to on the phone hears all these strange sounds that the mic cable pics up.
1. first test mic cable is ok, test that is plugged in correctly, make a Google + voice call again, if the sound is bad go to step 2
2. unplug the mic, the one near the screen will take over, do the test again ? is it better? I bet it's better :)
3. if it's better you need an mic with good shielded cable
4. if the call test it's not better and the sound is same bad quality that means that you have an hardware issue related to the internals, mic, flat cables.
5. you can either have a look in side and check if all the flat cables inside the headunit and properly inserted
6. or you can send the unit for warranty repairs
 
  • Like
Reactions: edit

edit

Senior Member
May 25, 2006
855
305
Eureka!! I figured it out. I ended up factory resetting, reflashing, and then resetting again. However the problem of terrible noise with Bluetooth Calls during Google Maps still persisted. I was quite disheartened, I also noticed if I hit the home button during the call the call quality would return to normal. So I knew it was something to do with Google Maps. My last ditch effort was to go into the Google app and disable "Ok Google Detection in Google Maps" and VOILA I tested a call during the same scenario and no weird interference! So if anyone else has this issue, just do as stated. Finally, I think my head unit is near back to where I want it.

Cheers Thanks again for all the Q/As it helped greatly!

Thank you for returning with a solution to your problem.
Tried to recreate your issue on my unit but I could't. (paired phone, google maps, google app installed, calling my phone while google apps running)
Do you have Google Assistant (velvet.apk) installed by any chance?
 

Tervinder

Member
Nov 23, 2014
29
8
No I dont have Google Assistant (velvet.apk) installed. Just have the latest v6.3 nokill w/ gvs installed. My unit is JY-UL135N2.

Just noticed my bluetooth connection sometimes drops after ahwile on my phone, and I have to reconnect. Almost thought I was all fixed, damn.


Thank you for returning with a solution to your problem.
Tried to recreate your issue on my unit but I could't. (paired phone, google maps, google app installed, calling my phone while google apps running)
Do you have Google Assistant (velvet.apk) installed by any chance?
 

tommal

Member
Jun 6, 2017
6
2
unable to control volume

followed your guide for installing viper4android. i cant control the sound (radio) with the volume wheel. It is just set to a certain level and whenever i start the HU i can barely hear the sound till it jumps to the fixed audio level. anyone exp the same issue?
 

edit

Senior Member
May 25, 2006
855
305
followed your guide for installing viper4android. i cant control the sound (radio) with the volume wheel. It is just set to a certain level and whenever i start the HU i can barely hear the sound till it jumps to the fixed audio level. anyone exp the same issue?

That is a weird issue. Are you sure it started after you installed Viper? What unit and android version do you have?
I've installed Viper on 2 unit models, Joying with the 5009 SOM and with the 6021 SOM. Both units has volume wheel not the crappy touch volume bar. I've never had any issues.
 

Clandaries

Senior Member
May 9, 2013
1,332
357
Stapel
Viper4Android working perfect on my device.
It is just wow what this does with the sound...
Greetings

Headunit: JY-UM128N2
 

Top Liked Posts

  • There are no posts matching your filters.
  • 43
    Revised 1-Mar-2018
    I've updated the writings a bit for the 1 Sept firmware update.

    In case you are wondering I have this unit : Joying EU-JY-FL121N2


    01. It is worth the upgrade from Androd 5 to 6?
    For me this things determined me to update
    1. Split screen - you can put side by side 2 apps, not all apps work but most do. (does not work with 1 sept firmware)
    On Android 6 the split screen it known to be buggy but for me it worked ok, i find it useful putting Waze and PlayerPro side by side. iGo does not support split screen if you wonder.
    When the units enters sleep it "forgets" which apps were in split screen so next time the HU wakes up you need to set those 2 apps again in split screen. It does not take long but if you do it on a daily basis it gets annoying... quickly.
    2. Better CPU management and with that comes a bit better CPU power management (less heat generated for basic tasks, like playing music)
    3. The notifications background is not white anymore with the white text on it... it's how it is supposed to be... dark gray so you can read the white text

    Later edit :
    I been through all the Android 6 releases and I can tell you that it still does not feel as stable as it was on Android 5. There are many times when I felt sorry that I've upgraded to 6. I would downgrade to 5 in an instant if it would be possible. The unit bad implementation of the sleep behavior it really bugs me.
    Ranting more on the subject here : https://forum.xda-developers.com/showpost.php?p=72726651&postcount=47
    L.E. 25 July offers the best stability so far, can't recommend the 1 sept update : read here

    02. The mods of Android 5 are updated for Android 6 - 21 Sept (the latest at the time of writing)
    Yes ! All of them.


    03. Are there any custom roms for the Joying Intel Sofia ?
    Yes ! Finally ! Thanks to @gtxaspec and @surfer63 we have this :
    https://forum.xda-developers.com/an.../rom-gtx-joying-stock-rom-2018-01-29-t3742482


    04. Deezer white bar issue : This bug presents itself on android 6 only. Deezer has a white bar in player mode, annoying at night and ugly looking. Contacted Deezer, they promised a fix that never came, it’s been a month. Contacted Joying, they told me that they can’t do anything about it. Tested a lot of Deezer versions and found out that the version 5.3.11.90 is the newest that does not have the bug.
    LE : they still haven't fixed it and wrote them 5 times already... they promised each time... they value my input... yeah, right.
    L.E.E - 2018: kept writing up tickets latest was 2 weeks ago... they are still looking into was the answer.... for more then 1 year i must add... very poor user support,


    05. XiiaLive Pro issue : If the unit has the server no-kill mod installed, XiiaLive Pro has FFmpeg as the decoder (this is set by default), you put the app on pause and send the unit to sleep (turn off the engine), for some unknown reason the unit start to drain 0.15A instead of the default 0.01A and after a few minutes of sleeping it shuts down. You NEED to change the decoder from FFmpeg to Android to solve the problem.
    LE : They pretty much abandoned the development. This app has some issues, a big one being that when another music app steals the audio focus the Xia app does not pause or stop and continues to stream in the background, eating data for no reason. Wrote them a few times... nothing...


    06. What is the unit default DPI? Everything seems so small coming from my old unit.
    The default DPI is 160. If you set the DPI to 161 some apps will change the look of the interface (tablet - phone)
    L.E. - this can be solved with the help of the @gtxaspec custom ROM or installing Xposed and AppSettings mod via JET app made by @surfer63

    Unfortunately once you change the unit DPI from the default 160 to anything else, say 200, some of the default apps do not scale well and the notification bar grows in thickness a lot (taking a lot of screen estate) so I recommend a restart after each DPI modification to see how the android UI looks and also you need to check all the apps to see if there are badly affected by the DPI change.

    You can set the DPI via adb like this (you need to have adb installed) :

    adb kill-server
    adb connect IP (exemple : adb connect 192.168.1.55)
    adb shell wm density xxx (xxx being the density number for example 180 or 190 or 200 or 220 )


    07. After the update the unit shuts down instead of sleeping what shall I do:
    This unit has some kind of power monitoring, if an process or an app hangs the unit, draining more power then it should while it's in sleep mode it shuts down the unit in order to protect the car battery from draining completely.
    Most of the people that upgraded the unit (from android 5 to 6 or from one build of android 6 to another build of 6) without wipeing the data had various problems so updating this unit is not an option in my opinion with a proper wipe, no matter the firmware or version number.

    For trouble free, smooth operation you MUST do the following: (revised 05-sep-2017)
    1. backup data
    2. take out all the microsd cards, usb sticks and check them all for errors (some users had problems with data corruption on the cards that they kept in while updating)
    3. delete ALL the files from the internal storage (with the default file manager, go to internal storage, select all, delete)
    4. wipe the unit / reset the unit to defaults from the settings
    5. before flash the new firmware (again) let the unit cool down at least 30-45 minutes because without additional cooling it overheats and the CPU throttles all the way down to 416Mhz (processing everything extremely slowly) preventing the unit to successfully finish the firmware update. The updating is on a timer and once the timer is out the unit reset itself even if it did not finish the update. And you might find yourself in an endless loop and in some rare cases people got their units bricked. I've never had any problems because I update my units at home and while they are on my desk I take the lid off and put an big fan to blow over the components to cool everything down.
    6. wipe it again / reset the unit to defaults from the settings (this is optional)
    7. test the sleep function (to see if the unit without any additional software installed behaves ok)
    8. put everything back / reconfigure (I personally prefer not to restore from a Titanium backup and reinstall everything and reconfigure)
    9. test the sleep function again (to see if the unit is still ok after all that you installed or moded)
    10. before inserting back the old microSD cards and usb sticks in the new reflashed/reinstalled unit, make sure that are no files on them from the previous installation (files left over by apps from the the previous installation)
    It's always a good idea to start clean and delete the leftovers files that sometimes could be damaged and once you put the back you might encounter problems.

    08. I’ve just upgraded my unit and it feels slow, slugish?
    Follow the above tutorial except step 7 and 9 :)


    09.I can’t turn off the screen/touch BEEP, it’s annoying! Help !

    Solution 1
    BEFORE flashing or reflashing edit the file “config.txt” from the root of the update
    And change this line "ro.fyt.amp_switch=1" to this "ro.fyt.amp_switch=0" (it sets the AMP Enable to OFF by default)

    Solution 2
    1. Enter Car Settings app
    2. Go to the bottom right tab (the one with the screwdriver on it) ckick it and enter 3368
    3. go to the AMP Enable option and turn it OFF
    4. go to the EQ menu (second bottom tab from right to left) from the Car Settings and now you have Keypad Tone option and you can turn it off.

    10. After update, adb via wi-fi does not work anymore.
    Solution 1: by @gtxaspec
    Before flashing edit the “config.txt” (in the root of the firmware) and add this line without the quotes “service.adb.tcp.port=5555”

    Solution 2 : by @gustden
    1) download a terminal program ( Terminal Emulator for Android )
    2) enter the following command: setprop persist.adb.tcp.port 5555
    3) reboot


    Solution 3 : mod by @AssassinsLament
    In order to be able to do anything on the unit via ADB you NEED to enable ABD over Wi-Fi so download AoW_v1.0.apk from here https://forum.xda-developers.com/showpost.php?p=71616884&postcount=273 , copy the apk to a stick, run it in the unit and let it do it's job. (you can uninstall it at the end but I advise you to keep it and disable the ADB Over Wi-FI for security purposes)


    11. I need to root what shall I do?
    The mod credit goes to @surfer63 !

    1. Go to https://github.com/hvdwolf/Joying-RootAssistant
    2. go to the green button "Clone or download" and choose Download ZIP, download the file
    3. create folder c:\rootjoy and unpack the zip there
    4. connect to a router (home or phone router), and check what IP your headunit has (something like 192.168.1.34)
    4. open an command prompt with admin rights
    5. type the following without the quotes
    - "cd c:\rootjoy"
    - "cd SuperSU_for_Joying_Intel"
    6. at this point restart the unit, once it has booted enter next line (don't let the HU IDLE too long once it has booted because you will get disconnect errors)
    - copy_install.bat IP (example copy_install.bat 192.168.1.34)
    - if there are no errors, reboot (I followed the steps above and never failed)
    7. you are now rooted

    Later edit : @surfer63 moved files around and the repository adress from point 1 is at : https://github.com/hvdwolf/Joying-RootAssistant/releases/tag/20170617-02
    I haven't tested rooting with the new archive

    Later edit 2 : @surfer63 put up a nice tutorial here : https://hvdwolf.github.io/Joying-RootAssistant/rooting.html

    12. The default EQ and overall sound quality is poor, can I do anything to improve it?

    Solution 1
    Viper4Android : brought the sound to life for me, without it the sound quality is poor. With this software you can improve it quite a lot. The unit NEEDS to be rooted so you have to follow the above tutorial and root the unit first in order to install the Viper.
    01. go to this post https://forum.xda-developers.com/showpost.php?p=72064749&postcount=41, download the viper.zip file.
    02. For the me last version of the Viper4Android (included in the viper.zip) works ok but the EQ section is broken for me (meaning changing the EQ modifies the sound just slightly) so I used an older version of Viper4Android where the EQ section actually works and you can clearly hear the difference when playing with the EQ bars.. If you want to use my version go to to step 12 if you want to install the @AssassinsLament version go to step 03
    03. unpack the viper.zip to C:\viper
    04. open an cmd prompt with admin rights
    05. "cd c:\viper"
    06. restart the HU, just to be safe, after the reboot enter the next line in cmd prompt
    07. enter "viper.bat IP" (example : viper.bat 192.168.1.34)
    08. after it finished reboot the HU
    09. after reboot ran the app, say yes when it wants to install the driver, wait, it takes a few minutes, if android wants to end the task press wait, be patient, when it's done reboot again.
    10. ran the app again, from the left menu select settings, and lock on the headset profile (because the headset has all the options enabled so more power to you for tweaking the sound)
    11. select headset profile and have fun tweaking the sound.
    12. unpack the viper.zip to C:\viper
    13. go to https://forum.xda-developers.com/showthread.php?t=2191223 scroll down to v2.3.4.0 (Android 2.3~5.0) and download the mediafire link next to it (http://www.mediafire.com/download/cnqqdme51qy9ft4/ViPER4Android_FX_v2340.zip)
    14. inside the ViPER4Android_FX_v2340.zip there are 2 files, unpack the ViPER4Android_FX_A4.x.apk to the "c:\viper\viper" folder
    15. rename it from ViPER4Android_FX_A4.x.apk to ViPER4Android_FX_v2505_A4.x-A7.x.apk and overwrite the original ViPER4Android_FX_v2505_A4.x-A7.x.apk
    16. now you can follow the steps from 05 to 10 pretty much.

    Later edit : Unfortunately, the EQ section from the Viper app (no matter the version used) does not work with 25May and 7July firmware, the sound stutters, the music speed slows down in a weird way, there are pops in the speakers.
    Currently I am using the Viper only to enhance the bass mainly that you can't do otherwise with the extremely limited default Joying EQ.
    My settings are as follows :
    Viper Bass to +8db
    Viper Clarity to +3.5db
    Dynamic System to 10% - High Performance Headphones v1

    Solution 2 - by @bogdi1988
    You can change the default AMP TDA 7388 chip with the Pioneer PA2030A or the TDA7850
    Read here the details:
    https://forum.xda-developers.com/android-auto/android-head-units/joying-sofia-chip-upgrade-t3589587


    13. Enable “OK Google” from any screen or app possible on this unit?
    No, at this time, with this firmware version (25 May) at the time of writing there is no solution.
    The velvet.apk works fine, it does not crash, you can OK Google from any screen/app BUT it breaks the unit sleep mode, the unit will shutdown instead of sleeping.


    14. In this (25 May) firmware of android 6 is the Google Maps voice finally works with the FM Radio app?
    Yes!


    15. When I turn off the engine all the apps that are running are closed (killed) while the unit is sleeping.
    You need to have a look at this thread for the @gustden mod:
    For the 25 May firmware he built the 6.3 version of it’s mod.
    All the details and more here :
    https://forum.xda-developers.com/an...-units/joying-2gb-steering-wheel-key-t3543390

    Later edit : The 6.3 mod still works with 7 July but the guy that worked his magic on the mod did not update the mod for the 7July firmware at the time of writing and it's been away for 1.5 months so I am not sure about the future of the mod :(

    16. I want to enable split screen so I can run 2 apps at the same time.
    In order to do that you need to replace the Joying modified Settings.apk with the original android.
    We are gonna use the @AssassinsLament script so
    1. Go to this post https://forum.xda-developers.com/showpost.php?p=72107737&postcount=109 and download the “4-27-17_Original_5009_20_Settings.zip” file
    2. Create the folder c:\replace_settings and unpack the content of the 4-27-17_Original_5009_20_Settings.zip file
    3. Create a new folder called c:\replace_settings_temp and unpack the in this folder the contents of the 5009_60.zip file that it’s in the root of the firmware that that you used to flash the unit.
    If you don't have it download exactly the same firmware archive that you did to update the unit, unpack it and in the root you will find the 5009_60.zip archive that contains the Settings.apk and Settings.odex that you need.
    4. Copy the Settings.apk file that you will find in the c:\replace_settings_temp\system\priv-app\Settings\ to c:\replace_settings\SETTINGS, (overwriting the old one)
    5. Also copy the file Settings.odex from c:\replace_settings_temp\system\priv-app\Settings\oat\x86\ to c:\replace_settings\SETTINGS, (overwriting the old one)
    6. Now run a cmd prompt with admin rights and enter the c:\replace_settings folder
    7. Enter settings.bat IP (IP of the unit, example: settings.bat 192.168.1.55)
    8. Reboot
    9.Go to settings and to About Tablet option, go all the way down to the Build number and keep tapping it till it tells you that you have become a developer
    10.Push back once and now you have a new menu “Developer options”
    11.Enter it and at the “Drawing” section there is an option called “Multi-window mode” ENABLE it
    12.Now when you push the task switcher (from the notification bar) when the running apps are presented they have some icons on the left and you can decide how the apps will run, full screen, split screen on the right part of the screen, split screen on the left of the screen


    17. I want to tether via Bluetooth, is it possible?
    Yes with the mod made by @doitright

    Solution 1
    Go to https://forum.xda-developers.com/an...elopment/bluetooth-settings-launcher-t3504526 and download BluetoothTethering.apk
    You can follow the tutorial on that page if you are comfortable with ADB or if can follow mine so :
    1. Make a folder (with Root Explorer) named “BluetoothTethering” in “/system/priv-app/
    2. Give the folder 755 permissions (long click on the folder to have the folder selected and then go to the upper left to the 3 dots , and from the menu pick permissions then tick the boxes till you get 755)
    3. Copy in the newly created folder the BluetoothTethering.apk file and give it 644 permissions
    4. Reboot
    5. Open the HU default bluetooth app and pair the phone with the HU (I suggest to change the default PIN (0000) to something else for security purposes
    6. Start the BluetoothTethering app select the paired phone, enable Auto Connect PAN, push Start Service, also Enable Auto Bluetooth Tethering.

    Solution 2
    Use this app from the playstore :
    Free version : https://play.google.com/store/apps/details?id=com.tomlocksapps.bluetoothtetheringmanager
    Paid version : https://play.google.com/store/apps/details?id=com.tomlocksapps.bluetoothtetheringmanager.pro

    18. Even at the lowest settings the screen is too bright.

    Solution 1
    1. Enter the Car Settings app
    2. Select the lowest tab on the lower right (the one with the screwdriver)
    3. Enter code 3368
    4. Scroll towards the bottom and you shall see a option named :”Backlight current adjustment”. I have this menu, some said they don’t have it so my guess is that it depends on the model of the unit … can’t say for sure. (LE : the menu is present if you flash the firmware with a certain file read at no 48 down the page)
    5. The pass for the menu is 5768 and here you can define the high and low of the brightness slider from the notification bar (swipe down 2 times). For my unit I have no problem turning the brightness low point all the way to 5 and still I am not quite satisfied by the brightness low level.. Some users complained that if they turn it down to 30 the screen turns black, like in the illumination stops completely and some complained that they can’t turn it back on. So PAY ATTENTION while you play with the sliders… and if something bad happens don’t touch the screen at random in order to avoid pushing the SAVE button… you better reset the unit via RST button and start over.

    Solution 2:
    You need to modify in the customercfg.txt file that you find it in the root of the firmware before flashing.The file contains these 2 lines :
    set-blduty-min=5 -> 5 defines the lowest point for brightness slider
    set-blduty-max=100 -> 100 defines the highest point for the brightness slider

    For me works perfectly 5 and 100. For some at 5 the illumination turns completely off so they run into issues like “after booting the screen turns off” so you NEED to TEST how low can you go on the slider in the “Backlight current adjustment” manu before modifying the file with the proper numbers.

    Solution 3: Software
    There are some software solutions for dimming the screen even more by applying a screen filter/overlay:
    Warning : It does not play well with SuperSu that has TapJacking protection so while the filter is active the SuperSu does not acknowledge your tapping on it's menus if you want to Grand an app permissions for instance.
    There is an option to disable the Tapjacking protection in SuperSu but I would advise not to.
    The go to app for me is this : https://play.google.com/store/apps/details?id=com.haxor


    19. When I install Google app the launcher crashes.
    Yes it does, you can’t do anything about it except changing the launcher before installing Google app or change the launcher to a 3rd party launcher like Nova launcher or the default “launcher” (not Launcher3).
    If you have installed Google and it keeps on crashing use the DOT app (if you haven’t disable it) on the screen to get to settings and uninstall Google app, reboot, then change the launcher, then reinstall the Google app.

    Later edit - 7july - They finally fixed the problem in the 7 July firmware. I haven't tested personally but from what people wrote on the forum it seems ok now.
    @CadillacMike confirms here : https://forum.xda-developers.com/showpost.php?p=73063409&postcount=969

    20. Everytime I reboot the unit the FM Radio app starts automatically, can I turn that off.
    No, there is no solution on how to take that “feature” down yet :)
    Later edit : @Skinzaholic found this solution : https://forum.xda-developers.com/showpost.php?p=73672935&postcount=251

    Other threads that you need to read

    1. Mostly about android 5 but also many usefull informations and redirects to various usefull threads like hardware cooling mods
    ROLL-UP -Joying 2GB - Sofia ( Non MTCB/MTCD )- Tips, tricks and mods
    https://forum.xda-developers.com/an...roll-joying-2gb-sofia-mtcb-mtcd-tips-t3555249

    2. The initial android 6 thread with lots of good info but spread on many pages, a good read none the less
    Joying Intel Head Unit Android 6 Update
    https://forum.xda-developers.com/an...ing-intel-head-unit-android-6-update-t3597121
    28
    21. Some have the FYT5009 SOM but some have the new FYT6021, what are the differences?

    1. both have 2Gb or ram and 32Gb storage
    2. the CPU on the FYT5009 has a max clock of 1.041Ghz
    3. the CPU on the FYT6021 has a max clock of 1,2Ghz
    4. the FYT6021 SOM has a tiny bit better heatsink (shape wise to dissipate the heat) but worse for cooling mods. The heatsink is attached with screws so it's easy to take out and replace the thermal paste (with a higher quality one) between the components of the SOM (CPU, VRM) and the heatsink. It does not have thermal pads between the components of the SOM and the heatsink like the FYT5009 does if you look at the pictures here http://4pda.ru/forum/lofiversion/index.php?t793304-1400.html
    5. the FYT5009 has an worse heatsink but way better for a cooling mod because of it's smooth surface (glue a bigger heatsink on it), it also has a big and thick thermal pad under the SOM to move some of the heat to the bottom of the steel case. The heatsink is soldered to the SOM board so it's tricky to open up and replace the thermal paste, but someone did it on the russian forum, user YAM1966 and he claims that he lowered the temp by 13C . More details here : http://4pda.ru/forum/lofiversion/index.php?t793304-1400.html (use google translate)
    6. the motherboard that hosts the FYT6021 SoM does not have the 2 video out RCAs like the one that hosts the FYT5009 SoM

    If you ask me BOTH SOMs need active cooling. The default heatsink on both is poor and without active cooling the heat builds up very fast to 60-70C.


    22. Is there a problem if I flash the firmware made for FYT6021 to the FYT5009?
    I heaven't seen anyone doing that for testing purposes so I don't know what happens. I was curious to see if flashing the 6021 firmware onto a 5009 drives the CPU clock to 1.2Ghz but I haven't found any info on it.
    Although the SOMs are pretty much the same the motherboards that sit on look different from one model to another (different layout, some extra connectors on the board, missing video outputs) so the MCU's could be a bit different... I would say it's a small chance that you could brick the unit.... I can't tell if it will be permanent or temporary (if in the brick state allows you to you flash it again with the proper firmware)


    23. Are there any mods/skins of the default FM Radio app?
    Yes. @surfer63 did a very nice work here (with pictures)
    https://hvdwolf.github.io/Joying-RootAssistant/RadioMods-examples.html


    24. Are there any mirrors to the Joying firmwares?
    Yes. @gtxaspec was very kind and hosted some here : http://mirrors.gtxlabs.com/joying/1_Firmware/
    But not the latest one....


    25. I need a small ADB kit to install and use, where can I find one?
    Here : https://forum.xda-developers.com/showthread.php?p=42407269#post42407269
    You can find portable (no install needed) and non portable versions also.


    26. How much power it drains in sleep mode?
    Usually the unit enters sleep in 50 seconds to 1 minute after you turn off the engine. In those 50 seconds to 1 minute the power drain fluctuates from 0.50 to 0.75A. After that the unit drains ONLY 0.012A.
    I noticed 2 instances when the sleep behavior changes, can't really tell if it's by design or it's a bug:
    1 If you happen turn on the engine in that 50 seconds to 1 minute time frame, before the HU enters sleep, from that moment on the unit will enter sleep only after 5 minutes from the moment the engine is off. In those 5 minutes the power drain fluctuates from 0.50A to 0.75A but mostly in the 0.60A area. After those 5 minutes it enters sleep mode and drains only 0.012A
    2. After using Waze and iGo at some point the same issue occurs, and the unit behaves like I described above.
    The unit has some fail safes and if for some reason it gets stuck draining more power than it should it shuts down/power off on it's own.


    27. How long does it stay in sleep mode ?
    Personally I haven't test it for more then 2.5 days and it slept fine 2.5 days without shutting down.. I use my car every day so it rarely sits in the driveway for long periods of time.
    Some users said that it shuts down after 72 hours.


    28. I am leaving my car in a parking lot of a month, I am afraid that my car battery will be empty when I get back, what shall I do?
    If you don't start the car for a a longer period of time and you left the unit sleeping the HU shuts down/turn off at some point on it's own, no one really knows exactly after how much time is needed for that to happen.
    To be absolutely sure that the unit drains no power at all and the car battery is safe do this :
    1. enter Car settings app
    2. Go to the bottom right tab (the one with the screwdriver on it) ckick it and enter 3368
    3. Make sure that Dormancy Settings is set to OFF (the unit will power off/shut down when you stop the engine)
    In the power off mode the HU it drains 0.00A


    29. Why not use the Shutdown button from the notification bar to shutdown the unit ( 2 swipes down) ?
    If in the Car Settings app the Dormancy Settings is set to ON, after you pushed the on screen button with the engine still running, the HU turns off the screen and backlight and it drains 0.45-0.60A. After you turn off the engine it enters sleep mode and drains the usual 0.012A. It does NOT shutdown! If you turn on the engine it wakes up in 2 seconds.


    30. What about the Standby button?
    It is semi-useless in my opinion. It displays the time and the date, white fonts on a black background.... nothing more.


    31. Waze hangs when the HU exits sleep
    I happened to me in many firmware versions, did not had the time to check how it behaves in the 25May version.
    What I did is:
    1. install the V6.3-Custom_Keys-Mods.zip made by @gustden from here : https://forum.xda-developers.com/an...-units/joying-2gb-steering-wheel-key-t3543390
    2. I've downloaded Notepad++ app to be able to edit the install.sh from here : https://notepad-plus-plus.org/download/v7.4.1.html
    2. Edited the launcher.sh with Notepad++ and inserted this
    sleep 5
    am force-stop com.waze
    After this:
    98) # ACC_OFF - executes on key off
    $pause
    In the end it should look like this :
    98) # ACC_OFF - executes on key off
    $pause
    sleep 5
    am force-stop com.waze

    What is does is after you turn off the engine, it waits for 5 seconds and it kills the waze task. The good thing is that once the units wakes up it launches automatically the last active app, so it starts Waze and it resumes the course if it was interrupted during a course.


    32. What app shall I use to edit launcher.sh ?
    Notepad++, free, official download site : https://notepad-plus-plus.org/download/v7.4.1.html


    33. How fast does the unit start?
    1. From shutdown it takes 43 seconds.
    2. From sleep it takes 2-3 seconds
    My experience : I am using the unit for more then 3 weeks now and the unit never rebooted and it never started in the morning from shutdown.


    34. What was your previous unit? Why did you choose this one?
    Before this one I had an Witson unit with an RK3066 (dual core 1.6Ghz) with 1Gb of ram and 8Gb of storage, 2 microsd slots, 2 usb ports.
    I upgraded to this one mostly for 2 reasons it's instant power on and the XDA support and community. After I bought it, I discovered that it has GLONASS and that was a great addition and it had a bit better GPS signal also a welcomed plus. After that I discovered that the unit can be tethered via bluetooth, a major plus.
    The new unit lacks a CD/DVD drive but I don't need one, because I mostly stream music and use Waze... when I am in an area with no cellular coverage I use PlayerPro and iGo/Here. I haven't touched a CD in years also I consider the DVD technology obsolete. The sound quality of the FM Radio on the Joying unit is a lot better than my previous unit but it still lacks badly for me, especially when I listen to music, it lacks the dynamic range, it lacks punch, the clarity needed to be able to enjoy music. For talk shows and news is perfectly fine.
    Believe me or not but I haven't really felt that this unit is faster then my previous one probably because I keep my units simple, I have very few apps loaded and running.


    35. Have you done any hardware mods to your unit?
    Yes. I could not stand the high temperatures of the CPU and the throttling on a hot day so I glued (with the help of Arctic Alumina thermal adhesive) some small heatsinks on top the (default) smooth aluminium heatsink to help dissipate the heat more efficiently and soon after I added a few more taller heatsinks for an even better efficiency. All that helped till a certain point where the heat buillt up in the steel case and remains trapped there heating everything up pretty nicely. So I drilled a lot of holes into the top of the case and mounted an low power, low noise high quality fan (Noctua NF R8 redux 1200). The fan sucks the air into the case and slowly cools down the internals.


    36. Is there a way to start Google Maps with a darker theme at night to search for a place?
    Yes! I was also bothered that when I start the Google Maps at night time, it welcomes me with a blinding white-gray map. Once you plot a course it enters navigation mode, checks (via gps) if its night outside and goes to a dark theme but untill that moment you have to deal with the white map.
    So there is an Google Maps widget, more like a shortcut called "Driving" and that one starts the Google Maps in driving mode and at night has the proper dark theme and the cool thing is that in daytime has the proper bright theme.

    37. Is there a way to set the default start up volume?
    Yes ! In Car Settings app, first tab, lower left, scroll down till you found "Default boot volume" and set it to a decent 7 or 8... the default is 18 and it's too much.

    38. I am using a pair of sunglasses that are polarized when I am driving and when I look at the unit the screen reflections (glare) are rainbow like, extremely annoying and the screen looks somewhat darker? Is there a solution for that?
    Yes I bought an anti-reflex screen protector, from here : http://www.magic-guard.com/screen-protector-antireflex.html
    I measured the screen exactly and ordered 2 sets, one exactly what I measured and the second with 1mm smaller just to be on the safe side in case the first one does not fit for some reason. They take custom size measurements and they laser cut it to your specifications.
    It cuts the rainbow effect of the reflections, the fingerprints are no longer a problem, yes it still gathers fingerprints but are not that visible. It cuts down a bit on clarity if you look at it really close, it's nothing bad, but that was to be expected since the screen protector has a grainy texture. I don't really notice any clarity issues because the unit it's at an arm length from my face at all times :)

    39. The glare on these units with clear glass on a car environment are absolutely horrible, any solution?
    Yes! look above at question 38. Indeed the fixed unit position, depending on the car of course, mine is pretty up on the dashboard and pointed a bit up so the light from the side windows reflects pretty badly. I cannot use it without an anti-reflex screen protector to cut down the glare.

    40. I installed Poweramp, I have the Custom Keys mod installed and working alright with other apps but it does not work with Poweramp to start the music on engine start. Is there a solution?
    Yes! In the launcher.sh I added this :
    # Poweramp
    poweramp="com.maxmpz.audioplayer/.PlayerUIActivity"
    poweramp_press=$play

    and at "97)" you have to replace the simple "$play" with "( $poweramp && sleep 2 && $play ) &" in the end it should look like this:

    97) # ACC_ON - execute on key on
    ( $poweramp && sleep 2 && $play ) &
    ;;

    41. I've made the modifications that you mentioned above at 40 but it take some time for the music to play when I start the engine.
    Yes, indeed it takes about 15 seconds. I haven't found a solution for that yet. On PlayerPro music player I did not encounter these kind of problems, it was almost instant from the moment the car was on and the app resumed ( not exactly instant mode like 5-6 seconds overall). @dayanandgp mentioned that is the units fault because it insists to scan the USB ports at every unit wake up.

    Later edit : I found out after tons of testing (of course it's never fast or easy) that when you have installed the Google app there is that 15 seconds delay at Poweramp start. Once I uninstalled Google app the Poweramp music starts playing 3-4 seconds after the unit wakes up. What's strange is that Deezer is not affected by the Google app presence.... with or without Google app installed it starts playing in 3-4 seconds after the unit wakes up.

    42. Poweramp does not work with Viper4Android even if other installed apps seem to work file with Viper.
    Go to Settings -> Audio -> Advanced Tweaks -> Direct Volume Control (untick / disable it)
    Now it should work fine..


    43. are you using a different Google account for the car or the same that you have on your phone.
    For a long time I was using my main account but at one point decided to make a new one just for my car because these Chinese units have very poor security and if you value your privacy I recommend to do the same.


    44. How do you decide on what model to buy from all the Chinese units?
    1. First of all I look for the unit that has the biggest fan club here on XDA :) Without the xda support, the mods that xda members make these units are pretty poor even if they have good hardware because most of the time the software (out of the box) is so bad that it makes you regret buying it in the first place.
    2. Second, EXTREMELY important for me is to make sure the unit has ROOT. Most of the units that I've encountered have poor EQ, (that translates into very poor bass output for my speakers), some have 3 EQ bands, some have 7 or 9 or 10... NO matter how many EQ bands they have I've never seen a good implementation of the EQ... That's why for me Viper4Android is a MUST have piece of software I can tune the sound to my preference and tailor it to my car speakers. Viper4Android needs root to be able to install and run. For me and my car speakers (nothing fancy, but of average quality (or a bit above average) Viper4Android trully made the sound quality good (took it from poor to good).
    3. I start to read a lot on the people experiences, gather as much data as I can find and decide if the unit will suits my needs or not.
    4. After I gather enough data I make a list of questions to make sure that the unit really fits my needs and that I got all the facts straight (sometimes things change for better or worse depending on the firmwares)
    5. it's also a bonus if the unit can be purchased from an European store because in some countries with the import taxes and vat the price can get quite high...


    45. Why have you chosen this unit and not a different one ?
    1. Mainly for the instant on feature. Got tired of my old unit that took 40 seconds to turn on each time I got into my car. After waiting for 40 seconds had to wait a bit more to start the music app, pick up a playlist of album and press play... then start waze, select the location and set sail. Wasted time around 1-1.30 minutes each time. With the new unit the time the music starts automatically where it left off, the waze starts automatically, I only need to enter the adress and go... wasted time 20 seconds at best.
    The moment I turn on my car the last used music app resumes playing where it left off (this works only the @gustden "no kill" mod). Basically in 5 seconds from the car start the music starts playing without me touching the unit. Pure gold !
    2. BT tethering - second best feature for me because I stream a lot of music and it's not heavy on the phone battery while I am the road for hours,
    3. because it has GLONASS... it helps a lot with the GPS precision in many situations
    4. the screen is decent for such a cheap unit. It has decent brightness during daytime and also goes low enough during night time but not as low as I would have liked... I have to use an app to take it further down... wrote about about it.
    5. the SOM has the BT/Wi-Fi chip on it so the android has full access to the BT and WI-FI module so I can enable BT tethering something that I haven't seen on other Chinese units.... it's also very important for me. The downside is that is badly implemented in the software out of the box.... of course. A mod made it work (as i said the XDA community is pure gold when it comes to these units) but out of the box the BT tethering is impossible.
    6. has good BT and Wi-Fi signal quality... not amazing speed or anything but enough
    7. it has 2Gb of ram and 32 gb (24Gb free in fact) storage and a decent CPU. The CPU is just decent, it gets the job done but I could not call it good. The storage is slow when it comes to writing and decent when it comes to reading so rebooting (or booting from shutdown) is a bit on the slow side compared to my old rk3066 dual core at 1.6ghz with 1 gb of ram and 8gb storage. My old unit, using the same apps was booting in 40-45 seconds and this new one (Joying Sofia) is booting in the same amount of time (more of less) but it's a quad with 2gb of ram... I expected a faster booting experience but it is what it is. The upside is that I rarely reboot it or forced to boot up from the shutdown mode.
    8. It has hardware buttons and volume knobs - The capacities buttons are not good for car use, you need to take your eyes from the road to look for the buttons you need to press
    9. It does not have an CD unit but I am not interested in having one. I haven't touched a CD in the last 3 years and I haven't bought one in the last 6. I stream all my music for convenience. I don't need to handle CD's while driving, searching for an album or song is lightning fast, compiling big playlists is easy.
    10. The FM radio implementation software and hardware is decent enough on the Joying unit but rather poor in my opinion so I don't use it. I rather stream an FM radio station over the internet... I get a lot better sound quality.

    46. I want to flash JUST the MCU from another firmware without flashing the whole firmware how can I do that

    If you want for some reason to flash the MCU only extract these files from an firmware and put in the in the root of a flashcard or usb stick :
    AllInOne.bat
    SQLSOFIA
    STM8_PROJECT cov.s19
    STM8UD.BIN

    EVEN if you flash the MCU only at the end of the flashing it will wipe the unit also so BE carefully.


    47. What If I want to flash the OS part of the firmware but I want to keep my old MCU

    If you want for some reason to flash/reflash an firmware without the MCU (because you want to keep the MCU you have) unpack the firmware archive in a folder and delete these 3 files (just the 3, SQLSOFIA is needed for the unit to detect and flash the firmware, it's the flash trigger file)

    AllInOne.bat
    STM8_PROJECT cov.s19
    STM8UD.BIN


    48. I can't adjust brightness properly, it's way to bright at night and the "Backlight current adjustment" menu from the Car Settings app is gone

    I flashed the 25May firmware the FYT5009 version on a 5009 unit and discovered that It does not have the brightness menu in the Car Settings app so I flashed the 25May FYT6021 version on the 5009 unit, flashed ok and the brightness menu showed up.
    Then decided to compare the files (binary) between the firmwares to see what files are different and except the customercfg.txt and rksofiacfg.cfg all the other files are identical between the 2 firmwares.
    The rksofiacfg.cfg file has the same size on both firmwares but the content is different.

    It ALL comes down to this file when it comes to "Backlight current adjustment" menu being present or not : rksofiacfg.cfg

    My advice is to get this file from a previous firmware that you used and where the "Backlight current adjustment" menu was present and working.

    49. Is just me or the BT speed is lower with the Android 6 firmwares versus the Android 5 ones?
    Indeed for some reason with Android 6 the bluetooth speed droped like 50-60%. Also I find the unit pretty picky with the phones when it comes to Bluetooth speed, I tested with an Huawei and it would never get past 220k DL but with a Samsung gets to 340k...

    50. Is there any piece of software for the Joying unit that can make my life easier?
    Yes it is. Thank @surfer63 for his nice piece of software!
    More info here : https://forum.xda-developers.com/an...s/joying-extra-tools-apk-apk-to-help-t3628200

    51. Can I cut the 3 second lag on the launcher.sh somehow? I feel that when I use the custom keys mod there is lag when I use the keys or steering wheel buttons.
    @surfer63 gave some pointers here : https://forum.xda-developers.com/showpost.php?p=73023988&postcount=930

    Edit the launcher.sh with Notepad++ and add "#!/system/bin/sh" at the beginning of the file

    "This makes it slighly faster (approx 1 second) as the system does not have to check first whether "this executable" really is a shell script.
    Next to that I removed all unused stuff as it makes the loading of the script slightly faster as well, but that should be in the range of milliseconds and is actually not worth the effort."

    52. I want to turn off the screen but not the unit, the brightness bothers me at night.
    Press and hold the MUTE button for 2-3 seconds and the screen will go off. Push any button or touch the screen to turn the screen back on.

    53a. What cooling solutions do you have for the 5009 and 6021 units given the SoM have different heatsinks (more like heatplates)

    Disclaimer : I am just giving some ideas here... just to make sure that your modding is safe talk to someone with extensive experience when it comes to electronics

    IF you want to KEEP your warranty, especially when you have 2 years (European buyers) the best and single solution is to mount an 80 or 120 mm fan on the top of the case.
    The fan needs to be high quality, silent, low power, low speed, no more then 1200-1800 RPM. Use a FUSE box for the FAN... ask someone with experience in electronics for more details.
    You will need to cut a hole for the fan or drill a lot of small holes in the top steel cover for the air to get in... If you cut a single big hole and you are worried about the dust use an magnetic dust filter on top of the unit... you can find plenty of models online for PC cases.
    With just a fan (and no additional heatsink glued onto the SoM), depending on your unit placement,the dash configuration, fan speed you might never see impressive low temperatures but at least you will not see the unit getting toasty at 100C. To explain a bit more about the temperature in the dash... some car have the air vents above the headunit and those vents cool the place up when AC is running , some cars have the headunit totally isolated... just a hole in the dash with little to no air getting to the unit so in this scenario the unit will heat up slowly but surely no matter what (in this case an the fan's help will be limited but still better then nothing)


    On the 5009 - given the smooth surface, first remove the stickers, clean the surface, then find an aluminium heatsink that has many high fins (help dissipate the heat faster) and it's tall and long enough to NOT cover the SoM holes, use some thermal adhesive and glue it in. Also try not to pick up heatsinks with thick base, it ads up more weight but aren't necessarily more efficient. The CPU is under the "dent" so the dent and the area around it is very important. I guess you could fill up the dent with thermal glue to help with the contact of the new to be mounted heatsink although I did NOT test that.
    You could glue in 2 heatsinks if they are the right size and the SoM holes will not be covered.
    Example of heatsinks.
    1 : https://www.micforg.co.jp/images/c_cs.jpg or this one http://northamericanshores.com/slowblog/good_heatsink.jpg

    On the 6021 - given those tiny fins using a thermal adhesive on it it's a bit tricky. The CPU is under that middle flat square spot. You should use enough glue to fill the space between the fins (around the flat spot) to maximize the contact surface between your (new) soon to be mounted heatsink and the SoM heatsink. Be careful that a bigger amount of thermal adhesive will have a longer curing time (also is more liquid).
    Use adhesive tape to cover the holes of the SoM heatsink so you don't accidentally get thermal adhesive inside those... and carefully remove the adhesive tape later when thermal adhesive has hardened enough.

    About the height :
    1. If you have a single DIN unit the heatsink needs to be lower so maybe 2 cm tall.... you need to measure because it depends on the fan position
    2. if you have a standard 2DIN unit 3-4 cm would work ok (even 5 cm might be ok but check if you have enough spare room for the fan above)

    When it comes to heatsinks the bigger the better... the more surface there is to dissipate the heat the cooler the component will get. I prefer aluminium heatsinks over the copper ones (when we talk about gluing them to the SoM) mostly because of the weight but there are some other issues like corrosion (copper with aluminium).... given the 5009 SoM is soldered to the motherboard the weight of the SoM+heatsink, combined with the car vibrations (more or less, depending on the car brand, engine type, road quality) could stress too much the SoM soldering points and possibly crack/break some in time. I am NOT sure of it, I don't have the means to test that, but just by looking at the soldering points I just don't have enough confidence to recommend an big 200-300 grams heatsinks. The heatsinks I've installed were around 60-120 grams max.
    On the 6021 unit giving the socketed type of the SoM (way more solid built than 5009) you could probably install an heavier heatsink, say 200 grams, without worrying so much.... again, I have not test it to be absolute sure that nothing goes wrong in 3-6 years time.

    Do NOT cover the SoM ventilation holes. Again, I don't have the expertise to be able to tell what happens if you cover those but I think the holes are there for a reason so let's keep them open.
    Use some adhesive tape to cover the holes and remove it after you finished the modding (to prevent the holes to fill up with glue)

    These thermal adhesive are good :
    Warning : Both linked below are PERMANENT thermal adhesive, once you glued the heatsink on the SoM ... it's there for LIFE
    I used this one because it's completly safe, it's not capacitive or conductive.
    http://www.arcticsilver.com/arctic_alumina_thermal_adhesive.htm

    This is better formula for heat transfering but it is slightly capacitive :
    http://www.arcticsilver.com/arctic_silver_thermal_adhesive.htm
    Be careful not to drop some by accident on the motherboard.

    These 2 adhesives curing time depends a lot on the temperature.... the higher the temperature the faster the curing time is

    Fans that I would use:
    These 2 are adequate for a 2DIN unit :
    Noctua, 80mm, 1200RPM - http://noctua.at/en/products/product-line-redux/nf-r8-redux-1200
    Noctua, 120mm, 1200RPM - http://noctua.at/en/products/product-line-redux/nf-s12b-redux-1200

    And maybe this ones are good option for some that think that they need more airflow although it will generate a bit more noise:
    Noctua, 92mm, 1600RPM - http://noctua.at/en/products/product-line-redux/nf-b9-redux-1600
    Noctua, 80mm, 1800RPM - http://noctua.at/en/products/product-line-redux/nf-r8-redux-1800

    One thing I don't know is how these fans will behave in very cold weather, in the winter time at -10 to -25C.
    I opted for the fans above because the Noctua brand is well known for it's very high quality fans and designs, 6 years warranty, having low RPM is good because they are very quiet although the airflow takes a hit, but I am using the 80mm 1200RPM fan and it's more then enough when you have an heatsink glued onto the SoM.
    Remember that in the end no matter what fan size or speed you end up using, it is better to have a fan because every bit of airflow helps so if you don't have the space (in 1 din units) to install an 80mm fan install something that fits your space. Don't forget to install a fuse on the fan... if for some reason the fan breaks and for some reason shorts out... you need a failsafe (fuse).

    go to 53b ->
    28
    53b. What cooling solutions do you have for the 5009 and 6021 units given the SoM have different heatsinks (more like heatplates)

    -> continued

    Just some test thoughts : If you want to do some testing with various types of heatsinks because you don't know what to install, cover the motherboard with adhesive tape and leave only the SoM heatsink heatplate clear (to avoid a short in case an heatsink falls down the SoM heatsink over the motherboard. Now cover the SoM holes (to avoid thermal paste gettin in there). Take some thermal paste (NOT thermal adesive) and spread a thin layer on the whole SoM heatsink/heatplate and put the heatsink/heatsinks on it and mount the fan above it. Be carefully with the fan speed because the thermal paste does not offer a lot of stability for the heatsink... so a big fan speed might push the heatsink away from the SoM heatplate. Test for temperatures. Use this app to check for temps https://play.google.com/store/apps/details?id=info.kfsoft.android.MemoryIndicator it shows the CPU temp (1 core of your choosing) and CPU load (average or per core) at all times in the upper bar (if you configure it)
    Use this app to simulate heavy system load to check how is the heatsink coping with the heat : https://play.google.com/store/apps/details?id=com.into.stability
    Decide what do you want to keep. Clean very well the thermal paste from all the heatsinks and SoM heatsink with this http://www.arcticsilver.com/arcticlean.htm
    Use permanent thermal adhesive this time to glue in the heatsink of your choice. Take all the adhesive tape out.


    In the end is all about testing and taking risks, you don't feel like installing a big heatsink, you can do with small (15x15x15mm) heatsinks as long as you install many, not a single one but also remember that once you decided and you have glued them in and you are not happy with the performance (the risk i was talking about) there is no turning back.... if you don't feel like installing an 120mm fan because you feel like installing an 140mm fan that is laying around for years... install that one if it fits... if it breaks down after a week (risk) take everything out and change it.....just test everything before mounting it in your car and ask people if you want to do electric/electronic modification that you are not sure of.

    Also when you drill holes always clean the holes of the metallic debris carefully, because if the debris drops on your motherboard it could short it out.

    Later edit : Some people asked me if this mod it's a must and if their unit will fail if they will not mod it. If you ask me it's a must and without the mod the unit will fail and let me explain you why because it depends on a lot of factors. You see the CPU was made to function from -25C to 85C, 85 being the max safe temperature. The CPU on this unit gets easily to 90-100C if you run the unit for 1-2 hours, during a hot summer day, running an music player and a GPS software like Waze for instance (that tends to use a lot of CPU power). If you drive constantly for hours every day, during the day and you live in a hot climate this will shorten the lifespan of the unit by a lot. Not only that the CPU works above it's specifications but all the chips around the CPU (the RAM, storage chips, GPS chip, Wi-Fi, BT) will be force to run very hot because so called heatsink (more like a heatplate) will radiate the heat and slowly cook up everything on the SoM....sooner or later one of the chips will fail.

    So if you are the kind of guy that drives 30 minutes in the morning and 30 minutes in the evening while listening to the radio or to some mp3 music, you keep your car always in a garage and you do not live in a hot climate, your unit will have a long life. But if you live in a hot climate and you drive a lot during the day, with music streaming over the internet, GPS software always on, you only park outside in the hot sun that gets the interior of the car frequently to 40-50C.... well, your unit will have a very short life.


    54. What apps do you use to monitor the CPU temp?
    Right now I am using this one, Resource Monitor Pro, because It shows me the temp (on a core of my choosing) but also the CPU usage (average) the free mem and CPU speed) and you can place all these info in the upper bar, visible at all times.
    a. Paid version : https://play.google.com/store/apps/details?id=info.kfsoft.android.MemoryIndicatorPro
    b. Free version : https://play.google.com/store/apps/details?id=info.kfsoft.android.MemoryIndicator

    I also used this one, CPU Temperature Pure, it's a little more basic, it displays the CPU temp only but you can place it on the status bar, always visible and it looks good.
    a. paid version : https://play.google.com/store/apps/details?id=com.yanyan.cputemppure
    b. free version : https://play.google.com/store/apps/details?id=com.yanyan.cputemp

    I also used this one to be able to look at all the CPU cores temps at once :
    a. HWMonitor Pro - https://play.google.com/store/apps/details?id=com.cpuid.hwmonitorpro
    b. CPU-Z - https://play.google.com/store/apps/details?id=com.cpuid.cpu_z

    55. My steering wheel NEXT and PREV buttons functions are reversed. What can I do?
    My previous unit an Witson 3066/1Gb ram had an CAN decoder that worked fine for my Ford but the Joying ones work only 85% fine meaning the PREV and NEXT buttons were reversed and that was a pain to use since all my life when I push the NEXT button I expect to hear the next song not the previous one. Although I was struggling to correct the Joying CAN mistake I could not because I did not find any way that I could reflash the CAN box. Joying said that the CAN might not be 100% compatible with my car although it should be.
    Even if the old CAN box from my former Witson unit was looking exactly the same and the wire socket was exactly the same as the Joying one, the wiring was completely different, different wiring positioning in the socket, different wire colours. The internals of the CAN boxes looked almost the same but I did not had the courage to test the Witson one on the Joying afraid that I would damage the headunit or more importantly the car...

    What I did in the end was to directly connect the resistive buttons of the steering wheel directly to the unit using some of the printed diagrams found in the unit box (bypassing the CAN) and program them via the unit software and let the CAN box to decode the other stuff like putting the car in reverse, turning on the lights, feeding +12V to the unit when I start the car.

    What I learned is that CAN box is a black box... if it's not working it's almost impossible to find a fix of any kind... or buy a working replacement...

    56. Do you recommend the 1 September Android 6 update?
    Short answer, no! Long answer read here : https://forum.xda-developers.com/showpost.php?p=74324433&postcount=338

    57. I just got my unit, it has Android 6, what build/release date shall I use in order to have a functional Viper4Android ?
    I just tested a bunch of Android 6 firmwares over the last 5 days and these are my results : https://forum.xda-developers.com/showpost.php?p=75117890&postcount=412
    Unfortunately none is as good as the Android 5 latest firmware ... not even close.

    58. My GPS signal is poor. Any ideas?

    Things to do :
    1. check if GPS cable it's securely attached to the headunit
    2. check the GPS antenna positioning and the signal strength - I personally attached directly to the windshield for the maximum signal strength but It's true that it does not look that good
    - if the positioning is bad (under the dash for instance) and the signal is weak when you are on the road, open skys all around you, then it will be worse in the city and you might even loose it if you have tall buildings around... if that's the care you really need to reposition the GPS antenna
    3. some windshields have a special coating to reduce cabin heat (have a greenish/violet tent when you look from outside) that blocks GPS signals up to 60% in that case you need to find a solution to mount the GPS antenna on the outside of the car OR in same cases there are special areas on the windshield (usually near/around the inside mirror) where are safe to mount the antenna - if that's the case check the car manual for more details of those zones
    4. some windshields have heating elements in them, very thin and tiny wiring that heat up the windshields.... those block the GPS signal up to 40% but there are areas where you can mount the GPS antenna on the windshield without issues
    5. antenna cable might get broken (inside wiring breaks and usually it's not visible when you visually inspect the cable) if the cable is bent, tensioned or from vibrations (usually on diesel cars where the engine vibrates a lot) - if that's the case buy another from a store that accept returns, it costs 9-12$, install it, if everything works fine then keep it... if not return it and go at step 6
    6. open up the HU case and check GPS antenna cable soldering on the SoM, check if the soldering points are ok
    7. if you use a custom rom with Xposed check if the GPSSpeedFix module is install and active, disable the GPS module from Xposed and restart the HU, check the behaviour again
    8. if nothing works I would suggest reflashing a stock Joying firmware, so far, at this point in time (17/feb/2018) the December firmware worked the best for me... I still haven't tested the January one. Please follow the tutorial I made for flashing/reflashing.

    59. My unit looses the GPS signal. Any ideas?
    Check the answer for the question no 58 (above)

    60. Where can I find/download the stock Joying firmware?
    Have a look here : https://www.joyingauto.com/blog/tag/joying-intel-sofia-android-car-stereo-software-update/
    Download the firmware based on your unit MCU (you will find it in the settings-> about section) and screen resolution.
    12
    @edit you should add the Custom rom and Xposed add on in the first post

    I stopped expanding my Q&A since I can't really tell if people still need it, like it or find it useful...
    Pushing the "Thanks !" button would have helped me to identify if people still visit this thread, use it.... since most of the people are too lazy to give me 1 click..... I kinda lost the motivation to inform them of the latest changes....
    4
    Status of the Joying Sofia Headunit in Ian 2018 - my opinion from countless days spent on testing the unit with different firmwares and a hand full of apps that I use.

    My desire is for these to work perfectly if possible or as close as possible :
    Sleep function - It has to work, EVERY TIME, I don’t like to wait for 45 seconds and findle an additional 1-2 minutes to get things going, I want the HU to starting instantly after I start the car and playing the music where it left of the previous time.
    Viper4Android has to work - on android 6 it was severely crippled and unfortunately there is no one with skill to have a look at it and come up with a fix
    FM Radio has to work - I don’t use it that often but for some reason on a certain firmware (forgot the release date) everytime I turned it on the unit failed to go do sleep
    Backup camera has to work - it never failed so far but it’s a must
    GPS - it worked perfectly with each firmware BUT no one managed to fix the way it measures speed, instead of counting on 1km/h increments it does it on 3.6km/h increments - extremely annoying - @surfer63 might have a solution

    The apps that I use and have installed on my unit (all bought from Google store)
    XiiaLive Pro (v)
    Deezer
    PowerAmp
    Pocket Casts
    Google Maps
    Waze
    iGo that came with the unit
    Here WeGo
    Nova Launcher
    Resource Monitor Mini Pro - to live monitor the temp of the CPU mainly
    HW Monitor Pro
    Screen Filter - To dimm the light even more at night
    Shazam - When I need to identify a song from the FM Radio


    25 May firmware

    This is the last Android 6 firmware where you can have Viper4Android at 100% functionality (all modules working) BUT I was able to make that happen only after I boosted the min CPU clock frequency to 600Mhz from the default 416Mhz. You might need to boost the min CPU clock to 728Mhz if you enabled a lot of modules to keep away some rare popping that might happen occasionally.

    Warning : Modifying the min CPU clocks will increase the heat output of the CPU and so additional cooling it’s a MUST in this case meaning a fan blowing on the SoM and preferably a larger heatsink mounted on the SoM. The problem is that with the default tiny heatsink (more like heatplate) the CPU gets to 80-100C in as little as 30 minutes if you ran Waze+Music player for instance. At those temps the CPU throttles to 416Mhz trying to stay alive and not get burned because his upper limit is 85C (meaning at 86C the unit should shutdown to prevent the a CPU burn but instead the Chinese did not implement a cooling or a headunit failsafe and they let the CPU toast till it fails and you need to buy a new unit.

    I only modified the CPU min clock speeds to 600Mhz, ticked the “apply on boot” using this app :
    https://play.google.com/store/apps/details?id=it.sineo.android.noFrillsCPU
    I also ticked the “Disable safety” from the app settings because on some occasions after a restart the min clock speed was back to the default 416Mhz

    The only issue that I found for this firmware was that on headunit restart the HU fails to remember that it’s paired to your phone so it tries to reconnect to the phone but the phone asks for your pin again, if you enter the pin the HU does not automatically reconnects to the phone so you need to manually do it from the phone. After a lot of testing I discovered that this issue does not happen if you use the Joying default launchers that I do not like… I always used Nova. With the apps that I use the unit fails to sleep (shuts down and restarts on on engine start) only after 27-35 on off cycles… I would say it’s decent but not good. Also discovered that Resource Monitor Mini Pro in it's latest version generates the BT issue.
    I am comparing to my android 5 experience where the HU used to fail to sleeping only after 3 weeks (70-80 cycles).

    As far as I know this firmware has issues with Google Maps and GPS positioning… some people called it the “grey dot” issue. I don’t use Google Maps that frequently since I started using Waze 2 years ago so I can’t comment much on this issue.

    BT Audio streaming is broken on this one, popping, the sound cuts out from time to time.

    7 July firmware

    This is where things started to go terribly wrong for the Viper users. No matter how much you push the CPU, even if you set it to 1.2 Ghz all the time and you can’t correct the mess they did with the android forget about using mode then a few modules and definitely forget about the Viper EQ section.

    Since there is no @gustden Sofia NoKill Custom Keys mod made for this particular firmware I used the one he made for 1 September version of the firmware because he removed that annoying 2 seconds lag for the media keys that was present in almost all his releases for android 6. I was surprised to discover that the unit was failing to sleep at least once a day, very annoying. Then I used the NoKill mod made by gustden for the 25 May firmware and things got a little better unit failed to sleep once 4-6 days but after using it a little longer I noticed that it was really unpredictable ( it failed to sleep twice in 3 days) but overall it was better. I used the @DBestmen NoKill mod he made especially for the 7 July with the same results.
    Overall I find the sleep unstable and It’s an major issue for me.
    I also find the stability of the bluetooth not good, Deezer and Waze crashed on long journeys (2-5 hours) so this firmware is definitely not to be considered.


    1 September firmware

    The good thing is that @gustden refreshed his mod for it and it’s working nicely.
    The bad thing is that Viper works even worse so I had to boost min CPU clock to 600 just so I can just have the Viper Bass and Clarity working without random pops in the speakers… I tried to enable Dynamic System section but no chance of working at 600Mhz, I had to push the min CPU clock even more, to 728 Mhz but at times it was not enough. The problem with pushing the min CPU clock to 728 or 900 was that if another app was started or it needed more CPU the sound started to stutter a lot and it was very uncomfortable. So this cheap trick of pushing the clocks it’s barely helping Viper in this firmware.

    Just discovered that the Resource Monitor Mini Pro in it's latest version generates the BT issue that I was having with the 25 May firmware.

    BT Audio streaming is also broken on this one but only just a little... some popping now and then... but it's not a perfect streaming experience like you would expect.

    Another bad thing is that you can’t enable split screen anymore on this firmware.
    I am still evaluating this firmware but it’s not looking great for me.


    1 December firmware

    Due to some MCU updating issue I just briefly tested this one… the Viper behaviour was exactly like on 1 September so… really bad. Since it does not have the mods up to date I did not bother to fully test it although some reported that the mods for the 1 september work on this one… but giving my 7 July experience with mods from other firmware versions i take everything with a grain of salt.


    Bottom line if you have Android 5, KEEP IT. On android 5 the Viper worked perfectly, the bluetooth connection was stable, it had no sleeping issues, the gustden mods worked without lag, the bluetooth tethering speeds were a lot better then on Android 6.

    If you don’t care about NoKill Mods, Viper, Root, BT tethering, BT tethering speeds then you are free to update to android 6.