WiFi module

I need to develop a custom board with WiFi connectivity and a UART(RS485). The UART will be connected to a proprietary device with a proprietary protocol, no problem on this.

The board should connect to a MQTT server through WiFi.

I don't know if I will choose a "transparent" WiFi module, implementing all TCP/IP stack and MQTT protocol on the host controller, or choose a "full-featured" WiFi module that integrates all the protocols I need and TCP/IP stack.

Besides this, the most important issue is how to configure the WiFi module with network settings (network name, password and so on). This step is crucial, because it should be as simplest as possible.

I saw many WiFi devices that start as an Access Point (for example, Google ChromeCast). The user, through his smartphone and a companion app, is able to make the first configuration. The steps are similar to the following:

- the app detects and automatically connects to the device in Access Point mode (or the user manually connects to it)

- the user selects the home WiFi network and type credentials (password)

- the app sends this configuration to the Access Point

- the device restarts in Device Mode and connects to the just configured WiFi network

This should be ok for me, but the main problem is the mobile app (for Android, for iOS). I don't have the knowledge to build such an app.

Do you know if there's some vendors of WiFi modules that support with this type of app?

Do you suggest other user-friendly solutions?

Reply to
pozz
Loading thread data ...

You should look at Tasmota firmware on an ESP8266 board.

formatting link

Peter

Reply to
Pete

Have a look at the ESP32 microcontrollers. There this setup process is commonplace, and there are no apps involved. Basically the device powers up in default-AP mode. You connect to its 'mydevice' network, you go to http://169.254.1.1/ (or some other predetermined IP) in your browser to set up the SSID and password, and then it reboots to join your network.

A variation on this is your device connects to the ESP via Bluetooth to send it the wifi credentials, so it doesn't need the user to go to a random IP. As far as I know that does need an app, because setting up the Bluetooth isn't something a web browser/etc can do[1].

I'm not sure how difficult this is in the raw API driven from C, but the frameworks that run on top (Arduino, ESPHome, Tasmota, etc) all do it fairly painlessly. There's also projects like this:

formatting link

I suppose at the end of the day it depends whether your users can handle the 'type this address into your browser' or 'wait for the captive portal' step, or whether they need an app to do that part of the process for them.

For the record, I just received an ESP32+camera board, and a 3D printed case, for GBP7 including next day shipping. So parts cost, especially in volume, must be fairly low.

Theo

[1] There is 'web Bluetooth' but it's for Chromium-based browsers only:
formatting link

- no Safari, no Firefox

Reply to
Theo

Hello pozz,

you can find some budgetable modules here:

formatting link

Nearly every WiFi module supports parallel operation as a station and as access point. Also, if they offer a lightweight TCP stack (mostly limited to 1..4 parallel connections), you can choose to use them on a lower level, e.g. PHY, IP... and implement the upper protocol layers yourself.

None that I know of.

But you don't need an app, just provide the user with a known IP-address (or hostname, if you want to operate a tiny DNS server) that he/she can navigate to with the smartphone's browser, where you serve a simple HTML page to configure the device.

I've used such devices myself, and I hate reconfiguring my phone to use the configuration APs of them... many phones check if the access point provides internet access and must somehow be tricked into connecting if it doesn't, for example.

A much better solution is to just simply support configuration via WPS button.

--
Bernd
Reply to
Bernd Linsel

Is there a documented way to use some of these (I am looking at the PCIe one) *without* having to use its tcp stack, so one could send/receive IP packets, similar to the way it is done via Ethernet or ppp?

Dimiter

====================================================== Dimiter Popoff, TGI

formatting link
======================================================
formatting link

Reply to
Dimiter_Popoff

Is there a documented way to use some of these (I am looking at the PCIe one) *without* having to use its tcp stack, so one could send/receive IP packets, similar to the way it is done via Ethernet or ppp?

Dimiter

====================================================== Dimiter Popoff, TGI

formatting link
======================================================
formatting link

Reply to
Dimiter_Popoff

On 22.02.2022 14:48, Dimiter_Popoff wrote:> > Is there a documented way to use some of these (I am looking at the PCIe > one) *without* having to use its tcp stack, so one could send/receive > IP packets, similar to the way it is done via Ethernet or ppp? > > Dimiter After scanning through the docs, I must admit that it seems the WizNet parts don't support lower levels than UDP and TCP. But there are other manufacturers...

Sorry.

--
Bernd
Reply to
Bernd Linsel

It looks like the two mini-PCIe cards are actually a wifi router on a card - it's not PCIe over the connector but ethernet, UART, etc as they're just using mPCIe as a convenient connector. They appear to be running OpenWRT (ie full Linux) so you can presumably set them up to bridge IP packets onto their wifi/ethernet/etc, perhaps from the UART via PPP. Of course being full Linux you then have security updates to worry about.

They don't look like the kind of thing the OP wants, although the ones using AT commands might be (although I suspect some of those are ESP32 or similar running a custom firmware).

Theo

Reply to
Theo

Nothing to be sorry about, just raising my hopes I have found something I have been looking for for many years is not a big deal :). I expected as much, in fact I must have looked at these at some point in time.

Reply to
Dimiter_Popoff

Those with router capability have sounded interesting to me for some time now (not enough to seriously dig into it, I am just busy doing other things). But I would anticipate they would be a lot more power hungry than the wifi modules politburo members have access to for their devices (politburo being MS, Google and the like, those who have the data allowing them to do IP packets via wifi).

Reply to
Dimiter_Popoff

Espressif supports ESPNow:

"ESP-NOW is a fast, connectionless communication technology featuring short packet transmission. ESP-NOW is ideal for smart lights, remote control devices, sensors and other applications."

It "applies the IEEE802.11 Action Vendor frame technology", whatever that is. Listed here:

Reply to
Clifford Heath

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.