Jump to content

Help with Mini Mx III - II (S905X) how to choose correctly DTB file


Recommended Posts

HI, I have another post about Mini MXIII-II (if you have it, please start reading this post: 

My next step, as @SteeMan said me in that post, is to check "all" things in the SD card before installing armbian to the emmc.

 

I have detected problems with audio and bluetooth. HDMI, WIFI, USB, LAN seems to work.

 

If you will check anything more, please, tell me, thanks.

 

My question is about... I think that hardware is defined in the DTB file, so ... could I check one by one "all" dtb files? (I mean only ones that have S905X in their names).

 

does it make sense? Any other DTB file that I could test?

 

Thanks.

 

s3.png.4c199a5222246744f44905ceed3939f7.png

 

Link to comment
Share on other sites

Yes those are the dtb files to try.  But you shouldn't expect that you are going to have all of the hardware work on these boxes.  For example, of the boxes I own, I don't have working wifi on any of them.  Just so your expectations are set correctly, please read it you haven't already: https://forum.armbian.com/topic/16976-status-of-armbian-on-tv-boxes-please-read-first

 

Link to comment
Share on other sites

Posted (edited)
38 minutes ago, SteeMan said:

Yes those are the dtb files to try.  But you shouldn't expect that you are going to have all of the hardware work on these boxes.  For example, of the boxes I own, I don't have working wifi on any of them.  Just so your expectations are set correctly, please read it you haven't already: https://forum.armbian.com/topic/16976-status-of-armbian-on-tv-boxes-please-read-first

Thanks, yes, I read it, i thought that it was an "old" post. I will try dtb's and I will put here my best experience for Mini MXIII-II just in case anyone else will come in future.

 

Do you think I would need to test anything more before installation? wifi, lan, bt, usb ports, hdmi and audio.

Edited by Juan Rangel
Link to comment
Share on other sites

You should test performance for your use cases.  Moving to emmc isn't going to make any real difference in performance, so if it isn't performing well enough for your use cases, it isn't going to get better.

Link to comment
Share on other sites

1 minute ago, SteeMan said:

You should test performance for your use cases.  Moving to emmc isn't going to make any real difference in performance, so if it isn't performing well enough for your use cases, it isn't going to get better.

Ok, thanks. I will donwload any benchmark app, thanks

Link to comment
Share on other sites

HI, I have tried all dtb files that we talked about. These are the results:

 

dtb wifi lan poweroff BT usb1 usb2 ir Audio led
p212 y y n n y y n n y
hwacom error                
khadas y y y n y n ¿? y n
libretech n y n n y y ¿? y y
libretechV2 error                
a95x error                

 

Dtb files with ERROR is that they really don¡t finish boot

 

What I can see now is that best one is the group of p212+hwacom (or p212+libretech). Hwacom and libretech has AUDIO but hwacom can also power off correctly the tvbox.

 

So if I could managed to get the information about audio in these dtb files and "copy" in p212 dtb file, I could make a customized DTB for Mini MXIII-II only with these problems: Bluetooth (It is a pitty, but I have also read that it is easy to solve with an external  and cheap usb-bluetooth adapter) and IR (but this is almost useless once I boot my tvbox with armbian).

 

Does you know how to "merge" both DTB files? Any clue? Any help? Thanks.

 

(just in case I attach here the three files)

meson-gxl-s905x-khadas-vim.dtb meson-gxl-s905x-libretech-cc.dtb meson-gxl-s905x-p212.dtb

Link to comment
Share on other sites

Getting a correct dtb is one of the most complex things to do.  To do it correctly you really need to know in detail every physical aspect of the board, all the components and how they are wired together.  You really need the complete board design information to do this.  Otherwise you are just guessing.  This is a very difficult task.  The information is out there to learn how to do this, but expect to invest many weeks of time learning.  But if you are up for a challenge...

Link to comment
Share on other sites

You first need to realize that the dtb is a binary output of the dtc command.  You start by looking at the source dts files, that can be found in the kernel source.  dTc compiles the dts files (and included dtsi files) into the final dtb binary

Link to comment
Share on other sites

Posted (edited)

Hi, I have spent several days compiling and decompiling dtb and dts files. Trying to find the better one, comparing dts files in text editors.... Finally I have found something better but yet, not the best.

(I have even checked libreelec dtb files)

 

I have also tried to check in Android TV Box by installing terminal or hardware info apps trying to find information about bluetooth. But no luck. I have seen P212 in my android tv box.

 

At this moment, my conclusion is:

1. despite my android tv box "says" P212, i found better this dtb file meson-gxl-s905x-khadas-vim.dtb than this one: meson-gxl-s905x-p212.dtb.

2. Both have errors, but after comparing lots of dts files if I make TWO changes in meson-gxl-s905x-khadas-vim.dts file, I get managed to get working all of this: usb1, usb2, hdmi, lan, wifi, LED, poweroff, poweron with IR, audio. And DON'T work: bluetooth and poweroff with IR

  • dts line 353 change to "disabled" (solve LED problem, so I can see led on and off)
  • dts line 1597 change to "host" (solve that with meson-gxl-s905x-khadas-vim.dtb only one usb port works. Now the two usb ports work)

I have "left" two problems with my modified meson-gxl-s905x-khadas-vim.dtb.

1. I haven't got bluetooth working (THIS IS IMPORTANT if I want to use it for home assistant for example)

2. I haven't got the chance to power off the tv box with IR remote control (THIS DOESNT MATTER)

 

Questions, please:

1. Despite my android tv box shows me "P212" in some "play store hardware info apps".... is there any problem not to use meson-gxl-s905x-p212.dtb and use meson-gxl-s905x-khadas-vim.dtb ?

2. Is it dangerous to alter two lines in a dts file? could I damaged hardware?

3. I have also tried to connecto TWO external old usb bluetooth adapters to solve the biggest problem of my modified dtb file. Both have the "same problem". I can see my tv box with armbian firmware from my mobile phone, but my armbian tv box can NOT detect anything. I click on "search" but .... nothing. 

4. I have tried also to modified a bit the dts file with these two options to get the INTERNAL bluetooth working: compatible = "brcm,bcm43438-bt"; or compatible = "realtek,rtl8723bs-bt"; (line 329, and with realtek option also add in line 324 this: enable-gpios = <0x15 0x60 0x00>;)

  1. do you know how could I find the bluetooth chipset in a rooted android tv box? I can not find any solution
  2. with compatible = "brcm,bcm43438-bt" I get this:
root@aml-s9xx-box:~# dmesg | grep Bluetooth
[    9.041277] Bluetooth: Core ver 2.22
[    9.064960] Bluetooth: HCI device and connection manager initialized
[    9.064985] Bluetooth: HCI socket layer initialized
[    9.064992] Bluetooth: L2CAP socket layer initialized
[    9.073711] Bluetooth: SCO socket layer initialized
[    9.161291] Bluetooth: HCI UART driver ver 2.3
[    9.165629] Bluetooth: HCI UART protocol H4 registered
[    9.170024] Bluetooth: HCI UART protocol BCSP registered
[    9.174866] Bluetooth: HCI UART protocol LL registered
[    9.179849] Bluetooth: HCI UART protocol ATH3K registered
[    9.185282] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    9.191661] Bluetooth: HCI UART protocol Intel registered
[    9.197142] Bluetooth: HCI UART protocol Broadcom registered
[    9.201468] Bluetooth: HCI UART protocol QCA registered
[    9.209641] Bluetooth: HCI UART protocol AG6XX registered
[    9.251766] Bluetooth: HCI UART protocol Marvell registered
[    9.459255] Bluetooth: hci0: BCM: failed to write update baudrate (-56)
[    9.464465] Bluetooth: hci0: Failed to set baudrate
[    9.650023] Bluetooth: hci0: BCM: Read verbose config info failed (-56)
[   22.006738] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   22.006787] Bluetooth: BNEP filters: protocol multicast
[   22.011685] Bluetooth: BNEP socket layer initialized

