2018-01-10 12:15:52

by Carlo Caione

[permalink] [raw]
Subject: RTL8723bu: poor signal and connection troubles

Hi,
this is a follow up email to [0] since the problem was never fully
investigated / solved and I keep seeing the same problem also on my
hardware.

Also in my case the hardware is a rtl8723bt transceiver
(0x0bda:0xb720), this time shipped on the internal USB bus in a cheap
laptop branded Zyrex Sky 232.

As already reported by Mylene the problem is that using this
transceiver and the latest Linus master you can barely see any WiFi
network around and also when a WiFi network is actually seen, the
connection is impossible since the signal strength is too low to have
a reliable connection. Of course during my tests BT is off and no BT
driver is probed at all.

Using the downstream driver at [1] everything works correctly.

I tried to debug a bit the issue, in particular comparing functions
and registers related to the antenna setup (.power_on, .enable_rf,
.phy_init_antenna_selection, .phy_iq_calibrate hooks) but everything
seems pretty much the same on the two drivers (even though slightly
differences do exist).

Any idea / suggestion on how to debug this problem? I guess it's worth
to start looking at this since several platforms are being affected
now.

Cheers,

[0] https://www.spinics.net/lists/netdev/msg468028.html
[1] https://github.com/lwfinger/rtl8723bu

--
Carlo Caione | +44.7384.69.16.04 | Endless


2018-01-18 10:43:24

by Carlo Caione

[permalink] [raw]
Subject: Re: RTL8723bu: poor signal and connection troubles

On Wed, Jan 10, 2018 at 12:15 PM, Carlo Caione <[email protected]> wrote:
> Hi,
> this is a follow up email to [0] since the problem was never fully
> investigated / solved and I keep seeing the same problem also on my
> hardware.
>
> Also in my case the hardware is a rtl8723bt transceiver
> (0x0bda:0xb720), this time shipped on the internal USB bus in a cheap
> laptop branded Zyrex Sky 232.
>
> As already reported by Mylene the problem is that using this
> transceiver and the latest Linus master you can barely see any WiFi
> network around and also when a WiFi network is actually seen, the
> connection is impossible since the signal strength is too low to have
> a reliable connection. Of course during my tests BT is off and no BT
> driver is probed at all.
>
> Using the downstream driver at [1] everything works correctly.
>
> I tried to debug a bit the issue, in particular comparing functions
> and registers related to the antenna setup (.power_on, .enable_rf,
> .phy_init_antenna_selection, .phy_iq_calibrate hooks) but everything
> seems pretty much the same on the two drivers (even though slightly
> differences do exist).
>
> Any idea / suggestion on how to debug this problem? I guess it's worth
> to start looking at this since several platforms are being affected
> now.

Jes,
anything to comment about this issue? (ping)

--
Carlo Caione | +44.7384.69.16.04 | Endless

2018-01-21 21:46:28

by Jes Sorensen

[permalink] [raw]
Subject: Re: RTL8723bu: poor signal and connection troubles

On 01/11/2018 05:30 AM, Barry Day wrote:
> On Wed, Jan 10, 2018 at 12:15:51PM +0000, Carlo Caione wrote:
>> Hi,
>> this is a follow up email to [0] since the problem was never fully
>> investigated / solved and I keep seeing the same problem also on my
>> hardware.
>>
>> Also in my case the hardware is a rtl8723bt transceiver
>> (0x0bda:0xb720), this time shipped on the internal USB bus in a cheap
>> laptop branded Zyrex Sky 232.
>>
>> As already reported by Mylene the problem is that using this
>> transceiver and the latest Linus master you can barely see any WiFi
>> network around and also when a WiFi network is actually seen, the
>> connection is impossible since the signal strength is too low to have
>> a reliable connection. Of course during my tests BT is off and no BT
>> driver is probed at all.
>>
>> Using the downstream driver at [1] everything works correctly.
>>
>> I tried to debug a bit the issue, in particular comparing functions
>> and registers related to the antenna setup (.power_on, .enable_rf,
>> .phy_init_antenna_selection, .phy_iq_calibrate hooks) but everything
>> seems pretty much the same on the two drivers (even though slightly
>> differences do exist).
>>
>> Any idea / suggestion on how to debug this problem? I guess it's worth
>> to start looking at this since several platforms are being affected
>> now.
>>
>> Cheers,
>>
>> [0] https://www.spinics.net/lists/netdev/msg468028.html
>> [1] https://github.com/lwfinger/rtl8723bu
>>
>> --
>> Carlo Caione | +44.7384.69.16.04 | Endless
>
> I've found the same. The signal strength using the original driver
> from Realtek is significantly higher than when using rtl8xxxu.
> I also was not able to find anything wrong in the rtl8xxxu source code
> that would be causing the difference, which leads to the thought it is
> missing something that exists in the original driver.

