Connecting to university WiFi

0 votes

I have a board with an ESP8266 chip running Micropython firmware v1.8.7. My requirement is to use WebREPL via the University Wi-Fi, which uses WPA2 Enterprise EAP-MSCHAPv2 authentication. My Google-fu so far has informed me that Arduino users have been able to connect to WPA2 Enterprise EAP-TLS (certificate based authentication) (link) but not (SSID, username, pwd) networks.

All the threads I've seen so far on the subject seem to be from mid-2016 at the very latest, so I'm wondering whether someone's been able to figure out how to do this since then. I've never dabbled in network related stuff before (nor am I a great programmer), so all the big words above are pretty new to me. I thus have the following questions:

  1. Is this just an inherent limitation of the ESP8266? Or can it be done? This discussionseems to suggest it can be done but the capability needs to be coded in.
  2. Is it possible to somehow branch out a WPA2 Personal connection from the WPA2 Enterprise that can be used by the ESP8266 as well as my PC? What I've tried so far is to attempt a hotspot using Connectify but there's been no luck there.

I appreciate any help you guys can provide. If there's any relevant info I haven't included, please let me know and I'll edit it in.

Edit: @MaximilianGerhardt This is what works for me on a WPA2 Personal:

import network
wlan = network.WLAN(network.STA_IF)
wlan.active(True)
wlan.connect('ssid','pwd')
wlan.ifconfig()

import webrepl
webrepl.start()

On a WPA2 Enterprise, I had hoped changing this line would work, but no joy:

wlan.connect('ssid',auth=WPA2_ENT,'user','pwd')

Thanks, I'll look into the Espressif Non-OS SDK V2.0.0 and see if I can make it work.

Oct 10, 2018 in IoT (Internet of Things) by Matt
• 2,270 points
1,260 views

1 answer to this question.

0 votes

Since you're not using the Espressif C SDK, but the python "Micropython" firmware, this change has not been yet propagated into this python firmware.

You can see the mapping of the network functions (active(), connect(), ifconfig() etc) in the firmware here: https://github.com/micropython/micropython/blob/master/esp8266/modnetwork.c#L430. In line 115 you can also see the call to wifi_station_connect(), which is a native Espressif-SDK function. Thus you'll see, the firmware doesn't yet make use of the new functions for WPA2 authentication. In line 490 you can see all the available options for authentication:

MP_OBJ_NEW_SMALL_INT(AUTH_OPEN) ,
MP_OBJ_NEW_SMALL_INT(AUTH_WEP) ,
MP_OBJ_NEW_SMALL_INT(AUTH_WPA_PSK) ,
MP_OBJ_NEW_SMALL_INT(AUTH_WPA2_PSK) ,
MP_OBJ_NEW_SMALL_INT(AUTH_WPA_WPA2_PSK)

WPA2 enterprise authentication is not yet one of them.

So now I'd say your options are:

  1. Open a github issue https://github.com/micropython/micropython/ in which you ask them to implement WPA2 authentication for the ESP8266
  2. Switch to the C SDK from Espressif
answered Oct 10, 2018 by anonymous2
• 4,240 points

Related Questions In IoT (Internet of Things)

0 votes
1 answer

Connect Android Things based Raspberry Pi 3 to wifi network for the first time!

Hey, I think its alright!  Your Raspberry Pi ...READ MORE

answered Jul 19, 2018 in IoT (Internet of Things) by nirvana
• 3,130 points
1,180 views
0 votes
1 answer
0 votes
1 answer
0 votes
1 answer

How to detect presence of a device in a WiFi network?

Finding the mac-address would probably work. Basically, ...READ MORE

answered Nov 16, 2018 in IoT (Internet of Things) by Shubham
• 13,490 points
3,363 views
0 votes
1 answer

aws iot describe-endpoint::You must specify a region

This fixed the problem: Browse to https://console.aws.amazon.com/iam/home?region=us-west-2#security_credentialand then if ...READ MORE

answered Jul 11, 2018 in IoT (Internet of Things) by anonymous2
• 4,240 points
1,250 views
0 votes
1 answer

Faster communication between two ESP8266 in client-server setup

Try following. Server loop void loop() { // ...READ MORE

answered Jul 13, 2018 in IoT (Internet of Things) by anonymous2
• 4,240 points
6,847 views
0 votes
1 answer

Restrict Android Internet usage to WiFi without Internet Access

You can check if wifi is connected ...READ MORE

answered Jul 17, 2018 in IoT (Internet of Things) by anonymous2
• 4,240 points
1,759 views
0 votes
1 answer

How to send a data from arduino uno to a webpage through esp8266 wifi module?

You are missing a few \r\n and the length ...READ MORE

answered Aug 9, 2018 in IoT (Internet of Things) by anonymous2
• 4,240 points
3,675 views
webinar REGISTER FOR FREE WEBINAR X
REGISTER NOW
webinar_success Thank you for registering Join Edureka Meetup community for 100+ Free Webinars each month JOIN MEETUP GROUP