root@aml-s9xx-box:~# rfkill
ID TYPE      DEVICE      SOFT      HARD
 0 bluetooth hci0   unblocked unblocked
 1 wlan      phy0   unblocked unblocked

 

It seems that the problem is "failed to write update baudrate".

 

       3. with compatible = "realtek,rtl8723bs-bt"; I get this:

 

root@aml-s9xx-box:~# dmesg | grep Bluetooth
[    8.236291] Bluetooth: Core ver 2.22
[    8.251409] Bluetooth: HCI device and connection manager initialized
[    8.251434] Bluetooth: HCI socket layer initialized
[    8.251441] Bluetooth: L2CAP socket layer initialized
[    8.251483] Bluetooth: SCO socket layer initialized
[    8.312137] Bluetooth: HCI UART driver ver 2.3
[    8.312193] Bluetooth: HCI UART protocol H4 registered
[    8.316137] Bluetooth: HCI UART protocol BCSP registered
[    8.321480] Bluetooth: HCI UART protocol LL registered
[    8.333958] Bluetooth: HCI UART protocol ATH3K registered
[    8.334060] Bluetooth: HCI UART protocol Three-wire (H5) registered
[    8.334569] Bluetooth: HCI UART protocol Intel registered
[    8.351967] Bluetooth: HCI UART protocol Broadcom registered
[    8.364945] Bluetooth: HCI UART protocol QCA registered
[    8.370309] Bluetooth: HCI UART protocol AG6XX registered
[    8.387307] Bluetooth: HCI UART protocol Marvell registered
[   21.398088] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   21.398110] Bluetooth: BNEP filters: protocol multicast
[   21.398127] Bluetooth: BNEP socket layer initialized

