Bqeel M9C Max - USB OTG port not working

Hi guys,

This is the case: Bqeel M9C Max [S905X/2G/16G] , Kodi Matrix installed on internal memory. All its fine except the fact I can’t use the usb port next to the sd card slot for keyboard or remotes. I have power on that port all the time (box on stand-by or powered up). When ATV experience ROM was installed on the nand I could use both ports, on Coreelec I can’t (doesnt matter what version). I use one usb port for ethernet adapter and one for an Minix Neo A2 lite remote.

I believe my case is similar with this no usb.

I tried to upgrade to nightlines or downgrade to 9.2.6 but no change, could you help me with an updated dtb?

Maybe someone could see more in the logs: and (

Both please dump the Android dtb:
dd if=/dev/dtb | gzip > /storage/downloads/dtb.img.gz

Then upload the dtb.img.gz here please with the name of the device from where the dump was made.

dtb.img.gz (43.5 KB)
Ok, I have made the dump but I didnt get the part with the name of the device… Bqeel M9C Max [S905X/2G/16G] - the Android was ATV Experience 4. I’'ve installed CE 19 on nand flash and erase the Android.

Ok, maybe this helps a little: while waiting for an answer (a new dtb perhaps?) I’ve tried some builds and I reached the conclusion that’s something related to the new kernel, 4.9. All the -ng builds (stable and nightly) from Leia and Matrix prevent me using the usb OTG flash port for keyboard, RF remote or ethernet adapter.
Long story short: 3.14 kernel meaning CE Leia are working 100%.

I hope that could be a fix for my issue so I could use matrix as my daily driver if not I will rollback to Leia until I can get my hands on HK C4.

It’s a bit complicated as a GPIO must be defined to power the USB port.
But after compiling the phandle number can be different. That means after every update of CE the dtb.img is overwritten and the changes are lost. And you can not apply it again as maybe the phandle got changed by the compiler. No idea yet how to solve this as Bqeel is not in our supported supplier list.

Ok, I see. The box works, no issues with the movies. The only unpleasant fact is that I cant use a keyboard remote but I will survive :wink:. If you can find a workaround I will wait until then, if not I will take what it is.
Thanks anyway for looking about!

In my case I also have a 2/16 M9C Max, I have only tried the latest compilation ( from a uSD and everything is fine.

Hi! Thanks for your news but I need you to elaborate about this.
Your link it’s broken, I assumed that you are pointing at the latest Matrix nightly?
I just tried it and the situation hasn’t change for me. Maybe you can help me with the dtb (I used the generic gxl_p212_2g) did you tried something else Which dtb it's working
My issue was about the OTG usb port that cannot be use with an keyboard or RF remote control. The CE works fine from nand or uSD card.

At the moment, as a workaround I use an usb 2.0 powered hub for the ethernet adapter and RF usb adapter so I can use my Minix A2 Lite remote.

@Garcea please try this gxl_p212_2g:

(If this is the correct one you use)

If it works I have a script for you to setup the USB by script.

Hi, @Portisch!
Thanks for your effort, but no, it isn’t working. Its worse than before: with this new dtb system is booting only after I press the reset button (every time) and now both of the usb ports are dead for RF and ethernet adapters (except for power, I can charge phones or tablets). Tried with latest Matrix nightly and the latest stable Leia, same results.

Last idea I have. When it’s not working I can not fix it and maybe it’s better to think about a hardware upgrade…

So please @Garcea try this dtb/script:

1 Like

Last idea is always the best idea :wink: Thanks, man! You have made my box 100% functional again.
Need a little help now: I tested the new dtb on uSD card with latest Leia stable and Matrix nightly, both work. Main CE is installed internally on nand with ceemc. How should I update the dtb? I am thinking about a backup first, then a reinstalling from the sd card with ceemc -x and finally a restore from backup. Isn’t there any less ways to update the dtb without reinstalling?

Copy this script to: /storage/.config/
(Or add the contents if you already have a (123 Bytes)

This script will set the USB controller type to “3”.
(0:normal, 1:host, 2:device, 3:otg)

After implement the script two reboots are needed to become active at all.
If CE get updated a additional reboot after the update is needed.


Done! Booting its fine, both usb ports are functional. Man, you really made my day! Thanks again!
So, in the future, after an CE update I need a reboot to have the usb ports again.

Ok, case closed with happy ending! :wave:

1 Like

hi you know if this problem was fixed with the new update CoreELEC 19.1-Matrix_rc1 (March 24th, 2021)

Yes, it does. Remember this:
If CE get updated an additional reboot after the update is needed.
Yes, after new CE 19.1 RC1 update the usb port was dead but I did a new reboot and both usb ports were fully functional.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.

About | FAQ | Terms of Service | Privacy Policy | Legal Notice