Skip to content

Add I2C and SPI pin definitions to wt32-eth01 pins configuration #7237

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

Merged
merged 4 commits into from
Nov 23, 2022

Conversation

sebastianbergner
Copy link
Contributor

Added missing pin definitions in pins_arduino.h based on testing using a RTC (I2C) and SD card reader (SPI).

Description of Change

Please describe your proposed Pull Request and it's impact.
Has been added to circumvent errors when compiling code that uses e.g. the Wire library.

Tests scenarios

Please describe on what Hardware and Software combinations you have tested this Pull Request and how.
Tested using the generic wt32-eth board. I2C (SDA and SCL) using an RV3028 real time clock and SPI using an micro sd card reader (SS, MOSI, MISO, SCK).

Related links

Please provide links to related issue, PRs etc.
Should close issue #7160

Added missing pins based on testing using a RTC (I2C) and SD card reader (SPI).
@CLAassistant
Copy link

CLAassistant commented Sep 9, 2022

CLA assistant check
All committers have signed the CLA.

@P-R-O-C-H-Y
Copy link
Member

Hi @sebastianbergner, can you please take a look on PR #7161 ? There are already pending missing SPI + I2C pins for this variant. If you agree/disagree with pins in that PR, let me know there. Thanks

@me-no-dev me-no-dev added the Resolution: Awaiting response Waiting for response of author label Sep 14, 2022
@sebastianbergner
Copy link
Contributor Author

Hey, sorry for the late reply. I've hadn't had much time to try and verify the pinouts.
Today I've tested the configuration from PR #7161 which worked for SPI but didn't for I2C.
Then I've retested my configuration with SDA on pin 33 (485_EN pin) and SCL on pin 32 (CFG pin) which worked with the previously mentioned RTC and an BME680 sensor.
I think it makes sense to use the default configuration for SPI and replace the I2C pin config which is currently on the master branch.
Hope this helps

@VojtechBartoska
Copy link
Contributor

@P-R-O-C-H-Y what is the status of this PR please?

@P-R-O-C-H-Y P-R-O-C-H-Y self-assigned this Nov 16, 2022
Copy link
Member

@P-R-O-C-H-Y P-R-O-C-H-Y left a comment

Choose a reason for hiding this comment

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

PTAL

@P-R-O-C-H-Y P-R-O-C-H-Y removed the Resolution: Awaiting response Waiting for response of author label Nov 22, 2022
@P-R-O-C-H-Y P-R-O-C-H-Y merged commit 93a7f4e into espressif:master Nov 23, 2022
vortigont pushed a commit to vortigont/arduino-esp32 that referenced this pull request Dec 11, 2022
…ressif#7237)

* Add I2C and SPI pin definitions to wt32-eth01 pins

Added missing pins based on testing using a RTC (I2C) and SD card reader (SPI).

* Remove define macros

Co-authored-by: Rodrigo Garcia <[email protected]>
Co-authored-by: Jan Procházka <[email protected]>
Jason2866 added a commit to tasmota/arduino-esp32 that referenced this pull request Dec 17, 2022
* LEDC - AnalogWrite new API + ledcAttachPin duty fix (espressif#7346)

* Add enableScenes API in Rainmaker (espressif#7436)

* Added enableScenes API

* Added enableScenes API documentation

* Added enableScenes API to example

Co-authored-by: Jan Procházka <[email protected]>

* How to use USBHID classes with ESP32-S2 and ESP32-S3 (espressif#7214)

These instructions are based on esp32-arduino-lib-builder's build process, including https://github.com/espressif/esp32-arduino-lib-builder/blob/master/tools/update-components.sh which explains how to clone tinyusb.

* Add I2C and SPI pin definitions to wt32-eth01 pins configuration (espressif#7237)

* Add I2C and SPI pin definitions to wt32-eth01 pins

Added missing pins based on testing using a RTC (I2C) and SD card reader (SPI).

* Remove define macros

Co-authored-by: Rodrigo Garcia <[email protected]>
Co-authored-by: Jan Procházka <[email protected]>

* Changed Rainmaker WiFi/Factory reset time. (espressif#7514)

* Ipv6 support v2

* Update header

* Update IPAddress implementation to support V6

* Fix cut and paste error

* Explicit not equals

* Explicitly reference StreamString

* Remove != test (it is causing a conflict)

* IPv6 support: Add proper link-local and SLAAC in STA and WifiMulti

This patch partially depends on:
espressif/esp32-arduino-lib-builder#67
Without this patch we will get only Link local IPv6 (still useful for MDNS and etc).
With patch we will get also global IPv6 address by SLAAC.
By default IPv6 disabled, until it is properly tested.

Tested on BasicHttpClient by adding:
wifiMulti.IPv6(true);
before: wifiMulti.addAP() call

Enabling Core Debug Level: verbose
If IP6 obtained, in logs will be visible:
[  8028][V][WiFiGeneric.cpp:380] _arduino_event_cb(): IF[0] Got IPv6: IP Index: 0, Zone: 2, fe80:0000:0000:0000:xxxx:xxxx:xxxx:xxxx
[  8028][D][WiFiGeneric.cpp:852] _eventCallback(): Arduino Event: 8 - STA_GOT_IP6
[ 11028][V][WiFiGeneric.cpp:380] _arduino_event_cb(): IF[0] Got IPv6: IP Index: 1, Zone: 0, 2a0d:yyyy:0000:4000:yyyy:yyyy:yyyy:yyyy
[ 11028][D][WiFiGeneric.cpp:852] _eventCallback(): Arduino Event: 8 - STA_GOT_IP6

This is linked to: espressif#6242

Signed-off-by: Denys Fedoryshchenko <[email protected]>

* Add IPv6 support to WiFiServer

One of most useful features of IPv6 to have arduino accessible from internet,
without any port forward and etc.
Change is fairly trivial and backward compatible with old code, tested
with WiFiTelnetToSerial and AsyncUDPServer.

Signed-off-by: Denys Fedoryshchenko <[email protected]>

* WiFiClient::remoteIP and remoteIP6 IPv6 support

For RemoteIP and AF_INET6 socket i added support ip6 to ip4 mapping,
so .remoteIP will return IPv4 address on dual stack socket, if available.

Scenarios tested:
WiFiTelnetToSerial, wifiMulti.IPv6(true), connect both from IPv4 and IPv6
WiFiTelnetToSerial, wifiMulti.IPv6(true); but set to listen on IPv4 only.
WiFiTelnetToSerial, IPv6 disabled, with or without bind to specific IP4.
AsyncUDPServer, without IPv6 support.

Signed-off-by: Denys Fedoryshchenko <[email protected]>

* Add WiFiTelnetToSerialIPv6 example

To demonstrate new abilities of dual stack WiFiServer and
remoteIP6 we add this example.

Signed-off-by: Denys Fedoryshchenko <[email protected]>

* Add IPv6 to WifiClient (client)

We need to be able to connect to remote servers over IPv6 too,
and thats need different approach in DNS queries and connect().
As i'm trying to keep maximum compatibility, i introduce different
behaviour if IPv6 is enabled, and backward compatible (as much as possible),
if IPv6 is not enabled.
IN future when IPv6 functions are tested well enough, it can be simplified.

This implementation tested on esp32 in following scenarios using BasicHttpClient:

IPv6 true:
IPv6 only website (caveat 1) - OK
Website with A and AAAA is present (caveat 1) - OK
IPv4 only website - OK

IPv6 not enabled:
IPv6 only website - wont open (expected)
Website with A and AAAA is present - OK, opens over IPv4
IPv4 only website - OK

caveat 1 - sometimes SLAAC is slower than DHCPv4, so we might have
status WL_CONNECTED, but IPv6 global scope is not ready yet.

Signed-off-by: Denys Fedoryshchenko <[email protected]>

* WiFiTelnetToSerialIPv6.ino: fix obsolete remoteIP6 call to remoteIP

Example contained API from previous IPv6 implementation, fixing it.

Signed-off-by: Denys Fedoryshchenko <[email protected]>

Signed-off-by: Denys Fedoryshchenko <[email protected]>
Co-authored-by: Sly Gryphon <[email protected]>
Co-authored-by: Denys Fedoryshchenko <[email protected]>

* Fix toString() for IPv4

* Full support for IPv6

* Full support for IPv6

* Fixed ambiguous definitions

* Fix sizeof

* Simplify initilization and remove memset

* Enable support for IPv6 in UDP

* Update PlatformIO build script PR 7579

* Fix IPv6 size

Signed-off-by: Denys Fedoryshchenko <[email protected]>
Co-authored-by: Jan Procházka <[email protected]>
Co-authored-by: Sanket Wadekar <[email protected]>
Co-authored-by: RefactorFactory <[email protected]>
Co-authored-by: Sebastian Bergner <[email protected]>
Co-authored-by: Rodrigo Garcia <[email protected]>
Co-authored-by: Sly Gryphon <[email protected]>
Co-authored-by: Denys Fedoryshchenko <[email protected]>
Co-authored-by: s-hadinger <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants