A place users can post their projects. If you have a small project and would like your own dedicated place to post and have others chat about it then this is your spot.

User avatar
By martin_g
#59812 esp_wifi_repeater - A full-functional WiFi Repeater

This is a proof of concept implementation of a WiFi NAT router on the esp8266. It can be used as range extender for an existing WiFi network. Throuput is reasonable, at least Youtube videos work faily well.

The esp acts as STA and as soft-AP and transparently forwards any IP traffic through it. As it uses NAT no routing entries are required neither on the network side nor on the connected stations. Stations are configured via DHCP in the net and receive their DNS responder address from the existing WiFi network.

The router can be configured via a console interface and the config can be stored in flash. The router also allows for remote monitoring of the complete traffic, e.g. using Wireshark.

Possible use cases:
  • Battery powered outdoor wifi range extender
  • Temporary guest WiFi network for network that don't support multiple SSIDs
  • WiFi-probe for observing IP-traffic of smartphones or IoT devices

To build it you will need the esp-open-sdk and an adaped version of the lwip TCP/IP-stack.

Sources and binaries can be found here: https://github.com/martin-ger/esp_wifi_repeater
User avatar
By reaper7
#59815 Nice work!
tested, work very good :D


P.S. it is possible to add ability to change IP address of AP interafce (configurable via user_config.h)

P.S. P.S. I thinking about full address configuration, not only 192.168.x.0
I have a small drone with address 172.16.x.x with very weak signal ... Your esp repeater is a good option for extend range :)
...so, it would be good to configure full net: x.x.x.0 (of course AP always have x.x.x.1)
User avatar
By Ribeiro Santos
#60177 Excellent!!! Thanks a lot!

Using speedtest.net, 2 meters far the router, it shows Down: 6.03Mbps and Upload: 4.83Mbps.

I'm trying to change the AP name but without success. I just uploaded the .bin files from your github.

STA: SSID meikein PW:OlaEstaEaKEY_001 [AutoConnect:1]
AP: SSID von PW:von23 [Open:0] IP:

Again: thanks a lot by sharing your work.