One issue with rtl8723bu is that it needs to coexist with the bluetooth
driver. When I wrote the rtl8723bu support that was no BT support for
the chip in the kernel and it worked fine, at least for me. However if
you load the BT driver for the dongle which someone pushed into the
kernel since then, it is likely to hijack the antennas causing the weak
signal you describe.

Jes

2018-01-21 22:56:09

by Carlo Caione

[permalink] [raw]
Subject: Re: RTL8723bu: poor signal and connection troubles

On Sun, Jan 21, 2018 at 9:46 PM, Jes Sorensen <[email protected]> wrote:
> On 01/11/2018 05:30 AM, Barry Day wrote:

> One issue with rtl8723bu is that it needs to coexist with the bluetooth
> driver. When I wrote the rtl8723bu support that was no BT support for
> the chip in the kernel and it worked fine, at least for me. However if
> you load the BT driver for the dongle which someone pushed into the
> kernel since then, it is likely to hijack the antennas causing the weak
> signal you describe.

Yeah, that's why when testing the dongle I carefully disabled BT and
made sure no BT driver was probed at all. Still I can see the issue.
I honestly doubt that the problem is caused by BT coexistence. Any
other idea or suggestion to debug this problem?

Thanks,

--
Carlo Caione | +44.7384.69.16.04 | Endless

2018-01-11 10:31:02

by Barry Day

[permalink] [raw]
Subject: Re: RTL8723bu: poor signal and connection troubles

On Wed, Jan 10, 2018 at 12:15:51PM +0000, Carlo Caione wrote:
> Hi,
> this is a follow up email to [0] since the problem was never fully
> investigated / solved and I keep seeing the same problem also on my
> hardware.
>
> Also in my case the hardware is a rtl8723bt transceiver
> (0x0bda:0xb720), this time shipped on the internal USB bus in a cheap
> laptop branded Zyrex Sky 232.
>
> As already reported by Mylene the problem is that using this
> transceiver and the latest Linus master you can barely see any WiFi
> network around and also when a WiFi network is actually seen, the
> connection is impossible since the signal strength is too low to have
> a reliable connection. Of course during my tests BT is off and no BT
> driver is probed at all.
>
> Using the downstream driver at [1] everything works correctly.
>
> I tried to debug a bit the issue, in particular comparing functions
> and registers related to the antenna setup (.power_on, .enable_rf,
> .phy_init_antenna_selection, .phy_iq_calibrate hooks) but everything
> seems pretty much the same on the two drivers (even though slightly
> differences do exist).
>
> Any idea / suggestion on how to debug this problem? I guess it's worth
> to start looking at this since several platforms are being affected
> now.
>
> Cheers,
>
> [0] https://www.spinics.net/lists/netdev/msg468028.html
> [1] https://github.com/lwfinger/rtl8723bu
>
> --
> Carlo Caione | +44.7384.69.16.04 | Endless

I've found the same. The signal strength using the original driver
from Realtek is significantly higher than when using rtl8xxxu.
I also was not able to find anything wrong in the rtl8xxxu source code
that would be causing the difference, which leads to the thought it is
missing something that exists in the original driver.


Barry Day

2019-01-29 09:56:35

by Chris Chiu

[permalink] [raw]
Subject: Re: RTL8723bu: poor signal and connection troubles

