• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

General Modding your Joying/FYT SC9853i unit without root

Search This thread

mastrv

Senior Member
Jul 1, 2010
199
54
If you follow the steps, there is no recompiling required. You can replace the images and json file directly and it should work. What I do/did was to open the apk using 7-zip and then choose edit from the 7-zip menu. When you close the editor, 7-zip asks to replace/update the file in the apk and then respond yes.

You can also post the apk you are modifying and the stations you want to add/replace and I'll have a look.
 

dbmgreen

Member
Oct 28, 2008
23
1
Couple of questions:

1) In the OEM folder of my Joying SC9853i are about 5 apps inc ZLINK but these do not install during the flashing process? How do I get them to install?

2) is there an alternative to ZLINK on these devices? I don't think it was ever part of the original software on my device ie: I have never used/noticed it.

3) In post # 1 there is a reference to updatecfg.txt. This file is not in the latest 2020 firmware. I have copied it from an older F/W and added twipe_all to the instructions, but my unit still boots with some user configured options eg: the vehicle logo? Is this expected?
 
Last edited:

surfer63

Senior Member
May 4, 2010
3,871
1,516
Zwolle
hvdwolf.github.io
Couple of questions:

1) In the OEM folder of my Joying SC9853i are about 5 apps inc ZLINK but these do not install during the flashing process? How do I get them to install?

2) is there an alternative to ZLINK on these devices? I don't think it was ever part of the original software on my device ie: I have never used/noticed it.

3) In post # 1 there is a reference to updatecfg.txt. This file is not in the latest 2020 firmware. I have copied it from an older F/W and added twipe_all to the instructions, but my unit still boots with some user configured options eg: the vehicle logo? Is this expected?
1) double-click to install.
2) Just try. Most are more or less compatible as it is not really "unit-hardware" releated. Always make sure you have a copy of your own version. But why do you want to try others anyway? Does this one not function for you? Updates of zlink mostly haver to do with new functionalities/restrictions in Apple or Android, or being able to funcion wireless.
3) It is only added when needed. If the firmware updates an apk or a couple that have bugs or so, but do not affect any setting or other apk, you don't need to wipe anything.
 
  • Like
Reactions: dbmgreen

dbmgreen

Member
Oct 28, 2008
23
1
1) double-click to install.
2) Just try. Most are more or less compatible as it is not really "unit-hardware" releated. Always make sure you have a copy of your own version. But why do you want to try others anyway? Does this one not function for you? Updates of zlink mostly haver to do with new functionalities/restrictions in Apple or Android, or being able to funcion wireless.
3) It is only added when needed. If the firmware updates an apk or a couple that have bugs or so, but do not affect any setting or other apk, you don't need to wipe anything.

Thanks! Took all that onboard and then used your app package maker to remove a bunch of apps, but also bundled zLink and torque pro. It all flashed fine. flashed a clean install,

The unit seems to be working OK, about to embark on a longish drive, so will be interesting to see if Waze falls over (it was freezing previously).

Really wish I could find modem firmware (you would think Intel would have this) that would enable functioning 4G. All the passengers (mum and kids) hotspot off the device, the lack of 4G is now noticeable, particularly given that it was working and we had used it for the last 12 months. -- mindful of your comments previously :)
 

marchnz

Senior Member
Nov 26, 2012
4,100
798
NZ
Thanks! Took all that onboard and then used your app package maker to remove a bunch of apps, but also bundled zLink and torque pro. It all flashed fine. flashed a clean install,

The unit seems to be working OK, about to embark on a longish drive, so will be interesting to see if Waze falls over (it was freezing previously).

Really wish I could find modem firmware (you would think Intel would have this) that would enable functioning 4G. All the passengers (mum and kids) hotspot off the device, the lack of 4G is now noticeable, particularly given that it was working and we had used it for the last 12 months. -- mindful of your comments previously :)
Why torque pro, it's a playstore app
 

dbmgreen

Member
Oct 28, 2008
23
1
Why torque pro, it's a playstore app

oh just cause it was in the OEM folder, and I figured while i was at it? No other reason. I have had an OBD11 for a while and never got around to it.

So update, just finished a 4 hr drive. Waze is still freezing on me. This time it was after about 2 hours but happened quicker after a restart.

Update 2 Google maps also freezing???

Not sure where to start trouble shooting this?
Device temp
Memory leak in the app
GPS issue on device

Anyone got any thoughts?
 

surfer63

Senior Member
May 4, 2010
3,871
1,516
Zwolle
hvdwolf.github.io
So update, just finished a 4 hr drive. Waze is still freezing on me. This time it was after about 2 hours but happened quicker after a restart.

Update 2 Google maps also freezing???

Not sure where to start trouble shooting this?
Device temp
Device temp could be an issue, but you can easily measure that with an app.
I never had any freeze with Magic Earth or OsmAnd. Both are offline navigation apps having their maps "on disk", where magic earth also collects traffic info, but that is of course in kilobyte range.
Waze and Maps are online tools. How stable is your 4G (3G?) connection?
 

mashrom

Member
Oct 22, 2019
26
1
Yes, this is different from the radio app that I'm using. I have a TEyes SPro/CC2 which is an FYT unit similar to the Joying.

This is the popup that I get when editing the stations available to the Radio app. I click on the top left and a prompt to enter the city is displayed. In the following image, it's currently set to Toronto. The app then populates the available stations from the JSON file where the city name matches the text that the user enters:

View attachment 5434097

I'm not sure whether or not the app I use can be used on the Joying models. I posted the apk for the radio I use earlier in the thread...page 29 or 30, I think.
Hi,
I found the attached Mod for Joying Radio app BUT with the City setting feature on the russian fourm. It is close to the stock and was able to add my city channels if anyone is interested.
 

Attachments

  • Joying Radio-with channels.zip
    11.1 MB · Views: 9
  • Like
Reactions: marchnz

dbmgreen

Member
Oct 28, 2008
23
1
Device temp could be an issue, but you can easily measure that with an app.
I never had any freeze with Magic Earth or OsmAnd. Both are offline navigation apps having their maps "on disk", where magic earth also collects traffic info, but that is of course in kilobyte range.
Waze and Maps are online tools. How stable is your 4G (3G?) connection?

OK loaded an app to monitor..........

When app freezes, device temp was 94 degrees Celsius (201.2 F). This seems hot, but I'm not sure of the parameters. It pretty much want from 43 (ish) to 90+ in the space of 30mins.

So the question is, 90c a bit hot?

The connection 3G/4G is pretty stable TBH.
 

mastrv

Senior Member
Jul 1, 2010
199
54
OK loaded an app to monitor..........

When app freezes, device temp was 94 degrees Celsius (201.2 F). This seems hot, but I'm not sure of the parameters. It pretty much want from 43 (ish) to 90+ in the space of 30mins.

So the question is, 90c a bit hot?

The connection 3G/4G is pretty stable TBH.
Before I purchased mine, I was reading the 4pda forums and a number of people were talking about temperatures being on the high side.

When the temperatures get too high, the system throttles the CPU. Other odd stuff could happen. I believe 90c is a bit hot and may cause issues.

When I tested my head unit before installing it in my car, I tested it and also had high temperatures. These were the readings using a test app: https://play.google.com/store/apps/details?id=skynet.cputhrottlingtest

These are the temperatures I was seeing when running the test app with 100% CPU for 30 minutes:

No modifications: 89 C
After heat sinks: 75 C
After adding fans: 65 C
After new paste: 62 C

I added small heat sinks to the existing flat CPU heat sink, 2 small fans on the rear and replaced the thermal paste for the amplifier heat sink and the cpu heat sink. These changes were straightforward and I did no soldering.

I don't think I've seen anything over about 60c since I've installed my head unit. I have a TEyes CC2 head unit. It did not come with any fans on the back. I believe the CC3 now comes standard with a fan, but I don't believe the newer CPU gets as hot.

Some questions:
  • Have you confirmed the CPU usage when the temperatures are high?
  • What do you use to determine the temperatures and CPU usage?
  • Have the higher temperatures started after installing some software or an update to some software?
I was seeing high CPU usage, at one point, and it ended up being PowerAmp rescanning my music each time it started up. CPU was at 100% for a very, very long time after starting my head unit. After removing the rescan setting, the CPU usage was very low with correspondingly lower temperatures.

I use Resource Monitor Mini Pro: https://play.google.com/store/apps/details?id=info.kfsoft.android.MemoryIndicatorPro to keep an eye on CPU usage and temperature.

Anyway, sorry about the long post. I hope some of this info is useful for you.
 

Spastro

Member
Feb 18, 2020
45
0
What fan did you install and where? I'm in Aus and started seeing high temps of 90 degrees and want to add a heatsink.

Also any particular paste you recommend?
 

mastrv

Senior Member
Jul 1, 2010
199
54
I bought these heatsinks and "attached" them to the flat factory CPU heat sink with this thermal adhesive tape:


I molded / cut away the heat sink as needed. It just fit under the back cover.

This one shows my SPro/CC2 with back cover removed. You can see the flat heat sink with the indentation. The indentation makes direct contact with the CPU underneath. If you want to get under this heat sink, soldering is required...I did not remove it. You can also see on the back of the cover the protrusion that makes contact with the indentation on the flat heat sink. I replaced the paste there. I don't know if you can tell, but it's actually a little off and doesn't make proper contact with the flat heat sink. I cleaned up the old paste with some rubbing alcohol...actually alcohol swabs...that I had. You can also see on the motherboard where the heat sink for the audio amplifier is. It is just to the left of the large black capacitor and above the power connector and fuse. It's upright and you can see the edge with the white paste on it. I also cleaned up the paste on that and replaced the paste:

Back cover removed - flat factory heatsink.jpg


This one shows what it looks like after adding the heat sinks. I first cut the heat sinks and then placed the thermal adhesive tape on them and applied them to the flat heat sink. I believe they just fit lengthwise...can't remember. I used a small dremel type tool to cut out what needed to be removed:

New Heatsinks intalled.jpg


I reattached the cover after adding the fans, connecting the fans to the AMP wire and also drilling some holes near the amplifier heatsink on the back cover. I figured that in the corner there wasn't as much circulation and that the audio heat sink could get warm so it couldn't hurt. Notice that I used 2 small 40x40x10 fans, Noctua NF-A4x10 FLX. Can find those at https://noctua.at/en/nf-a4x10-flx. They are a little more expensive but supposed to be quieter and better quality...time will tell. They come with a few connectors to make it easier to attach. I attached them both to the AMP wire. This allows me to turn them on and off through the Amp control setting on the head unit. I turn them off when it starts to get colder. I used silicone to attach the fans. I put a little between the two fans and then filled the channels all around them. They're attached pretty well. If you notice, they line up with the vertical ribs on the back. Not sure if all manufacturers have the same back cover but it shouldn't matter. I made sure the channels were blocked so the air had to be pulled out of the head unit and not from around the fans. I wrapped the electrical connections with tesa tape. Some people used larger fans, thicker fans. You can use other fans that you have available...I didn't want to make too many changes to the back cover:

Fans added - holes for air circulation.jpg


Here's another shot of the back. You can see the heatsinks through the fans in this image. On my head unit, they just fit and are either very close or just touching the back cover. I also added an external microphone connector...that's what I'm holding:

Heat sinks through the fans.jpg


Oh yeah...the thermal paste I used was some left over Arctic Silver 5 that I had. I figured it was OK since I had used it to attach heat sinks to CPUs on desktop computers. I'm sure there are other pastes which will work fine as well.

Sorry for the long post :)
 
  • Like
Reactions: PieterD82

Spastro

Member
Feb 18, 2020
45
0
I bought these heatsinks and "attached" them to the flat factory CPU heat sink with this thermal adhesive tape:


I molded / cut away the heat sink as needed. It just fit under the back cover.

This one shows my SPro/CC2 with back cover removed. You can see the flat heat sink with the indentation. The indentation makes direct contact with the CPU underneath. If you want to get under this heat sink, soldering is required...I did not remove it. You can also see on the back of the cover the protrusion that makes contact with the indentation on the flat heat sink. I replaced the paste there. I don't know if you can tell, but it's actually a little off and doesn't make proper contact with the flat heat sink. I cleaned up the old paste with some rubbing alcohol...actually alcohol swabs...that I had. You can also see on the motherboard where the heat sink for the audio amplifier is. It is just to the left of the large black capacitor and above the power connector and fuse. It's upright and you can see the edge with the white paste on it. I also cleaned up the paste on that and replaced the paste:

View attachment 5474889

This one shows what it looks like after adding the heat sinks. I first cut the heat sinks and then placed the thermal adhesive tape on them and applied them to the flat heat sink. I believe they just fit lengthwise...can't remember. I used a small dremel type tool to cut out what needed to be removed:

View attachment 5474893

I reattached the cover after adding the fans, connecting the fans to the AMP wire and also drilling some holes near the amplifier heatsink on the back cover. I figured that in the corner there wasn't as much circulation and that the audio heat sink could get warm so it couldn't hurt. Notice that I used 2 small 40x40x10 fans, Noctua NF-A4x10 FLX. Can find those at https://noctua.at/en/nf-a4x10-flx. They are a little more expensive but supposed to be quieter and better quality...time will tell. They come with a few connectors to make it easier to attach. I attached them both to the AMP wire. This allows me to turn them on and off through the Amp control setting on the head unit. I turn them off when it starts to get colder. I used silicone to attach the fans. I put a little between the two fans and then filled the channels all around them. They're attached pretty well. If you notice, they line up with the vertical ribs on the back. Not sure if all manufacturers have the same back cover but it shouldn't matter. I made sure the channels were blocked so the air had to be pulled out of the head unit and not from around the fans. I wrapped the electrical connections with tesa tape. Some people used larger fans, thicker fans. You can use other fans that you have available...I didn't want to make too many changes to the back cover:

View attachment 5474897

Here's another shot of the back. You can see the heatsinks through the fans in this image. On my head unit, they just fit and are either very close or just touching the back cover. I also added an external microphone connector...that's what I'm holding:

View attachment 5474899

Oh yeah...the thermal paste I used was some left over Arctic Silver 5 that I had. I figured it was OK since I had used it to attach heat sinks to CPUs on desktop computers. I'm sure there are other pastes which will work fine as well.

Sorry for the long post :)
Thanks

Will look at those heatsinks !
 

surfer63

Senior Member
May 4, 2010
3,871
1,516
Zwolle
hvdwolf.github.io
Why did you cut the heatsink over the CPU?
There once was a "tech electronics guy" shortly on this forum who had an infrared camera showing exactly where the CPU and GPU were (and showed many other things using a scope and other advanced tools).
I just put a mini heatsink on top of the CPU and on top of the GPU and left the rest open. No fan anymore.
My temperatures are not really great but stay below 65 C, but I don't live in the tropics.
And with regard to specs: It throttles above 83 C and I think it completely stops over 100 C, but I can't find my spec sheet back which I downloaded some 2 years ago.

(Note: I do not have a car at this moment as it is totall loss, and therefore no unit anymore whatsoever. I can't share images.)
 

mastrv

Senior Member
Jul 1, 2010
199
54
Why did you cut the heatsink over the CPU?
There once was a "tech electronics guy" shortly on this forum who had an infrared camera showing exactly where the CPU and GPU were (and showed many other things using a scope and other advanced tools).
I just put a mini heatsink on top of the CPU and on top of the GPU and left the rest open. No fan anymore.
My temperatures are not really great but stay below 65 C, but I don't live in the tropics.
And with regard to specs: It throttles above 83 C and I think it completely stops over 100 C, but I can't find my spec sheet back which I downloaded some 2 years ago.

(Note: I do not have a car at this moment as it is totall loss, and therefore no unit anymore whatsoever. I can't share images.)
I cut the heatsink as the back of the rear cover has that piece that sticks out that's supposed to touch the CPU indentation. It's actually a little off and doesn't fit entirely in that indentation. In any case, I figured that enough heat was transferred to the original heat sink and so added my heat sinks to try and spread the heat as much as possible so the fans can be more effective. I didn't have a heat gun to see the effects of different arrangements and thought it would be sufficient. It worked out well enough.

Sorry about the car. That's too bad. Hope you and your family are OK.
 

Gaugamela

Senior Member
Feb 12, 2016
74
11
I removed my previous post. You are absolutely right, you do need the T'eyes radio app and it works like you describe.
The Joying apk doesn't have it. It is too long ago that I myself modded that radio app, since I started using a DAB+ module.
(And it is a huge load of work if you live in a country (the Netherlands) where the same FM-radio station can have 10 frequencies depending where you are. Also because the RDS-AF is incorrectly implemented on all those FYT radio apks, so it doesn't autoswitch to a stronger "Alternative Frequency")

Could you give me more details about the RDS-AF implementation not working well on FYT radio apks? That's terrible to know.
I have an ATOTO S8 w/ Android 10. It is a FYT based system. But I have a multitude of problems with the radio app. It's that, and I memorize one radio station in a frequency on a city, I move to another city where the same station has a different frequency and the radio app does not pick up that station in the new frequency (it simply memorizes the frequency).

Portugal does not have DAB, so I can't use it anyway.
 

surfer63

Senior Member
May 4, 2010
3,871
1,516
Zwolle
hvdwolf.github.io
Could you give me more details about the RDS-AF implementation not working well on FYT radio apks? That's terrible to know.
The AF should find the strongest alternative frequency for the radio station.
If you use AF on the FYT radios it will simply search for the strongest radio frequencies, no matter the radio station.

But that was until the sc9853i. I do not know if they improved that on the 7862 and 9863a. I hope some owner of such a FYT unit can answer that.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 2
    I found the following adb shell command to force enable/disable dark mode. Could be useful for others who is looking the same. Disclaimer: I haven’t tried it yet.
    Enable Dark Mode:
    adb shell settings put secure ui_night_mode 2

    Disable Dark Mode:
    adb shell settings put secure ui_night_mode 1
    This is not correct. This is the Android dark mode/theme. That is something else than the day/night mode from the FYT units. That has simply to do with the brightness of the screen.
    Secondly: adb access is relatively hard to do on these units.
    Thirdly: the dark mode/theme is available as of Android 10. These units are Android 8.1. That requires other apps to do that.
    1
    Is there a way to change the night mode timer so night mode is on all the time? Thanks.
    Yes, connect the ILL wire to the ACC wire. In that case, as soon as you switch on your contact, the unit will always think the headlights are on and will switch to night mode. Note that this will also make the leds in your buttons constantly on.
    I use this as well and personally like the buttons to lit up constantly.
    1
    Thanks. I know that’s the easiest way but I don’t know how to hardwire.. so I’m trying to see any method to solve it through software side..
    I went a step further and put a switch in that wire. My car has automatic headlights and i don't always want the screen to dim as it flicks on the headlights at dusk or dawn. My switch is set up that it only interrupts the wire but you could connect it in the way @surfer63 suggests and put a switch making it effectively a manual hardware switch for turning it on and off independant of your headlights.
    1
    I went a step further and put a switch in that wire. My car has automatic headlights and i don't always want the screen to dim as it flicks on the headlights at dusk or dawn. My switch is set up that it only interrupts the wire but you could connect it in the way @surfer63 suggests and put a switch making it effectively a manual hardware switch for turning it on and off independant of your headlights.
    I found the following adb shell command to force enable/disable dark mode. Could be useful for others who is looking the same. Disclaimer: I haven’t tried it yet.
    Enable Dark Mode:
    adb shell settings put secure ui_night_mode 2

    Disable Dark Mode:
    adb shell settings put secure ui_night_mode 1
    1
    Unfortunately I found nothing for both of the texts, by any chances, do someone know how to remove them ?

    Decompile the apk per @surfer63's instructions (or use APK Editor Studio, my prefered way to edit apk's) And look in the 'res/values' folder for 'strings.xml'. On line 74 you will find the "Check the surrounding circumstances" text. If i am to understand your question correctly, and from looking at your pictures, i think you want to get rid of that. Just replace the text with a space.

    So, replace what is on line 74 in strings.xml like so:

    Turn

    <string name="check_car_surround">Check the surrounding circumstances</string>

    into


    <string name="check_car_surround"> </string>


    f7d48cdef7cc21728bb588776e055d6c.png


    EDIT: On line 73 it says the same. You might also look in other folders for this 'strings.xml' file depending on what language you've set your device. If it's English, then the top 'values' folder should be the only one to edit it's strings.xml file in.
  • 11
    See title: Only for SC9853i Joying/FYT 8.1 units.
    Due to some changes in the flashing process since the previous PX5 and Sofia 3GR models it is now partly possible to mod your unit without root.

    Some info to start with:
    (partly from 4pda, partly from a "hint" from @julien_blanche, mostly from own knowledge)

    Contents of a firmware zip:
    Code:
    6521_1.zip           # The zip that contains the boot.img; the system/vendor/oem partitions and a few other things.
    Allapp.pkg           # Special file that contains all FYT apps (actually a special XAR archive.)
    config.txt           # file comparible to the build.prop which can contain additional properties
    lsec6521update       # The binary that really does the update
    oem                  # Folder containing some additional apps
    Stm32ud.bin          # The MCU binary. It is not always in every firmware
    updatecfg.txt        # Contains instructions for the flashing process
    crruptoff            # Special file for "WiFi only". Not in the normal firmwares. Be careful!


    Some commands that can be put inside updatecfg.txt
    Code:
    twipe_all     # Wipe entire system
    twipe_data    # Will wipe data partition (but not /sdcard, internal memory). Wiping the /data partition will wipe all config, all 3rd party apps and updates of system apps. This is the same as a "reset to factory defaults"
    twipe_sd      # Will wipe internal memory /sdcard (but not the data partition)
    dellapp       # Remove all 3rd party apps
    make_updates  # Make an upgrade U-disk boot file
    test             # test unit and firmware before flash

    Some properties that can be put inside config.txt. Say you live in Brazil and you want your locale settings immediately on Brazil, you can add that, for example:
    Code:
    ro.product.locale = pt_BR

    The file crruptoff:
    If you have a unit with a 4G module, but you don't have 4G (or don't want to use it), you can use this file. Put one line in this crruptoff being "fixwifi" and save it to the sdcard/usb-stick you use for flashing.
    You can use it to get rid of the "No SIM" notification in your notification bar.
    Does not work anymore on the later firmwares. Chances are minimal but maybe it might work again "some day".

    The Allapp.pkg
    The Allapp.pkg file is a special XAR archive with a directory structure. You can use ApkPack.exe to create or extract it.
    Folder path: This is where your files are being extracted to, or packed from
    File path: This is the file that is being created (packed), or where the files are extracted from.
    All apks (*.apk) and all libraries (*.so) will be installed as system apks and libraries, which means you can't uninstall them, but on the SC9853i units they are installed under /oem and not under /system.
    Inside this Allapp.pkg you will also find two other files: fyt.prop and skipkillapp.prop.
    The fyt.prop is identical to the build.prop but gives the option to add extra properties or replace/modify properties in the build.prop.
    The skipkillapp.prop contains apps (package names) with values from -15 to 15.
    When going into "deep sleep" the packages not mentioned in this list will be killed. Applications in this list with positive values will absolutely be killed (unstable otherwise??). The ones with higher values first. The ones with values 1 and 0 as last, where the app with value 0 will be the last killed before going into deep sleep.
    The apps with negative values are considered system apps and will not be killed. In this case the most negative number (-15) has the highest priority. My assumption (not tested, not verified) is that negative numbers approaching 0 might be killed if the system needs the memory?
    So in other words: If you do not want that some of your apps are killed, you can add them to this "skipkillapp.prop" by their package name. Say you use @realzoulou's DAB-Z app, you would add a line for DAB-Z (com.zoulou.dab). Or for example if you are a Tasker user, which is normally killed as well:
    Code:
    com.zoulou.dab = -10
    net.dinglisch.android.taskerm = -10
    (I would suggest not using values like -15, -14, -13 to make sure you do not really interfere with the real system apps).
    And then you need to add this file to your own allapp.pkg

    The lsec_updatesh folder and lsec.sh script
    Practical applications:
    • Making patches, an alternative to creating the Allapp.pkg package.
    • Work on all folders in the unit (which Allapp.pkg cannot do).
    • Delete unnecessary files or applications (who uses the calculator app?), or overwite files like the fyt.prop or others.
    • Modify/overwrite config files that are otherwise not modifiable (like bluetooth config?)
    • Setting properties that normally require root/admin rights.
    • Creating backups of your partitions using the dd command. This can be handy on a device for which you do not have a firmware yet as backup.
    • Rooting your unit, also if you do not have a firmware from your supplier.
    • Make a Custom ROM by simply doing all kind of modifications after the "normal" firmware flash.

    See for more info about the "The lsec_updatesh folder and lsec.sh script" in post #228.

    Creating an Allapp.pkg and flash it to your device (post #2)
    Some pre-build flashable images (post #3)
    And if everything goes wrong and your unit ends up in a boot loop or doesn't get past the boot logo. (post #4)
    7
    Creating an Allapp.pkg and flash it to your device

    Use the (English) version of ApkPack.exe (english version attached) to unpack/repack an Allapp.pkg. (It also works with wine on Linux/MacOS)

    (See this youtube link for a really quick & dirty (and unsharp, sorry) video about what scrolls on your screen when flashing such a mini Allapp.pkg)

    (1) Quick example:
    • Create a folder Allapp
    • Copy some wanted apks or mods into the folder.
    • Use the ApkPack.exe to create the Allapp.pkg
    • Simply copy the "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
    • Put the USB-stick into your unit and it will recognise the update and flash it to your unit.
    • Other options:
      • Copy the "Allapp.pkg", (optional) "updatecfg.txt", (optional) "config.txt" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
      • In my case having a 4G unit without using 4G and wanting to use Google Assistant for calls: Copy the Allapp.pkg, config.txt (see above), crruptoff (see above) and lsec6521update onto a clean FAT32 formatted USB-stick.
      • Note that when NOT using an updatecfg.txt, nothing will be wiped on your unit. Only added/replaced.

    (2) Another example:
    • Create folder Allapp on your pc/laptop
      • add (2019-08-14) main server mod with extended navi_app.txt and "BT to background" hacks. (see my github repo. Be careful to choose the one for your specific firmware date)
      • add BW-RDS radio mod (see my github repo. Only choose version for Android 8.1 if you want full functionality)
      • add oandbackup (dk.jens.backup_305.apk) (Free and open source backup restore apk)
      • add latest MagiskManager-v7.3.2.apk
    • Use apkpack.exe (attached) to create a new Allapp.pkg by selecting the folder to be packaged, the name of the file being Allapp.pkg, and select button "Packed" (sloppy translation from Chinese)
    • Copy created "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted USB-stick.
    • Insert in your unit and the flashing process will start (Note: It will mention "Setting to factory defaults" before flash reboot, but it is really not doing that)
    • After the (very quick) flash and normal reboot, you will have 2 new apps and 2 modded apps.

    (3) Example for a FYT compatible SC9853i, like a Sinosmart or Zhan or "unnamed":
    You can also create your own Allapp.pkg, also with a modded Joying apk as the apks are actually identical, but there is one big naming issue to take into account!
    Even though the apks are identical having the same package name, they have different apk names. A normal install will check for the package name and replace the apk with that same package name, whatever its apk name (think of versions or build time stamps behind the the "normal" name). The flashing method simply looks at the apk name and will create an /oem/app/<apk_name>/<apk_name>.apk. In this case versions numbers of build timestamps will create again and again a new folder with the exact same apk and none will work.
    As an example for the radio app:
    • Joying: 190043001_com.syu.radio.apk
    • Sinosmart: 190042001_com.syu.radio.apk
    • "Some" unbranded: 190101001_com.syu.radio.apk
    Again: The apks are exactly the same but have a different name. If you simply flash one next to the other, both will not work anymore as both have the same internal package name being "com.syu.radio". So you have no radio at all.
    So, how to create an Allapp.pkg with a modded Joying apk for your FYT compatible SC9853i unit?
    • Check the name of your unit's radio app (or BT, Video, Music app). (If you don't know how you can use my HWGet_info.apk and open the resulting HWget_info.zip and look inside the "oem_listing.txt")
    • Find the name of the modded Joying app.
    • Rename the modded Joying app to the name of your app. So for example for Joying-> Sinosmart radio app: rename 190043001_com.syu.radio.apk to 190042001_com.syu.radio.apk (Joying to Sinosmart)
    • Create a folder Allapp
    • Copy the modded and now renamed Joying radio apk into the folder (repeat if relevant for other mods).
    • Use the ApkPack.exe to create the Allapp.pkg
    • Simply copy the "Allapp.pkg" and "lsec6521update" onto a clean FAT32 formatted SD-card or USB-stick.
    • Put the USB-stick into your unit and it will recognise the update and flash it to your unit.
    • Also create an Allap.pkg for your original app so you can always flash back the original app if you want (or need) to.
    7
    Some pre-build flashable images

    Only for real Joying SC9853i units. Other FYT compatibles are not supported.
    All SC9853i FYT models are actually the same, but boot images are mostly different and apks have different names. In the latter case you would have 2 identical apks with the same package name, but with a different apk name residing in different folders. Neither of them will work anymore as Android doesn't know which one is the correct one.

    The zips that can be found in this post can be directly unzipped to a clean, empty Fat32 formatted USB-stick or SD-card. You do not need to be rooted and you don't need my JET apk.
    When this USB-stick or SD-card is inserted into your unit, the unit will recognize it as a flashable firmware and start flashing the files to your unit.

    Notes:
    • These flashable firmware files will leave all your installed apps and settings as they are. Only the files in these Allapp.pkg files will be overwritten.
    • The zips containing boot images will only overwrite the boot image. All apps and settings remain as they are.
    • The "combi" zips are just combinations of possible mods and/or boot images. They behave the same as the previous two.
    • The zips that can be downloaded from this post are all on one of my github repositories. You can find it here: SC98531BinRepo.
    ----------------------------------------------------------------------------------------------------------------------------------------------------------------
    Boot images
    2019-11-28 | 20191128-rooted-boot-image (thanks to @rigattoni) | 20191128-normal-boot-image
    2019-09-17 | 20190917-rooted-boot-image | 20190917-normal-boot-image
    2019-08-14 | 20190814-rooted-boot-image (thanks to @julien_blanche)

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------
    Main server apk mods (the 190000000_com.syu.ms.apk)
    The ORG version is the apk as delivered by Joying in their firmwares.
    The ORG_extended is the Joying one including an extended navi_app.txt, extended player_app.txt, extended navi_audio_from_playstatus.txt.
    The NoKill is the extended version where the normal functionality to kill all apps when going into "deep sleep" (turn of ignition), has been disabled.

    2020-04-07 | 2020-04-07-com_syu_ms-ORG | 2020-04-07-com_syu_ms-ORG_extended | 2020-04-07-com_syu_ms-nokill | ( Zips, modified smali files, modified assets text files, some info)
    2019-11-28 | 2019-11-28-com_syu_ms-ORG | 2019-11-28-com_syu_ms-ORG_extended | 2019-11-28-com_syu_ms-NoKill | ( Zips, modified smali files, modified assets text files, some info)
    2019-09-17 | 2019-09-17-com_syu_ms-ORG | 2019-09-17-com_syu_ms-ORG_extended | 2019-09-17-com_syu_ms-NoKill | ( Zips, modified smali files, modified assets text files, some info)
    2019-08-14 | 2019-08-14-com_syu_ms-ORG | 2019-08-14-com_syu_ms-ORG_extended | 2019-08-14-com_syu_ms-NoKill

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------
    Other mods
    There are currently two mods for the radio: One very nice one from user @Soiski71 and one which I made.
    The ORG version in this case is the one delivered with the Joying firmwares.

    Radio | SC98531-Radio-ORG | SC98531-Radio-Mod (preview) | SC98531-Radio-Mod-Soiski71 (preview)

    ----------------------------------------------------------------------------------------------------------------------------------------------------------------
    Combinations
    These are combinations of above files which I found useful. Undoing them can be done by using one of the above ORG zips.
    2019-09-17 | 2019-09-17-radio_mainserver | 2019-09-17-rootedboot_radio_mainserver
    4
    If everything goes wrong and your unit gets in a boot loop or stops on boot logo

    - Download a fresh firmware from the Joying blog.
    - Unzip it to an SD-card/USB-stick (as normal)
    - Put the USB-stick/SD-card in your unit and "push" the Reset (RST) with a paperclip or something like that. When the boot logo appears, reset the unit again. Now the flashing process should start.
    3
    Alright, I think I got it, it was actually easier than I thought. I just kept tracing the error logs to see where they get called from until I reached the place where the connection magic happens. I tested by connecting a Bluetooth speaker to the radio, it says pairing successful but it doesn't route audio to it, but I'm not surprised considering the radio is not really expecting it. I'll try a ps4 controller tomorrow.