M.2 Key-e For Wifi

6 views
Skip to first unread message

Kathy Douds

unread,
Jul 25, 2024, 3:47:15 AM7/25/24
to calabash-android

I see what you mean about the e-bay. I am navigating the hellish landscape os small factor wifi Access points cards. It is very difficult to search these things. They do no list specifications and dimensions very clearly unless NGFF is unambiguously 2230, but I am not sure of that. I can't tell if they have sufficient range or the required power profile.

Use it as a wired router and get a device designed by some manufacturer as a wifi ap. The manufacturers get a lot of support from the chipset makers etc to make sure their hardware works, the antennas work etc.

m.2 key-e for wifi


Download Ziphttps://urlin.us/2zNlOl



It's actually a better solution technologically. "all in one" is a serious compromise. Typically the good physical location to put an antenna/radio is not a good location to put the ISP internet cable/fiber coming into your house. Also, you want your router to have a lot of CPU but typically APs don't need a lot of CPU. The nanopi is a good device spec-wise for routing packets and doing queue management / SQM, put an access point in a good centralized location to get good wifi, connect the two with an ethernet cable, and profit.

In my case it is optimal to have the router and wifi at the same spot which is central and high at the house. Not sure that a ceiling mounted option will work for my case. My previous setup was ok and I will continue with that (put the AP in the same place).

It looks reasonable, and if you're not going to use Omada controller and have multiple APs then the EAP factory firmware isn't an advantage. Stick OpenWrt on the AP and you're good to go. the solution will probably be both cheaper and better than trying to find an M.2 card.

I left the original friendlyElec firmware in nanopi R5C. It is OpenWRT 22.03.5 based (the latest).
Couldn't find suitable image to burn in the OpenWRT site. Looks like support for this little piece of hardware is very new. Hardware wise the board is impressive with 32GB ROM and 4GB RAM. Hands down the biggest OpenWRT installation I have ever seen.

Now I am trying to setup guest WiFi and let me tell you is not for the faint of hart. I already bricked the AP twice. Well, Not really bricked but it went to a state that I couldn't access it via ssh, http, wired or wifi but it was working as IP allowing connections. Go figure...

One of our vendors uses a Marvell-based solution that had module integration done by Laird. Not only is their shit not mainlined, Laird tries to charge people extra for features that are standard in hostapd. (Since hostapd/wpa_supplicant is BSD licensed, they can force their customers to use hacked-up and renamed wpa_supplicant with unknown modifications). As a result we routinely have weird wifi problems in aspects of operation that should "just work" (such as going out to lunch for 5-10 minutes if the AP they are connected to has a DFS event, instead of following the AP to its new channel and/or rescanning and reassociating with another AP) and do for nearly any other chipset, and that's just client mode only!!!

Have you been able to set up a 6GHz access point with the 7921K, and will it support multiple BSS (i.e. more than one SSID)? I wasn't able to have multiple BSS on a MT7922 with OpenWRT v22.03, I suspect it may be a hardware or firmware limitation, but I haven't tried snapshot, or mainline kernel. I can setup a 6GHz AP, but I don't haven't been able to join it from Intel AX210 clients (however this might be an Intel driver / regulatory region issue - Intel seems to be exceptionally conservative with regulatory compliance). Unfortunately I don't currently have another 6GHz client to test with.