On Mon, Jan 22, 2018 at 6:56 AM Carlo Caione <[email protected]> wrote:
>
> On Sun, Jan 21, 2018 at 9:46 PM, Jes Sorensen <[email protected]> wrote:
> > On 01/11/2018 05:30 AM, Barry Day wrote:
>
> > One issue with rtl8723bu is that it needs to coexist with the bluetooth
> > driver. When I wrote the rtl8723bu support that was no BT support for
> > the chip in the kernel and it worked fine, at least for me. However if
> > you load the BT driver for the dongle which someone pushed into the
> > kernel since then, it is likely to hijack the antennas causing the weak
> > signal you describe.
>
> Yeah, that's why when testing the dongle I carefully disabled BT and
> made sure no BT driver was probed at all. Still I can see the issue.
> I honestly doubt that the problem is caused by BT coexistence. Any
> other idea or suggestion to debug this problem?
>
> Thanks,
>
> --
> Carlo Caione | +44.7384.69.16.04 | Endless

This problem has been reported for 1 year, but it still persists now.

I found that the problem disappeared after I resume from suspend. Before
suspend, the rssi observed from AP side for this dongle is quite poor. But
it comes back to normal after resume. The signal strength differs almost
30dBm. So I compared/checked the RF/BB related register values
(in .init_phy_bb/.init_phy_rf/.set_tx_power) but they are identical with the
same routines in the driver from https://github.com/lwfinger/rtl8723bu

The registers also remain the same across suspend/resume. Don't really
know why a simple suspend/resume could cause such difference. Can
anyone suggest which part I should look into to get more information?

Chris

2019-02-12 15:38:58

by Chris Chiu

[permalink] [raw]
Subject: Re: RTL8723bu: poor signal and connection troubles

On Tue, Jan 29, 2019 at 5:56 PM Chris Chiu <[email protected]> wrote:
>
> On Mon, Jan 22, 2018 at 6:56 AM Carlo Caione <[email protected]> wrote:
> >
> > On Sun, Jan 21, 2018 at 9:46 PM, Jes Sorensen <[email protected]> wrote:
> > > On 01/11/2018 05:30 AM, Barry Day wrote:
> >
> > > One issue with rtl8723bu is that it needs to coexist with the bluetooth
> > > driver. When I wrote the rtl8723bu support that was no BT support for
> > > the chip in the kernel and it worked fine, at least for me. However if
> > > you load the BT driver for the dongle which someone pushed into the
> > > kernel since then, it is likely to hijack the antennas causing the weak
> > > signal you describe.
> >
> > Yeah, that's why when testing the dongle I carefully disabled BT and
> > made sure no BT driver was probed at all. Still I can see the issue.
> > I honestly doubt that the problem is caused by BT coexistence. Any
> > other idea or suggestion to debug this problem?
> >
> > Thanks,
> >
> > --
> > Carlo Caione | +44.7384.69.16.04 | Endless
>
> This problem has been reported for 1 year, but it still persists now.
>
> I found that the problem disappeared after I resume from suspend. Before
> suspend, the rssi observed from AP side for this dongle is quite poor. But
> it comes back to normal after resume. The signal strength differs almost
> 30dBm. So I compared/checked the RF/BB related register values
> (in .init_phy_bb/.init_phy_rf/.set_tx_power) but they are identical with the
> same routines in the driver from https://github.com/lwfinger/rtl8723bu
>
> The registers also remain the same across suspend/resume. Don't really
> know why a simple suspend/resume could cause such difference. Can
> anyone suggest which part I should look into to get more information?
>
> Chris

I found one thing interesting. It does seem to be related to BT coexist just
as Jes mentioned. Follow the steps below and the signal can always come
back to normal. The '1-7:1.0' is one of the IDs for the rtl8723bu usb interface.

1. unbind btusb first, cd /sys/bus/usb/drivers/btusb; echo 1-7:1.0 > unbind
2. unload rtl8xxxu driver then reload it. The signal stays at poor level
3. bind the btusb. cd /sys/bus/usb/drivers/btusb; echo 1-7:1.0 > bind

Seems that the BT firmware loaded is helpful for the only antenna config
which is shared by WiFi/BT. If I load the BT firmware after rtl8xxxu driver,
everything's fine.

Can anyone suggest the next step? I've compared all registers and h2c cmds
between vendor driver and rtl8xxxu driver. Basically, they're almost the same
even the bt coexist related settings. So it's difficult to imagine why the same
power on sequence setting and RF enable setting cause that huge signal
difference.

Chris