root@aml-s9xx-box:~# rfkill
ID TYPE DEVICE      SOFT      HARD
 0 wlan phy0   unblocked unblocked

 

No errors, but.... no info in rfkill output

 

Does anybody know how to go further here?  Any dts/dtb expert?

 

I can not get the internal bluetooth module working despite it is being "detected". I can not also get the two external usb adapters working because then can not find anything.... 

 

NOTE: I will upload my final DTS and DTB files but I want not to upload a not-finished file.

 

Edited by Juan Rangel
Link to comment
Share on other sites

38 minutes ago, Juan Rangel said:

I can not also get the two external usb adapters working

Make sure you have installed armbian-firmware-full.  The default builds only include a trimmed down set of firmware that is intended to cover the common ones, but to save space doesn't include all the firmwares available in mainline linux kernel.  That may solve your problem.

 

If you haven't already, I would suggest you open the box and see what wifi/bluetooth chip you have on your board.  Then you need to make the dtb file match what hardware you have.

Link to comment
Share on other sites

My only thoughts on your dtb questions, is that as long as you are using a meson-gxl-s905x-* one you should be fine.  I wouldn't worry about making modifications as you test different permutations.

 

 

Link to comment
Share on other sites

Posted (edited)
56 minutes ago, SteeMan said:

Make sure you have installed armbian-firmware-full.  The default builds only include a trimmed down set of firmware that is intended to cover the common ones, but to save space doesn't include all the firmwares available in mainline linux kernel.  That may solve your problem.

 

If you haven't already, I would suggest you open the box and see what wifi/bluetooth chip you have on your board.  Then you need to make the dtb file match what hardware you have.

HI, I have just used this firmware: 

Armbian_23.11.1_Aml-s9xx-box_bookworm_current_6.1.63_xfce_desktop.img.xz

(https://forum.armbian.com/topic/17106-installation-instructions-for-tv-boxes-with-amlogic-cpus
    that links to: https://es.sbcmirror.org/dl/aml-s9xx-box/archive/) 

 

Is it a "full" one? Where are full ones?.

 

About opening the box, yes, I opened it some days ago. May be you can identify something here. LMT8830 ? Wifi+BT (it is also strange that wifi works and bluetooth doesnt, isn't it?)

(google search: https://github.com/armbian/firmware/commit/2516660cc89cc130c1e675fddfeb0b695acbdc76)

But I don't know how to "write" or "search" for the correct DTB file. Is it impossible to get from android firmware in my tv box by a terminal app?

 

Thanks a lot for your help. I am near, but next steps are impossible for me.

 

IMG_20240103_203434_.jpg

LTM8830.jpg

Edited by Juan Rangel
Link to comment
Share on other sites

Hi, finally I have get managed to get something good, and i want to share here to community.

Finally I have decompile and compile lots of dtb files, dts files from here from librelec, .... changing text lines in dts files one by one to check them....

 

Finally:

Based from meson-gxl-s905x-khadas-vim.dtb
Decompile and make these changes:

Lines 329-330, put this (solve BT):
                    compatible = "qcom,qca9377-bt";
                    enable-gpios = <0x15 0x60 0x00>;            
Line 353, put this (solve LED):
                status = "disabled";
Line 1597, put this (solve USB):
            dr_mode = "host";

 

WORKS: usb1, usb2, hdmi, lan, wifi, BT, led, poweroff, poweron IR, audio

DOESN'T WORK: poweroff IR

 

I have even tried wifi hotspot (works).

 

I attach here these two files:
meson-gxl-s905x-minimxiii-ii.dtb
meson-gxl-s905x-minimxiii-ii.dts

 

Thanks a lot for your help. Next step .... install to emmc !!!!

 

Next step

meson-gxl-s905x-minimxiii-ii.dtb meson-gxl-s905x-minimxiii-ii.dts

Link to comment
Share on other sites

On 1/9/2024 at 10:28 PM, SteeMan said:

There is a reason the FAQ I pointed you to says not to expect to be able to get wifi or bluetooth working.  I don't have wifi on any of the boxes I own.

Could you change the TITLE of this post adding at the begining "[SOLVED]", may be it is good for community, thanks

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines