For wifi to work you have to install rtl8822cs-dkms (don’t know exactly the name of the package right now). Maybe also bc, linux-vim-headers and make. I remember that some dependency was missing that was not installed automatically.
Edit: See post 702 or 703 → you have to install bc for rtl8822cs to compile correctly.
Hi @spikerguy
I have two Manjaro-Arm-XFCE image one using linux-vim 5.11.4-1 and another linux 5.11.4. The linux-vim default to cpupower governor “Performance” and linux kernel to “schedutil” and force to “Performance”.
FYI, I noticed with linux-vim kernel off and on there is a bit of hesitancy but not with linux kernel. No sure is specific to my situation.
Added Odroid OLED PKG in repo
Now Odroid HC4 have full support, Only thing left is VPU encoding which I have been trying using Chewitts ffmpeg source but no luck yet.
If anyone else have interest then we all can work on it together and try to get it to work.
These users thanked the author spikerguy for the post:
@TheMojoMan I just found out the way to fix the Bluetooth issue on my H96 Max - RK3399 by converting the dtb to dts, then editing the bluetooth parameter in dts file info the correct driver name. I am pretty sure that this method can be transferred to fix the Bluetooth of X96 Max+.
Have a look here: Manjaro ARM for Rockchip TV Boxes - #55 by rna
However the only thing that I don’t know is the driver name of the wifi. Do you have any idea what is the correct driver name?
In that post I changed the parameter from:
bluetooth {
compatible = "brcm,bcm43438-bt";
Into this:
bluetooth {
compatible = "qcom,qca9377-bt";
and it fixes my bluetooth
I need those two driver name after compatible = …
As you said in the previous post, the bluetooth driver is already in the firmware. The only thing that is needed is fixing the dtb to use that correct driver. And it has to be those two name drivers. I have tried changing the last one, but it works partially. Once you have those two name, I am pretty sure that this might solve the bluetooth issue.
I did already include the correct name a while ago in my latest .dtb that you can download but unfortunately it does not fix the problem. It seems the bluetooth adapter is not active and I do not know how to wake it up, yet. Always shows error -110. With kernel 5.10 even the firmware was loaded once in a while but bluetooth adapter was still not present.
I know this might be a silly question, but Have you tried all of this three combination? Or the other name for the first line? Because in my H96 Max - RK3399 case, the Wifi is QCA9377, but my wifi driver is taken from Ath10k (Atheros) from the firmware. Instead of using “atheros”, the bluetooth use “qcom”. Which is a Qualcomm, I was surprised myself.
EDIT: I Just Found Out that Atheros is the product of Qualcomm. That makes sense.
@rna after the last kernel and firmware update the -110 error is gone. But I get a new “unknown IC info” error. With just ‘compatible = “realtek,rtl8822cs-bt”’ in the bluetooth section this is how far I get:
As soon as I add “device-wake-gpios = …”, “enable-gpios = …” and/or “host-wake-gpios = …” (where I still do not know some of the needed numbers) the last five lines of the above message are missing which I interpret that rtl driver is not loaded at all.
(BTW, as written before, with 5.10 kernel I sporadically even got the message that firmware for rtl8822cs-bt was loaded but then there was always error -110).
The big problem is that there are so many possible sources for bluetooth not to function (e.g. device tree, firmware, hci driver, rtl driver) …
Yes, I did, although I know that Realtek 8822CS chip is used in my box.
@rna I have patched and recompiled btrtl module (because I found a mismatch of hci_ver in the source file and that of my bluetooth chip) and now firmware is loading. But now download fw command failed (-110) error has returned …
Anyway, I think I have solved another small piece of the puzzle.
to properly initialize the chip.
I have extracted some of it from the android .dtb but too much unknown stuff left. I also did some brute force tests but with no luck.
Actually, I more or less gave up on it some weeks ago and now tried it again but I think it is not really worth investing too much time into into again. For me it would be nice to have working bluetooth but it is not essential.
for the linux .dtb. Here, 0x31 points to the gpio-controller and 0x00 at the fourth position stands for GPIO_ACTIVE_HIGH. The 0x01 at second position is unknown but Pine64 H64 model B .dtb uses 0x01 there.
Values for device-wake-gpios = <...>; are completely missing. I have tested device-wake-gpios = <0x31 0x01 0x54 0x00>; and many more values at third position. I have also tested with 0x00 at second position and 0x01 at fourth position. And I also permutated the 0x53 and 0x55 to second position and between host-wake-gpios, enable-gpios and device-wake-gpios which all was not working. Unfortunately, there are thousands of combinations left …
If you want to join in: I have uploaded the .dtb/.dts and patch for btrtl driver (source and makefile as well as btrtl.ko.gz for kernel 5.11.4) to my Mega.nz folder here. btrtl.ko.gz has to be copied to /lib/firmware/rtl_bt/ followed by a reboot. If everything goes well you should be able to get the output
after powering the box on. You will not get this after a soft reboot. So, the bluetooth chip seems to be on after a cold start.
If this works you can start to uncomment device-wake-gpios = <...>; and fiddle around with the values. With the wrong values firmware will not load and you will not get the above message.
My expectation is that the message will return and maybe even the error will vanish if you choose the right values.
BTW, values for host-wake-gpios and enable-gpios seem to be not so critical for the firmware load message to show up.
P.S.: I also tried changing values of device-wake-gpios while lines for host-wake-gpios and enable-gpios are commented out (which should be a cleaner strategy for testing).
P.P.S.: I just did another couple of tests with device-wake-gpios = ... alone (i.e. host-wake-gpios and enable-gpios commented) and the firmware load message was shown for several different numbers at third position in device-wake-gpios. But when I additionally uncommented host-wake-gpios and enable-gpios the message was not shown anymore.
Result: You cannot test parameters independently which makes it much more difficult (or maybe even impossible). You know why I gave up on it?
I’m new to this so I would appreciate your assistance. I have Manjoro running on a Beelink GT King. No WiFi of course so reading this thread, I see that you added the dkms-rtl8822cs on github… The problem I have is that I don’t know how to install it… I also realize that some dependencies need to be installed. Can you take this one from the top with an instruction set please?
I appreciate anything you can do to assist.
Thanks.
TIm.