Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for SoftAP interface for ESP32 #1438

Merged
merged 10 commits into from
Aug 30, 2019
Merged

Add support for SoftAP interface for ESP32 #1438

merged 10 commits into from
Aug 30, 2019

Conversation

AdrianSoundy
Copy link
Member

Description

This PR adds the interfaces to manage the Soft Access Point on the ESP32

  • Added new configuration block for Soft AP
  • Added extra flags to control the wireless interfaces better
    -- Enable, AutoStart, HiddenSSID, SmartConfig
  • Adds a new event when a Station connects or disconnects from AP

Due to configuration block change for wireless configuration may require change in VS extension

Motivation and Context

How Has This Been Tested?

Tested with a sample application that will be added to samples

Types of changes

  • [] Improvement (non-breaking change that improves a feature, code or algorithm)
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.
  • I have read the CONTRIBUTING document.
  • I have added tests to cover my changes.
  • All new and existing tests passed.

Signed-off-by: adriansoundy adriansoundy@gmail.com

@nfbot
Copy link
Member

nfbot commented Aug 27, 2019

Hi @AdrianSoundy,

I'm nanoFramework bot.
Thank you for your contribution!

A human will be reviewing it shortly. 😉

@AdrianSoundy AdrianSoundy added Series: ESP32 Everything related specifically with ESP32 series targets Area: Interpreter Everything related with the interpreter, execution engine and such Status: under review labels Aug 27, 2019
Copy link
Member

@josesimoes josesimoes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Submitted PR to your branch resulting from code review.

@josesimoes
Copy link
Member

Considering that:

  • Wi-Fi AP is specific of Wi-Fi capable targets (currently ESP32 and TI CC3220)
  • The need for Wi-Fi AP is somewhat niche

I'm thinking that adding support for Wi-Fi AP and respective configuration, regardless of the feature is used or not, adds to the image size. Which can become a problem as we keep adding stuff.
Also, because of this being made part of general Networking, the targets which are Ethernet connected only, are also taking with the Wi-Fi AP stuff.

Suggest that:

  1. Make the Wi-Fi AP bits dependent of a build option.
  2. The image for ESP32 includes this feature as default.
  3. The VS extension is updated to properly manage the configuration blocks depending on the target having support for this or not.

@AdrianSoundy
Copy link
Member Author

AdrianSoundy commented Aug 28, 2019

The Wireless AP is really useful for the initial configuration of a device in combination of a small web server to handle the config requests. I am hoping to include this as part of the sample project.

I agree we need to keep the image small and don't have extra things that are not required by a platform and having a configuration option would be the best way.

I thought may be later we can split the Wireless AP off into a separate managed code assembly to make that easier and reduce code for Ethernet only devices.

@josesimoes
Copy link
Member

Understood and that makes perfect sense. Let's have this merged and the work to split it queued up.

Copy link
Member

@josesimoes josesimoes left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

AdrianSoundy and others added 10 commits August 30, 2019 09:54
latest changes
Remove backup files
- Mostly layout fixes to comply with coding style.

*** WIP still missing the changes that will come up from the code review in the managed class lib ***

Signed-off-by: José Simões <jose.simoes@eclo.solutions>
- Update classes accordingly.
- Following nanoframework/System.Net#91.

Signed-off-by: José Simões <jose.simoes@eclo.solutions>
@josesimoes josesimoes changed the title Soft AP interface for ESP32 Add support for SoftAP interface for ESP32 Aug 30, 2019
@josesimoes josesimoes merged commit 1e43a45 into nanoframework:develop Aug 30, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area: Interpreter Everything related with the interpreter, execution engine and such Series: ESP32 Everything related specifically with ESP32 series targets Status: merge OK
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add Support for SoftAP on ESP32
3 participants