yashsingh1/xdaforums huggingface dataset:
[Microsoft Lumia 950/950 XL] dmnmsc:
Oh, I'm going to buy this case. What's your experience? Are you happy with that case?
[MTCB Software Development] Aaaron16:
Has anyone had any luck find the source code for the MTCB MCU? I'd like to mod the shutdown timer such that it leaves the device fully operational for the timer duration. Or if anyone has info on the instruction set used, I could perhaps made the mod using assembly or bitbanging.
[MTCB Software Development] mike.s:
This may help. It uses an 8051 instruction set
[MTCB Software Development] dhmsjs:
KLD2-v277 "source"

I have been studying and commenting the MCU code for a few months now -- specifically the KLD2-2.77 version. I used darksimpson's mcu decryption tool on the mcu.img file to get the 8051 binary file, then used the D52 disassembler to create "source" code from that.

Studying this code is an ongoing, very slow process but still I have made significant progress.

A few observations (any of which may contain errors!):

1) The original source appears to be written in a higher level language, probably C (not sure which compiler).

2) It appears to communicate with the Android CPU using Serial Port 2 and also an SPI port. There are two I2C buses that the MCU uses to control the various peripheral chips such as the radio, sound processor, and video matrix.

3) Serial data is in the form of packets consisting of a 3 byte preamble followed by one or more bytes of data and ending with a checksum. The specific form of the packet and checksum can vary and is determined by the preamble.

4) Serial packets mostly go from MCU to Android. The MCU can receive packets too, but that capability doesn't seem to be used much, if at all.

5) The primary method of control from Android to MCU seems to be through the SPI port. This consists of 16 bit command words that are handled by a very large CASE statement. Each command word can be followed by additional data (depends on the command) and may also cause the MCU to send data back, either through SPI or more commonly by serial port packets.

6) It appears to me that the designers have nearly maxed out the code space. In other words there is very little room left for additional code, and also evidence that they did things to try to squeeze more code into the available space.

7) Finally -- and not to bash the Chinese designers in any way (tremendous effort contained in this code) -- there are some obvious bugs and also significant room for improvement.

If anyone wants more specific details on what I've learned please PM me. If anyone wants to dive in and study as well, please share what you learn!

One thing that would help me tremendously would be more information on the actual hardware environment. My HU is an 8133 with 480x800 display (specifically a Pumpkin C0235) but it is already installed in my car and I really like it there instead of on a workbench. :). So if anyone is in a position to provide hardware details (such as clear photos and schematic diagrams -- either partial or complete, handmade is ok!), sharing them here will help a lot! The code does a lot with MCU I/O pins and without knowing what is connected to those pins it is difficult to really understand their true purpose.

Zipped text file is attached
[MTCB Software Development] pa.ko:
Great work! Thank you! I'm not profound in this MCU programming but I really believe that it is of great importance to hack that code and mod it in order to squeeze more from these units. A applause you and hope other will join your effort.
[MTCB Software Development] treech:
Open source implementation could be interesting down the road :)
[MTCB Software Development] webdude12:
Wonder if we could steal any of the tricks from old days of DSS cards and double up code by using lookup tables for some references to make more room for improvement code.
[MTCB Software Development] dhmsjs:
There is a lot of "wasted" space (duplicate initialization data for instance) so there's plenty of room available if the software is written efficiently. However modifying what is there, other than small tweeks, is probably not likely to succeed. It looks to me like there is a lot of "band aid" fixes in there and (in my experience anyway) modifying that kind of code often ends up creating more subtle, unforeseen problems than it fixes.

Yes an open-source rewrite will be the best long term solution but that will require a thorough understanding of both the MCU and the Android side of the interface. On the other hand we have potentially a large group of international talent to apply to the task, and no hard deadlines either. It is certainly possible to do.

The MCU processor itself is well known. The peripheral devices are well known (or knowable). So reimplementing those interfaces can be largely independent of the Android-MCU interface. But knowing what the Android CPU expects, and accommodating that for all variants is currently the big unknown for me.
[MTCB Software Development] webdude12:
Well that is great to hear. So what I would think that needs to be done first is a complete comment dis-assembly. This has been completely useful in other "hacking" attempts as it allows you to fully understand step by step what the original coders were doing. It also allows for debuggers / emulators to written.

