Comments (9)
A performance issue when using TCP on the ESP might be the way the lwip stack on the ESP handles TCP. The next packet must be only send in the CB of the prevoius. Maybe this results in a suboptimal flow control.
The processor with 32 bit and 80/160MHz is fast enough to handle IP packets quickly and pass them through. There is no special trick, but with IP forwarding there is not much protocol status und processing involved.
from esp_wifi_repeater.
No, you can't, you have to use wifi_send_pkt_freedom() for this with some limitations. Receiving then works also with limitations in sniffer mode.
from esp_wifi_repeater.
What do you think about? Per station? For the uplink? Would be possible to add a scheduler (leaky bucket/token bucket) to either the uplink and/or the AP. But what would be the reason to do so?
from esp_wifi_repeater.
@martin-ger I am really sorry to write it here where it's irrelevant but I really wanted to ask this. How much time did it take for you to write the code for esp_wifi_repeater; I have been trying to write my own mesh code for past two months but this seems superior. By controlling subnetting I guess I can have a whole mesh network downstream. Do tell me how much time it took for you to write this.
from esp_wifi_repeater.
Before using the NAT routing approach I tried to get it running as a real layer 2 repeater. After about one week of part-time work I gave up, as I found no way to send frames with src-address other than the own MAC (guess that is hardcoded in the driver). When I came across Neocat's NAT for open-lwip it took me about another week to get the basic functionalty running. Everything else since then, was additional features (monitoring, MQTT, ACLs) and CLI.
I still have an idea for an automatic mesh: upstream "mesh" (at least chaining of a number of repeaters) is not a problem once configured. However, up to now it requries manual configuration: IP subnets have to be different, at least in connected subnet, and the SSIDs as well. You can use the same SSID for uplink and downlink, but with a number of meshed repeaters with automatic uplink connect, this might end up in a loop without real connectivity to the uplink AP.
My idea was: all repeaters have the same SSID/PWD. Each repeaters sends out additional beacons, that contain the BSSID of the repeater and the distance in hops to the uplink AP, when connected. Before a repeater connects to another AP it scans all the available beacons an decides to which it connects (trade-off link quality/level).
from esp_wifi_repeater.
Making a custom probe request for the mesh would be a clean and proper solution. It would enable mesh parameters to be communicated to a new node wishing to join and make the SSID's cleaner.
I have currently made a protocol using esp-touch that makes all the esp8266's in the range of the router to connect to it through broadcasted password and automatically elect a portal device, then the rest disconnect from the router and connect to the portal device. This way you don't have to load any router or mesh configuration into the esp8266 while flashing. I have made a basic mesh that works in this instance but just now I discovered IP_FORWARD in lwip which makes my current mesh approach inferior and I wish to go NAT way.
I don't understand how can esp8266 give such great speed as wifi repeater? Over a tcp connection between esp8266 as STA and my PC (through a router) I get speed in kbps range. What's the deal?
from esp_wifi_repeater.
Makes sense. Thanks!
from esp_wifi_repeater.
set [downstream_kbps|upstream_kbps] value now limits the speed of the AP interface.
from esp_wifi_repeater.
Hey @martin-ger ! Hope you can answer this for me.
Can the netif interface exposed in esp-open-lwip be used to send raw 802.11 packets between esp8266 devices that are not connected to each other?? I suppose devices would have to be connected as station or access-point to the mac-addr I want to send packets to using netif but I'm hoping it can be used to send packets to random esp8266 in range after reading their mac-address off beacon.
from esp_wifi_repeater.
Related Issues (20)
- no internet connection or is there one?
- Need help at Flashing HOT 1
- Updated UI - Code HOT 2
- How To Connecte A Wifi Which Has Space HOT 2
- Setting the default output status of GPIOs HOT 2
- docker-container Permission denied: '/dev/ttyUSB0'
- Automesh startet nicht nach Stromausfall HOT 2
- To many password characters for mqtt password?
- esp8266 stuck in wifi3 802.11g
- Clearify the README.md HOT 2
- Can not use "set mqtt_command_topic" ower MQTT.
- WiFi
- After Flash Wemos mini D1 => no Accespoint found HOT 4
- Login with username and password
- Is there a non-NAT version of the extender? HOT 1
- ARIF
- No AccessPoint after Flashing and rebooting on ESP-01.
- Support for W5500
- High amount of NTP requests - How to set date / time ? HOT 2
- continiously disonnect reconnect / status_led wrong ? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from esp_wifi_repeater.