There are different signals available in the M.2 slot and various keys in the slot to show which ones are (or, might be) available. So M.2 key B has two PCIe lanes and one SATA, key M has four PCIe lanes, key E has has one PCIe lane (all of them can have USB). Wifi cards use the latter and typically connect over PCIe (it's interesting to note WWAN cards used to use USB but some of the latest ones are PCIe).

Unlike PCIe cards, USB devices can't become DMA masters and as such building an enclosure capable of housing a PCIe device would be a challenge too big. It obviously is possible, it's just unusually complex and simply not worth it. (Note: surprisingly, NVMe adapters to USB now exist. That's still not generic PCIe though.)

I have the same question as OP, but for slightly different reasons: I'm looking for combo WiFi+BT, and ones available are usually USB nano, which are terrible range-and-obstacle wise. By BT dongle has half the range if plugged to the back of my PC tower, and then there's desk and other appliances in the way.

However, the main obstacle is that M.2 wifi cards are usually in A- or E-key, while SSDs are now coming in M-key. Those aren't compatible, so highly doubt there will be an M.2-to-USB (preferably 3 or higher) adapters with A or E key slot...

Not sure it's what the OP would like to use, though... it's definitely more complex and cumbersome than the typical SSD adapter. But as observed by 350D, the OP will need something to hold antennas at the very least.

EDIT: this answer is not good: the adapter being sold is still B keyed, which is OK for at least some LTE cards out there but not for a typical WiFi M.2 card. See the following picture, where you see an A+E keyed Intel 7265 WiFi card on top of a random B+M keyed SSD memory: the M keyed adapter on which they lie will happily host the memory (and at least mechanically, a LTE adapter like the one previously linked), but the WiFi card instead can't fit in.

or do i need to use this backport of laird : -note-petalinux-software-integration-60-series-and-lwb-series

Otherwise if i order the sdio/uart module 453-00048 it will work without the need to build kernel module ?

Regards

Hi, first thank you for your answer. I understand about the support of wifi driver. But currently i'm looking to find the mapping of the pin WLAN_EN --> MMC2_SDCD (gpio071) on sysfs. are you able to give me it please ?

You will need to contact the wifi module manufacturer for details on how to configure the M2 module (Also its important to know if the manufacturer has the associated kernel driver in mainline 6.1 and compatible with 6.1 LTS, also associated firmware as well )

Thank you about lipgpiod.

Yes i already read the manufacturer documentation about my module !

First i need to power the module and enable it like describ in the manufacturer documentation


According to the data sheet, MMC2_SDCD has a mux mode of 0 and GPIO0_71 has a mux mode of 7. So if you want to control MMC2_SDCD, then you will have to modify the kernel device tree to add this. Please go to dev.ti.com and enter your device. Then go to Configure Pins and Generate Initialization Code. From there, select MMC2 and add the pins needed and modify the device tree based on these changes.

-Anshu

Ok, thak you.
I followed your procedure, but in this way i only configure one pin ? the device tree generated will be wrong ?
Is it possible to load the default config in this tool and just change what i need (add MMC2_SDCD) ?
Then, what's the next step (a guide perhaps )

After discussing internally, the the solution may not require device tree modifications. The WLAN_EN signal should be enabled upon boot. It is an active low pin and the signal that is pulled down by a resistor. Please see Page 17 on the M.2 schematics under Design Files: -AM62A-LP#design-files. Since the signal is enabled, it should only require a connection between the WiFI module and the M.2 Interface on the EVM.

We have two products that would match your needs. The first is wl18xx which would not require any kernel modifications, however it is not already integrated into an M.2. card. The second option is the CC3301 device which is offered integrated into an M.2. card, but would require kernel modifications as the driver is not upstreamed.

Hi thank you for this informations ! The module CC3301 will be a good solution but as i can see not available from standard distributor ?

Then, in the case of the Infineon (Cypress) CYW4373E module that i have for the moment. The WLAN_EN signal need to be pulled high. As i can see on the laird documentation they have an internal pullup on module. But on the sk-AM62A-LP, there is also a pulldown resistor. To speed up the test i will remove it, can you just confirm me that R12 is the resistor in red in the image below

Can you explain why you need WLAN_EN signal pulled high and why you want to remove R12?

According to the schematics, the pin is active-low (indicated by #) and the WLAN_EN signal is already low due to pull down resistor. The pin has logic 1 since its active-low. This means that the hardware should not be changed.

We just did an advance launch for the CC3301 this week, therefore full orders won't be accepted until our full launch at the end of the year. If you would like to order samples before then you can do so at the website that I linked above.

On modifying the SK-AM62A board to make it work with the other vendor solution, you should be able to do whatever mods makes sense to you, but please be careful with the mods, as they will null the warranty of the EVM.

This slot is typically used for wifi and as with key B, there's 2 PCIe lanes in both A and E and so it should be possible to use this slot ... but I haven't seen this before -- it is not in the Buyer Guide either:

This may be indicated by the fact that no x2 adapters exist and that the P11S-P11F for key A/E has two separate PCIe x1 slots instead of a single PCIe slot with x2 connection. There's a SNIA document which explains that key A and key E has "2x PCIe x1" and key B has "PCIe x2".

but i'm not so sure if thats the best choice, bringing it to a m.2 nvme type (M or B+M) with just 2 pcie lanes usable would you enable to have a 5 port jmb585 m.2 card (i use one in my normal nas with 3 disks and its working reliable so far)

4a15465005
Reply all
Reply to author
Forward
0 new messages