From there it can be determined if it makes sense to re-write sections, re-route code, or completely re-write from scratch providing the same functions.
[MTCB Software Development] dhmsjs:
While it is by no means complete, I've worked through enough of this MCU code that I think I have a pretty good high-level understanding of how and what the MCU does. As I said above, what I'm missing now is much of the hardware context (for example which MCU pins connect to what, some of the peripheral chip #s, etc), and also the Android software context -- specifically the code that sends commands through SPI to the MCU. I have looked briefly at some of the Android code (for example MTCManager.apk) but didn't find anything useful there. It seems like the SPI interface is lower level -- perhaps as in a device driver??
[MTCB Software Development] DRidilla:
This is just a dumb question because you guys would be so far away from modifying mcu code, yet I'm going to ask it.

Could some of the hardware hacks (Using different sound processor for radio, mic mods) be accomplished through software, if you got a good handle on things?
[MTCB Software Development] dhmsjs:
Sound processor yes since that is just sending different commands to the sound processor. Mic mod no since that is a hardware mod only (as far as I can see it anyway).
[MTCB Software Development] DRidilla:
Isn't the problem with the mic though that even when you use an external mic, the internal does not shut off? Could you send a message stating that an external mic exists, close off internal? Hypothetically of course.

Would be amazing if down the road those sort of mods could be done on the software side.

Also add "Control radio before android boots" to my dream list.
[MTCB Software Development] dhmsjs:
My understanding of the mic hardware interconnection is not good enough to say one way or the other. Probably varies from model to model as well (I don't seem to have a big problem with my external mic).

Control radio before Android boots might be tough since most all of the radio user interface comes through Android anyway. Might be possible to restore previous radio config before Android is up, but that might also not be such a great thing for many users. Not sure I'd want my radio to come up blasting away if I don't also have a way to silence it.

Then again with an open source solution, all you would really need is the will to make it so. I guess we all have our own dream lists, no? :)
[MTCB Software Development] mike.s:
Both microphones are hardwired together. It is not possible to "shut off" one with software. There's also a modification to improve the radio's frequency response by replacing some capacitors. Again, not possible with software.
[MTCB Software Development] Aaaron16:
Wow, nice work!! I typically have a few KGL units on the bench. Attached are a few images to get you started. These are of the 1024x600px resolution units.

Next time I'm at the office, I'll check out which I/O expansion chip(s) are being used and see if I can identify some of the lines.
[MTCB Software Development] dhmsjs:
Thanks! Really appreciate the photos. Difficult to read the chip #s though.

I know the radio device is similar to a TEF6624 - maybe a TEF6686?

Pretty sure the sound processor is a BD37531 or BD37534.

Not sure what the video matrix switch is -- FMS6502 maybe?

These all connect to the MCU via I2C. Interested in identifying the other devices that connect via I2C too. I can see the I2C addresses they use to communicate with the chips, but I can't generally look up a chip # by its I2C address. The goal is to find the data sheets for each device so that I can understand exactly what the I2C comm is doing. I have data sheets for the devices listed above.

Also as an update: I stated above that the MCU is controlled by Android through an SPI channel. I've been studying this more closely and it is clear that it is not actually SPI. Looks more like a custom 3 wire interface. Uses pins 1, 2 and 3 of the MCU (the IAP15F2K61S2 device).

Pin 1 (P0.5) is data (or ACK) to Android from MCU, driven by MCU

Pin 2 (P0.6) is the clock, which can be driven by either side (open collector with pullup?)

Pin 3 (P0.7) is data (or ACK) to MCU from Android, driven by the Android CPU

It would be helpful to know which pins these connect to on the Android CPU.

Each bit sent must be acknowledged by the receiver before the next bit is clocked out. There is debouncing and timeouts applied to the signals and the transfer is aborted if either fails. Maximum bit rate is around 1MHz I think, and probably slower in actual use. If anyone recognizes this as a particular comm standard, let me know! Otherwise it must be custom for these HUs.
[MTCB Software Development] Aaaron16:
Component Listing (KGL Mainboard)

I noticed the KGL devices use different radio modules even across the same model. I have some units with TEF6624 modules and others with TDA7786 modules. The following are the IC part numbers for the newer 1024x600px KGL main board (date code 2014-07-20):

1. AU6258J61-JES-GR (USB 2.0 Controller)

2. 15L2K61S2 (MCU)

3. FMS6502MTC (Video Sw Matrix)

4. BD37033FV (Sound Processor)

5. GM8283C (? - 10+ traces going to 50-something pin IDC display connector)

6. T132BT (TFT Video Controller)

7. WM8751L (Stereo DAC) - markings rubbed off. See attached photo.

I couldn't find an I/O expander chip on the main board, so I'm guessing the MCU drives most of the I/O lines directly (aside from those handled by their respective audio/video controllers).

Possibly related, I found this document which seems to include many of the same components:

http://p.globalsources.com/IMAGES/PDT/SPEC/216/K1127159216.pdf
[MTCB Software Development] dhmsjs:
MCU Memory Map/Resource Use

So attached below is a document containing a partial memory map, resources used, and I/O pin assignments as I currently understand it from studying the MCU code. The document changes every day as I learn more.

Again this is a KLD2 unit and the V2.77 version of MCU code I'm studying. For Aaaron16 or anyone else who has the ability to explore the hardware of a KLD2 head unit, what will help me a lot in this effort is understanding what the I/O pins connect to. They are listed at the top of the document.

If you explore your hardware, post what you find in this thread and I'll add it to the doc. TIA!
[MTCB Software Development] bazoozoo:
Could Malaysk make modified MCU with redisigned sound processor and sleep mod fo MTCB-MD-V2.67:angel:. I cant post download link:(

drive.google.com/file/d/0B9-2UI8L0wScel92bUFlaExkWnc/view?usp=sharing
[MTCB Software Development] typos1:
How is this progressing [MENTION=6906599]dhmsjs[/MENTION] ?
[Nexus 5 Q&A, Help & Troubleshooting] tripyhipy:
My unlocked Nexus 5 during kingroot rooting process my laptop shut down and now its in a boot loop stuck at logo. I can bring up bootloader and ADB but no back up or recovery on phone hard drive.exactly what do I do?
[Nexus 5 Q&A, Help & Troubleshooting] Trafalgar Square:
Flash Factory Image

Hello,

you need to flash a Factory-Image from Google.

You can use this to Flash:

[Toolkit] Wug's Nexus Root Toolkit v2.1.0 [Updated 11/22/15]: Nexus 5 Thread

Kind regards

Trafalgar Square
[Nexus 5 Q&A, Help & Troubleshooting] spacecaptain:
i'm partial to using adb and fastboot vs. toolkits.
[Android Q&A, Help & Troubleshooting] emmfranklin1:
Hi all,

i have this android tv box by leoxsys brand which uses rk3188 board. i need to have gamma correction control in it as i cant see dark scenes while playing a video.

i found this app .

Advanced Color & Gamma Control by Paul Reioux in play store

but i am unsure whether it will successfully work in my device.

i need to root my device and buy this app.

i can root it but before buying i need to make sure that i can use it sucessfully.

what are your suggestions .

thanks.
[Android Q&A, Help & Troubleshooting] vineetdev:
can anyone help me out where to paste the module .ko files and the .o format files in android so that my ath9k works properly?help me out guys
[Android Q&A, Help & Troubleshooting] Perseus:
Duplicate of	Kernel module file

Closed.
[T-Mobile Samsung Galaxy S 4] reilus:
My phone fell apart without Google Play Services; so much stuff doesn't work. I'm not sure how it got deleted but it's not there and I can't restore it with Titanium Backup and I can't install it via APK.

Does anyone have any idea why this is happening?

I'm on CM12, my ROM version is 5.1.1
[T-Mobile Samsung Galaxy S 4] lordodin912:
Have you tried manually putting it into the system and set permissions then reboot? Or just reflash gapps.
[T-Mobile Samsung Galaxy S 4] reilus:
Yes, I tried putting it in the system app and rebooting; it optimizes and then nothing happens. I had to go back to an old backup of the ROM. I'm still not sure what happened or how to deal with it. I saved a copy of the ROM at that stage in case I can fix it.
[Galaxy Note 10.1 (2014 Edition) Q&A, Help & Troubl] ToastyZ71:
I scrolled though the dev forum and the general forum, but I didn't find a pre-rooted TWRP flashable Lollipop ROM for the P600...Did I miss it, or has nobody posted one yet?
[Galaxy Note 10.1 (2014 Edition) Q&A, Help & Troubl] furzewolf:
From what I can see, nobody has posted one yet. I tried to make one using SuperR's Kitchen, but it wasn't extracting it correctly, so I gave up. I might have another go, though.
[Galaxy Note 10.1 (2014 Edition) Q&A, Help & Troubl] buhohitr:
5.1.1. prerooted rom http://xdaforums.com/galaxy-note-10-2014/development/dev-llp600b1-23-10-2015-t3249279
[G2 Q&A, Help & Troubleshooting] Berkandemir53:
With which xposed module i can change status bar icon colors ? I am using stock 5.0.2

LG-D802 cihazımdan Tapatalk kullanılarak gönderildi
[G2 Q&A, Help & Troubleshooting] vishal11in:
Lg apps theme engine trail
[G2 Q&A, Help & Troubleshooting] Berkandemir53:
Thanks but I mean wifi, bluetooth vs...

LG-D802 cihazımdan Tapatalk kullanılarak gönderildi
[G2 Q&A, Help & Troubleshooting] vishal11in:
Look if you want to provide them any color of your choice then yes lg apps theme engine trail version is for you. If you want to have different icon themes then you can also install android theme engine. Both of them works greats. With lg apps theme engine trail you can theme entire apps
[G2 Q&A, Help & Troubleshooting] Berkandemir53:
Can't find it i don't mean clock battery colors vs ..

I mean for example quick remote when i touch it its color change to blue .

LG-D802 cihazımdan Tapatalk kullanılarak gönderildi
[G2 Q&A, Help & Troubleshooting] Berkandemir53:
I mean that .

LG-D802 cihazımdan Tapatalk kullanılarak gönderildi
[G2 Q&A, Help & Troubleshooting] vishal11in:
Bro first decide what exactly you want, u asked if any module which can theme statusbar icons now you want to theme apps.
[G2 Q&A, Help & Troubleshooting] Berkandemir53:
I want to change colors if this buttons like picture on the top .

LG-D802 cihazımdan Tapatalk kullanılarak gönderildi
[G2 Q&A, Help & Troubleshooting] vishal11in:
Use g3 tweakbox then
[G2 Q&A, Help & Troubleshooting] 60nine:
this is not statusbar - that's notification quick toogle buttons

as other user already suggested - use g3tweakbox (although, i think you'll need a full payed version to change this)
[G2 Q&A, Help & Troubleshooting] raptorddd:
no free version can. i changed them to black.
[G2 Q&A, Help & Troubleshooting] 60nine:
i was not sure if this was possible with free version since i'm using pro one since forever...

i'm glad you solved it...
[Fire Q&A, Help & Troubleshooting] 85gallon:
Getting an error when I whenever I try to install a live wallpaper from Zedge.

Getting a pop up that the app is trying to open a link to a market that is not available on my device. Do I want to open the Amazon Appstore instead.

See attached screenshot.

This is only when I click install under live wallpapers. The regular wallpapers download and install fine.

I checked the app on my phone and the live wall papers will open the appropriate page in the Google Play Store. Basically just a link.

I am rooted on 5.1.1 and the google apps are installed. I downloaded the Zedge app from the Play Store for god's sake!!!

Any ideas on how to correct on the fire?
[Fire Q&A, Help & Troubleshooting] DoLooper:
Try disabling amazon appstore:

adb shell

su

pm disable com.amazon.venezia​

Some apps see it as uninstalled and will prompt to delete data. Also, if you ever use Amazon launcher, it freaks if it can't find it. Just enable it again.
[Fire Q&A, Help & Troubleshooting] 85gallon:
Thanls. That worked but now I can't get to the Amazon app store. Is it one or the other?

There are some apps I like in the Amazon store. lol
[Fire Q&A, Help & Troubleshooting] Pond-life:
Yeah have to enable it again. (good reason for not deleting it)

There are some that aren't on the Play Store?
[Fire Q&A, Help & Troubleshooting] DoLooper:
As pond-life says, it's either enabled or disabled. You can save the commands in a scripter app or something like Rom Toolbox and run them straight from the Fire.

I use a custom launcher most of the time, but have a shortcut on the home screen that switches me to a fully working Amazon UI with one tap. Another shortcut blocks Amazon again when I go back to my launcher. Let me know if you want more info.
[Fire Q&A, Help & Troubleshooting] 85gallon:
Youtube rippers. Some apps like that that Google won't allow in the play store.
[X Play Q&A, Help & Troubleshooting] drmuruga:
I had just flashed twrp recovery and rooted moto x play marshmallow.there is no mm rom available now, can i flash lollipop roms to mm x play ?
[X Play Q&A, Help & Troubleshooting] Gopinath15:
Yes. You can
[X Play Q&A, Help & Troubleshooting] drmuruga:
Is it so ,i' m downloding my first custom rom for mxp mm
[X Play Q&A, Help & Troubleshooting] Gopinath15:
Alll the best. Ping if you need any help ☺
[X Play Q&A, Help & Troubleshooting] drmuruga:
Flashed blisspop 5.1 working well.Thank you.
[X Play Q&A, Help & Troubleshooting] effingbadluck:
Can you tell me about your bootloader version?Thanks
[X Play Q&A, Help & Troubleshooting] drmuruga:
How can i know boot loader version?
[X Play Q&A, Help & Troubleshooting] drmuruga:
0×80EC as shown in rootchek
[X Play Q&A, Help & Troubleshooting] drmuruga:
After install 5.1 or 6.0 custom rom titanium backup erased or not recognized by titanium backup, how can i fix this? Or not to flash 5.1 after updated to 6.0 ?
[One (M8) Q&A, Help & Troubleshooting] danu9594:
Guys I need your help. I have a rooted HTC one m8 with S On and Twrp recovery . I recently recieved an update notification for Marshmallow. I tried to install it but the phone just goes in to recovery and then I have to just reboot the system . Help me ?
[One (M8) Q&A, Help & Troubleshooting] Ivanovic:
You should unroot, flash stock recovery and try again. If you have exposed installed or have altered other parts of the system it won't install

Στάλθηκε από το HTC One A9 μου χρησιμοποιώντας Tapatalk
[One (M8) Q&A, Help & Troubleshooting] danu9594:
I did not install anything while rooted . How can I unroot and flash stock recovery ? Sorry I am new on this stuff. I was an Apple user for a long time ?
[One (M8) Q&A, Help & Troubleshooting] Mr Hofs:
You can't unroot the rom. You need a pure (never rooted) stock backup and the stock recovery !

Ota will fail even when you only rooted it and try to unroot it. This is exactly why everybody need to create a pure stock backup STRAIGHT after flashing Twrp !!!
[One (M8) Q&A, Help & Troubleshooting] danu9594:
So what do you suggest I should do?
[One (M8) Q&A, Help & Troubleshooting] Mr Hofs:
Get a appropriate stock backup from the backup collection threads. There is 1 in the general section and there is 1 here in the Q&A section.

Or gain s-off with sunshine and flash updated firmwares and roms
[Xposed General] becandid5:
Hello,

Is it possible to list out sequence of Java Classess Invoked by an application using Xposed Framework?

I use the following code to list out all the classes -

findAndHookMethod("java.lang.ClassLoader", lpparam.classLoader, "loadClass", String.class, new XC_MethodHook() {
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
String classname = (String) param.args[0];
XposedBridge.log("Class Called - " + classname + " " + i++);
}
});

Analyzing the Xposed Log, the classes are not displayed in sequence and these sequence changes whenever the application loads.

Class Called - java.lang.CharSequence 0
Class Called - java.io.IOException 1
Class Called - java.lang.Throwable 2
Class Called - java.lang.Runtime 3
Class Called - com.helloworld.secure.testActivity 4
Class Called - java.lang.Object 5
Class Called - java.lang.String 6
Class Called - android.util.Base64 7
Class Called - java.lang.Byte 8
Class Called - java.security.KeyStore 9
Class Called - javax.crypto.Cipher 10
Class Called - javax.crypto.SecretKeyFactory 11
Class Called - javax.crypto.SecretKey 12
Class Called - android.database.sqlite.SQLiteDatabase 13
Class Called - java.io.File 14
Class Called - o.ˊ 15
Class Called - o.ᐠ 16
Class Called - de.robv.android.xposed.callbacks.XC_InitPackageResources$InitPackageResourcesParam 0
Class Called - android.app.Application 1
Class Called - com.helloworld.secure.testActivity 0
Class Called - android.app.Activity 1
Class Called - android.os.Bundle 2
Class Called - com.helloworld.secure.testActivity$ˋ 3
Class Called - android.os.AsyncTask 4
Class Called - android.widget.LinearLayout 0
Class Called - android.widget.ViewStub 1
Class Called - java.lang.reflect.InvocationTargetException 2
Class Called - android.webkit.ViewStub 3
Class Called - android.view.ViewStub 4
Class Called - android.widget.FrameLayout 5
Class Called - com.android.internal.policy.impl.multiwindow.MultiPhoneWindowEvent 6
[Nexus 5X Q&A, Help & Troubleshooting] treIII:
So did the 6.0.1 update help the screen appearance any? And did it help with the lag problems that I've read about. My son wants this phone and he had an htc one m8 and if like to know if this is really an improvement without regards to software updates. Thanks to those who answer

Sent from my Nexus 6P using Xparent Blue Tapatalk 2
[Nexus 5X Q&A, Help & Troubleshooting] jayb222:
Never had a screen problem on mine. Battery is better than the m8 plus updates day one. Lag isn't a common occurrence either.
[Nexus 5X Q&A, Help & Troubleshooting] berndblb:
The screen is hardware - no software update will make it look any different. The amoled screen of the M8 looks a lot brighter and better than the LCD in the Nexus 5, and that is something you only notice if you hold them side-by-side (and forget about after a day).

I came form th HTC M8 and I am very pleased with this phone. The only lag is loading graphic intensive games. They do take a lot longer to load than on the M8 but I don't care about that.

That also may be something removing encryption on /data will take care of - haven't tried that yet. I am pretty convinced the complaints about lag come from gamers and gamers only. For everything else it's plenty fast.