Comments (9)
I need UPnP for ESP-IDF, so I'll start working on a port for that framework instead of Arduino (not for ESP-AT though)
from tinyupnp.
I need UPnP for ESP-IDF, so I'll start working on a port for that framework instead of Arduino (not for ESP-AT though)
Sounds good. I droped ESP-AT, I'm using IDF. I'm really looking forward to this!
from tinyupnp.
Are you referring to this repo?
Can you be more specific?
I mean if you have the Arduino IDE, it is just a simple include to use this package, what is the extra benefit of having this directly supported in ESP-IDF?
from tinyupnp.
I'm using https://github.com/espressif/esp-at with custum command set and custom knowledge. I compile it under Linux. I would like to use it like esp_http_server or other as a component. No Arduino ide. I don't like it
from tinyupnp.
Please create a pull request for the benefit of others and I will help merging, thank you
from tinyupnp.
Please create a pull request for the benefit of others and I will help merging, thank you
I will. Note that I'm trying to make as few changes possible to your code, but it's pretty hard due to the differences in libs and classes between ESP-IDF and Arduino. ESP-IDF requires a completely different config for compilation, based on cmake. I feel it's pretty much a distinct fork from your project, but I can use your code as a base, and will reference it as such.
from tinyupnp.
I decided to create a complete c++ component to facilitate the use of Wifi, TCP and UDP client/servers, and I will include UPnP in it. I realized there's too much to port to ESP-IDF and each thing I'm porting requires its own class, so a global component will be much more useful and easier to maintain.
from tinyupnp.
@peergum can you place a link to where you're doing this, please?
from tinyupnp.
@ofekp I committed the initial version of a component two days ago here and referenced your work here as the base for the UPnP part. I had to do many changes, due to the absence of several classes in the IDF framework (like String). I also had to write TCPClient and UDPClient classes for it to work. Mostly the main UPnP logic is yours, and it works, but it's quite far from your Arduino version. There are many parts I would have done slightly differently from you, but my goal here was mostly to get something running on IDF quickly. I hope it helps people who do not use the Arduino framework. Note that it is based on latest version of the ESP-IDF framework, v5.0 (just officially released 2 days ago)
from tinyupnp.
Related Issues (20)
- TinyUPNP library makes my esp8266 crash and reset HOT 18
- How to configure diferent internal and external port? HOT 8
- Gateway info is not valid HOT 98
- Stack overflow while reading xml HOT 4
- Use WiFi Library Events
- Option for both local and external port (with code) HOT 3
- Gateway info is not valid HOT 3
- Invalid router info HOT 10
- Implementation for knowing what all services are present on the network HOT 12
- ERROR: Invalid router info, cannot continue HOT 3
- Cannot detect NOTIFY packets HOT 3
- Timeout expired while waiting for the gateway router to respond to M-SEARCH message HOT 9
- ESP32 arduino with Ethernet. HOT 19
- UPnP Errors 714 and 718 HOT 6
- TCP timeout while retrieving port mappings (ERROR: While updating UPnP port mapping. Failed with error code [5]) HOT 2
- Device is not discovered by UPnP Browser app. HOT 2
- Add an option to provide the description XML file to make setting the rules faster
- Error in UPnP ver. 3.1.4 HOT 6
- Esp32cam UPnP and EasyDDNS to No-Ip no connection 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 tinyupnp.