MT7915e weak signal

Tried and tried, can't seem to see how to get the calibration data and point the driver at it. I found one forum post where it applied to a hardware router, but still didn't see how to get the data (or how to apply it on a software router).

Does anyone still watching this thread know how to check the power input on a wifi card? Can't see how to do that.

Not the radio power OUTPUT but the card voltage and amperage INPUT. Trying to verify the adapter card I'm using isn't the problem by underpowering the card.

Or would be able to read the info from the card's sensors if they're available. Some devices do have that capability. Now, if it doesn't, I'd like to know that as well.

@netracerx Sorry you're hitting problems with this card. I happened to recognize this model of server--it's a "double pizza box"... a 2U sized server, yes?

Assuming that is correct, how do you have the physical server mounted? Is it sitting on a table or in a home-made rack? Something else?

Where in relation to the rear of your server are the antennas for the wireless card? How many antennas?

(See where I'm going with all this?)

If my questions aren't ringing bells yet, basically I am trying to see what your RF environment looks like around the server and card. I know you mentioned you're quite technical, so I will assume all of this is familiar to you... your 2U server is basically a giant "wall" for RF. There is so much metal inside that bad-boy that RF is likely unable to pass through it in any usable way. Also, there is likely a lot of RF reflection going on as a result of its heavy metal construction. Metal has a 6-10dB absorption rate, if I'm not mistaken. That's significant.

I asked about a rack because I have seen where metal racks create some really wicked RF "black holes". Again, going back to that significant absorption rate.

The questions about antennas and their placement goes back to my points about the reflectivity of the metal nearby them. If they're positioned with a thick metal parallel to them, you could be getting some really intense RF reflectivity causing "echos" that the antenna are picking up and the card is then having to fight against.

Just some thoughts to consider :slight_smile:

1 Like

Okay, at the risk of sounding like an asshole, lleachii (one I'm willing to take with that response), let me explain why I ask...

Hard drives (even SSDs), have such "sensors"...
RAM in your computer have such "sensors"...
Your CPU and GPU have such "sensors"...
Where measurement of such data is appropriate and useful, companies do place such "sensors" on our "consumer devices" for the purpose of reporting that data to the end user. Now, many times it goes unused directly by the end users and is only consumed by the drivers and the OS to determine overall system health, but it is there and accessible most times by the end user through the proper tools (tools that are better to use, and easier, than grabbing your trusty multimeter and hoping you contacted the right pins on your device, avoiding a short).

I'm asking questions on a device that prior to now I did not feel I needed such depth of understanding. I'm diving into new waters, so to speak, attempting to build and run a software AP. Again, prior to now, all of my APs have been hardware routers repurposed for such use. But, half the fun of being in IT is playing with tech, something I've done for 38 of the 43 years I've been on this planet. I'm running enterprise hardware in my home for fun, just to do virtualization. Not needed, but that's not the point.

If your type of response is what I can continue to expect from this forum, which I haven't until now, then please ignore my posts and I'll ignore this forum. If you're not going to be genuinely helpful, don't bother. Come to me with info that's useful and in the spirit of tinkering on the platform. Don't be a smartass.

1 Like

Thank you for the questions, I'll answer what I can.

Initially, I had used (or re-used) some antennas from a previous wireless card that attached via cable from the back of the server to a set of antennas in a mount. https://m.media-amazon.com/images/I/81zLzSiYEfL.AC_SL1500.jpg

See the above link. I connected two of the four antennas to the card, and sat the antennas above the server on a table. I tested with that config, still had issues with reception and throughput.

I then attached the antennas that came with the card, which attached to the back of the server, which sits close to the floor. Not optimal, at all, but in the spirit of testing I left it be to see if there was any difference. There was none.

I even scavenged antennas from a WRT32X, just to test. Still, same issues.

So, the antennas are externally connected and both poles are connected on the card. I don't have a rack here (not the space for it, and honestly, more than I need atm), so that's not in the equation.

If you have any other questions to help me hammer this out, please ask.

Awesome, so it sounds like you've eliminated some of the potential RF dead spots (directly behind the server chassis, no rack, etc.). Is the room in which your antenna mount is located something small, such as a closet?

Also, what is the cable distance from connector to the base of your antenna mount?

No, it's an open area. It was a garage conversion that opens out into the rest of the house (which is small at 1100sqft). At the furthest testing point on the other side of the house, there are at least one wall and a small pillar in between. The current AP, my RAX48, is what devices are connected to on that side, and are performing decently. If I attempt to connect to the MT7915e (with the antennas basically in the same spot), I get issues. I can't turn off the RAX48 during testing because other devices are using that connection full time, and the cable length of the antennas from the Asus card isn't that long (maybe 2-3 ft?).

Okay, understood. I think I read somewhere in this thread (maybe your OP?) that you are at 23dBm on your TX power on channel 36.

Can you try switching to either channel 149 or 157 and confirm your TX power goes to 27dBm?

iw wl1 info or iw phy1 info, depending on your device naming.

For us in the US, here's our options:

Frequencies:
			* 5180 MHz [36] (23.0 dBm)
			* 5200 MHz [40] (23.0 dBm)
			* 5220 MHz [44] (23.0 dBm)
			* 5240 MHz [48] (23.0 dBm)
			* 5260 MHz [52] (24.0 dBm) (radar detection)
			* 5280 MHz [56] (24.0 dBm) (radar detection)
			* 5300 MHz [60] (24.0 dBm) (radar detection)
			* 5320 MHz [64] (24.0 dBm) (radar detection)
			* 5500 MHz [100] (24.0 dBm) (radar detection)
			* 5520 MHz [104] (24.0 dBm) (radar detection)
			* 5540 MHz [108] (24.0 dBm) (radar detection)
			* 5560 MHz [112] (24.0 dBm) (radar detection)
			* 5580 MHz [116] (24.0 dBm) (radar detection)
			* 5600 MHz [120] (24.0 dBm) (radar detection)
			* 5620 MHz [124] (24.0 dBm) (radar detection)
			* 5640 MHz [128] (24.0 dBm) (radar detection)
			* 5660 MHz [132] (24.0 dBm) (radar detection)
			* 5680 MHz [136] (24.0 dBm) (radar detection)
			* 5700 MHz [140] (24.0 dBm) (radar detection)
			* 5720 MHz [144] (24.0 dBm) (radar detection)
			* 5745 MHz [149] (27.0 dBm)
			* 5765 MHz [153] (27.0 dBm)
			* 5785 MHz [157] (27.0 dBm)
			* 5805 MHz [161] (27.0 dBm)
			* 5825 MHz [165] (27.0 dBm)
			* 5845 MHz [169] (27.0 dBm) (no IR)
			* 5865 MHz [173] (27.0 dBm) (no IR)

Any by the way, I have several mt7915 radios, they're just built into my RT3200 units.

See photo:
test5 phy1

iw phy1 info:

Wiphy phy1
	wiphy index: 1
	max # scan SSIDs: 4
	max scan IEs length: 2190 bytes
	max # sched scan SSIDs: 0
	max # match sets: 0
	Retry short limit: 7
	Retry long limit: 4
	Coverage class: 0 (up to 0m)
	Device supports AP-side u-APSD.
	Device supports T-DLS.
	Available Antennas: TX 0x3 RX 0x3
	Configured Antennas: TX 0x3 RX 0x3
	Supported interface modes:
		 * IBSS
		 * managed
		 * AP
		 * AP/VLAN
		 * monitor
		 * mesh point
		 * P2P-client
		 * P2P-GO
	Band 2:
		Capabilities: 0x9ff
			RX LDPC
			HT20/HT40
			SM Power Save disabled
			RX Greenfield
			RX HT20 SGI
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 7935 bytes
			No DSSS/CCK HT40
		Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
		Minimum RX AMPDU time spacing: 4 usec (0x05)
		HT TX/RX MCS rate indexes supported: 0-15
		VHT Capabilities (0x339979b1):
			Max MPDU length: 7991
			Supported Channel Width: neither 160 nor 80+80
			RX LDPC
			short GI (80 MHz)
			TX STBC
			SU Beamformer
			SU Beamformee
			MU Beamformer
			MU Beamformee
			RX antenna pattern consistency
			TX antenna pattern consistency
		VHT RX MCS set:
			1 streams: MCS 0-9
			2 streams: MCS 0-9
			3 streams: not supported
			4 streams: not supported
			5 streams: not supported
			6 streams: not supported
			7 streams: not supported
			8 streams: not supported
		VHT RX highest supported: 0 Mbps
		VHT TX MCS set:
			1 streams: MCS 0-9
			2 streams: MCS 0-9
			3 streams: not supported
			4 streams: not supported
			5 streams: not supported
			6 streams: not supported
			7 streams: not supported
			8 streams: not supported
		VHT TX highest supported: 0 Mbps
		HE Iftypes: managed
			HE MAC Capabilities (0x08011a000040):
				+HTC HE Supported
				Trigger Frame MAC Padding Duration: 2
				OM Control
				Maximum A-MPDU Length Exponent: 3
				A-MSDU in A-MPDU
			HE PHY Capabilities: (0x5c700e126d00f30e4e3f00):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				242 tone RUs/5GHz
				Device Class: 1
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				NDP with 4x HE-LTF and 3.2us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				DCM Max Constellation: 2
				DCM Max Constellation Rx: 2
				SU Beamformee
				Beamformee STS <= 80Mhz: 3
				Beamformee STS > 80Mhz: 3
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				Triggered CQI Feedback
				Partial Bandwidth Extended Range
				Partial Bandwidth DL MU-MIMO
				PPE Threshold Present
				Power Boost Factor ar
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 1
				20MHz in 40MHz HE PPDU 2.4GHz
				20MHz in 160/80+80MHz HE PPDU
				80MHz in 160/80+80MHz HE PPDU
				DCM Max BW: 1
				Longer Than 16HE SIG-B OFDM Symbols
				Non-Triggered CQI Feedback
				TX 1024-QAM
				RX 1024-QAM
				RX Full BW SU Using HE MU PPDU with Compression SIGB
				RX Full BW SU Using HE MU PPDU with Non-Compression SIGB
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		HE Iftypes: AP
			HE MAC Capabilities (0x00051a081044):
				+HTC HE Supported
				TWT Responder
				BSR
				OM Control
				Maximum A-MPDU Length Exponent: 3
				BQR
				A-MSDU in A-MPDU
				OM Control UL MU Data Disable RX
			HE PHY Capabilities: (0x1c200e926f09af08000c00):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				LDPC Coding in Payload
				NDP with 4x HE-LTF and 3.2us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				DCM Max Constellation: 2
				DCM Max Constellation Rx: 2
				SU Beamformer
				SU Beamformee
				MU Beamformer
				Beamformee STS <= 80Mhz: 3
				Beamformee STS > 80Mhz: 3
				Sounding Dimensions <= 80Mhz: 1
				Sounding Dimensions > 80Mhz: 1
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				Triggered SU Beamforming Feedback
				Triggered MU Beamforming Feedback
				Partial Bandwidth Extended Range
				PPE Threshold Present
				Max NC: 1
				TX 1024-QAM
				RX 1024-QAM
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		HE Iftypes: mesh point
			HE MAC Capabilities (0x00011a000040):
				+HTC HE Supported
				OM Control
				Maximum A-MPDU Length Exponent: 3
				A-MSDU in A-MPDU
			HE PHY Capabilities: (0x1c200c0000000000008000):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				LDPC Coding in Payload
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: not supported
				4 streams: not supported
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		Frequencies:
			* 5180 MHz [36] (23.0 dBm)
			* 5200 MHz [40] (23.0 dBm)
			* 5220 MHz [44] (23.0 dBm)
			* 5240 MHz [48] (23.0 dBm)
			* 5260 MHz [52] (24.0 dBm) (radar detection)
			* 5280 MHz [56] (24.0 dBm) (radar detection)
			* 5300 MHz [60] (24.0 dBm) (radar detection)
			* 5320 MHz [64] (24.0 dBm) (radar detection)
			* 5500 MHz [100] (24.0 dBm) (radar detection)
			* 5520 MHz [104] (24.0 dBm) (radar detection)
			* 5540 MHz [108] (24.0 dBm) (radar detection)
			* 5560 MHz [112] (24.0 dBm) (radar detection)
			* 5580 MHz [116] (24.0 dBm) (radar detection)
			* 5600 MHz [120] (24.0 dBm) (radar detection)
			* 5620 MHz [124] (24.0 dBm) (radar detection)
			* 5640 MHz [128] (24.0 dBm) (radar detection)
			* 5660 MHz [132] (24.0 dBm) (radar detection)
			* 5680 MHz [136] (24.0 dBm) (radar detection)
			* 5700 MHz [140] (24.0 dBm) (radar detection)
			* 5720 MHz [144] (24.0 dBm) (radar detection)
			* 5745 MHz [149] (24.0 dBm)
			* 5765 MHz [153] (24.0 dBm)
			* 5785 MHz [157] (24.0 dBm)
			* 5805 MHz [161] (24.0 dBm)
			* 5825 MHz [165] (24.0 dBm)
			* 5845 MHz [169] (24.0 dBm) (no IR)
			* 5865 MHz [173] (24.0 dBm) (no IR)
	valid interface combinations:
		 * #{ IBSS } <= 1, #{ AP, mesh point } <= 16, #{ managed } <= 19,
		   total <= 19, #channels <= 1, STA/AP BI must match, radar detect widths: { 20 MHz (no HT), 20 MHz, 40 MHz, 80 MHz, 80+80 MHz, 160 MHz }

	HT Capability overrides:
		 * MCS: ff ff ff ff ff ff ff ff ff ff
		 * maximum A-MSDU length
		 * supported channel width
		 * short GI for 40 MHz
		 * max A-MPDU length exponent
		 * min MPDU start spacing
	max # scan plans: 1
	max scan plan interval: -1
	max scan plan iterations: 0
	Supported extended features:
		* [ VHT_IBSS ]: VHT-IBSS
		* [ RRM ]: RRM
		* [ BEACON_RATE_LEGACY ]: legacy beacon rate setting
		* [ BEACON_RATE_HT ]: HT beacon rate setting
		* [ BEACON_RATE_VHT ]: VHT beacon rate setting
		* [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
		* [ CQM_RSSI_LIST ]: multiple CQM_RSSI_THOLD records
		* [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211
		* [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
		* [ AIRTIME_FAIRNESS ]: airtime fairness scheduling
		* [ AQL ]: Airtime Queue Limits (AQL)
		* [ SCAN_RANDOM_SN ]: use random sequence numbers in scans
		* [ SCAN_MIN_PREQ_CONTENT ]: use probe request with only rate IEs in scans
		* [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
		* [ DEL_IBSS_STA ]: deletion of IBSS station support
		* [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
		* [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support
		* [ BSS_COLOR ]: BSS coloring support

Both channels 149 and 157 max at 24dB with 160MHz channel width. Dunno if it matters, but changing to 80MHz doesn't change it.

And looking at the channel power list you posted, I'm wondering after looking at my output if the previous post about calibration data is kinda a missing puzzle piece here...

1 Like

Interesting. :face_with_monocle: First things first, I would definitely not mess with 160Mhz before getting 80Mhz working solidly. There are any number of other issues with 160Mhz commits as of late and I feel that would just be complicating matters in the short term.

With that said, I'm not entirely sure why you wouldn't be able to go up to 27dBm on channels 149+. An additional 3dBm isn't a small increase and I would be very curious how much more it extends your signal.

I'm hoping maybe @ThiloteE or @Borromini might be able to help weigh in and figure out why 24dBm is your current max.

Agreed on the 160MHz setting, I've seen the forum trails on that...

I get the feeling it's a combination of driver setup and maybe hardware used. I'm eyeing another adapter for the card that takes a SATA connection for power input, wondering if that may help. I did see in another post on a different card that someone did use additional power input on their hardware AP platform to level out the power input to the card, which solved a lot of the problems they had with signal reception and throughput.

(May go find that post for reference, to make sure I am understanding that right.)

Not to take your thread off track, but if the mt7986 were available in a PCIe card, that's where I'd put my money :wink:

If I felt like digging into BananaPi, I'd look into it. Unfortunately, my preliminary research shows that is an SoC, and the component card for WiFi (MT7531A) isn't available as a PCIe card. But... It may be worth looking at another MediaTek PCIe-based chipset (one more stable than this). I've seen a few posts of other people having some issues implementing this in just hardware, and I'm trying to do this virtually.

I love a challenge, but I'm not against admitting when a solution may not be a solution.

But I'm not there just yet. :slight_smile:

1 Like

Do you see anything like this in your OpenWrt boot log?
mt7915e: probe of 0000:01:00.0 failed with error -22

No, nothing like that.

While we're waiting for some others to hopefully jump in with some next steps, did you happen to see this thread? Curious if some of the participants there might be able to weigh in here.

That's the article I was just talking about! One of the posters had to run a wire to a regulator to boost the current to the card because the slot wasn't properly powering the card (hence why I ask about checking the power input on the card, and if the card supported reporting that info).

Here's the post specifically: https://forum.openwrt.org/t/mt7915-pcie-cards-on-bpi-unielec-boards/118194/14?u=netracerx