Gunar Schorcht
92f6c1a7c6
cpu/esp8266: WiFi mode changed in esp_wifi
...
Although only the station interface is needed, the WiFi interface has to be used in SoftAP + Station mode. Otherwise the send function blocks sporadically. Since the SoftAP interface is not used, it is configured with a hidden SSID and a long beacon interval. Connections from other stations are not allowed.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
538aac00ad
cpu/esp8266: fix of allocated pbuf in esp_wifi
2019-01-24 09:21:17 +01:00
Gunar Schorcht
e384f1e502
cpu/esp8266: send timeout handling in esp_wifi
...
A timeout was introduced if sending a frame takes to long time. In that case the WiFi interface disconnects and reconnects automatically to recover.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
04ee2ebe15
cpu/esp8266: automatic reconnect in esp_wifi
...
A reconnect timer is used to try to reconnect every 20 secons if WiFi interface is in disconnected or connecting state.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
87b87631a6
cpu/esp8266: functions that have to run in IRAM
...
Due to performance reasons _esp_wifi_recv_cb and _send have to be executed in IRAM.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
96d0910d33
cpu/esp8266: avoid _esp_wifi_recv_cb during send
...
To avoid conflicts on receiption of a frame while sending, _esp_wifi_recv_cb should not executed while a frame is in transmission
2019-01-24 09:21:17 +01:00
Gunar Schorcht
78e0aa2a77
cpu/esp8266: usage of _esp_wifi_recv_cb
...
Overriding ethernet_input function _esp_wifi_recv_cb is only used when the WiFi interface is in connected state.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
c5a9058ab9
cpu/esp8266: simplified error handling in esp_wifi
...
wifi_station_connect and wifi_stattion_disconnect never produce errors. Thus, error handling can be removed.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
3225aaa387
cpu/esp8266: different conn states in esp_wifi
...
Different connection states defined to be able to realize a better connect/reconnect handling
2019-01-24 09:21:17 +01:00
Gunar Schorcht
5a835e91ba
cpu/esp8266: fix some comments in esp_wifi
2019-01-24 09:21:17 +01:00
Gunar Schorcht
107e196b18
cpu/esp8266: fix of maximum frame length in esp_wif
...
Since complete MAC frames are handled, ETHERNET_MAX_LEN has to be used instead of ETHERNET_DATA_LEN for receive buffer size and length check.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
0e46869e57
cpu/esp8266: react to "out of memory" in esp_wifi
2019-01-24 09:21:17 +01:00
Gunar Schorcht
35a751c245
cpu/esp8266: avoid send interruption in esp_wifi
2019-01-24 09:21:17 +01:00
Gunar Schorcht
f7998c2ad6
cpu/esp8266: automatic reconnect in esp_wifi
2019-01-24 09:21:17 +01:00
Gunar Schorcht
d6664dafad
cpu/esp8266: esp_wifi dbg msg changed to err msg
2019-01-24 09:21:17 +01:00
Gunar Schorcht
be3a2a4cb5
cpu/esp8266: fix compilation problem of esp_wif
2019-01-24 09:21:17 +01:00
Gunar Schorcht
698770ddb5
cpu/esp8266: fix esp_wifi stability issues
...
Fixes sporadic blocking of the wifi thread in esp_wifi_recv_cb function under heavy network load conditions when frames are coming in faster than they can be processed. Since esp_wifi_recv_cb function is not executed in interrupt context, the msg_send function used for ISR event can block when the message queue is full. With this change esp_wifi can be flooded with icmpv6 packets of maximum size without any problems over hours.
2019-01-24 09:21:17 +01:00
Gunar Schorcht
642c48f856
cpu/esp8266: add built-in WiFi netdev driver
2019-01-24 09:21:17 +01:00