espressif / arduino-esp32

Arduino core for the ESP32
GNU Lesser General Public License v2.1
13.31k stars 7.36k forks source link

ESP32-C6 support #7713

Closed probonopd closed 3 months ago

probonopd commented 1 year ago

Related area

ESP32-C6

Hardware specification

Support for ESP32-C6

Is your feature request related to a problem?

ESP32-C6 is not supported yet

Describe the solution you'd like

Support for ESP32-C6

Describe alternatives you've considered

No response

Additional context

No response

I have checked existing list of Feature requests and the Contribution Guide

TD-er commented 11 months ago

So installing it to something like C:\A\ (shortest path possible) could be a work-around?

Or is it a problem where the command line of some commands gets too long? (including all paths needed for the command line)

me-no-dev commented 11 months ago

It's the path to the header that get's too long. GCC seems to limit it to maximum 200 symbols (including the drive). This is how the path looks: c:/users/username/appdata/local/arduino15/packages/esp32/tools/riscv32-esp-elf-gcc/esp-12.2.0_20230208/riscv32-esp-elf/include/c++/12.2.0/riscv32-esp-elf/rv32imc_zicsr_zifencei/ilp32/no-rtti/bits/c++allocator.h

TD-er commented 11 months ago

I do see a lot of "riscv32-esp-elf" being used in the path. Isn't that a bit too verbose (and obvious enough) ? Also "rv32" is being used, so this suggests it can be shortened without loosing its meaning.

TD-er commented 11 months ago

By the way, not sure if it is a limit of GCC. I think it might be a limit of the (Windows) shell environment of 255 bytes. If I remember correctly there was a work-around for this as there have been several of these limits in the past. The next one being 8k (not sure if 8k Unicode chars or 8k bytes)

me-no-dev commented 11 months ago

this is the structure of the toolchain. There are reasons for it and we do not control it, nor can alter it. We control only riscv32-esp-elf-gcc/esp-12.2.0_20230208 which is the package name and version. We can shorten it slightly, but that would not help for longer usernames... we will see how we will solve this.

me-no-dev commented 11 months ago

By the way, not sure if it is a limit of GCC.

It is. Windows supports longer paths than 200 symbols. You can access the files otherwise. Only GCC does not see them.

TD-er commented 11 months ago

I know Windows does support it, but some shell environments do have different limits. Not sure if this differs between cmd and PowerShell , but that would be an easy fix if these actually differ here.

omerk commented 11 months ago

As expected, 3.0.0-alpha1 with Arduino IDE 2.2.1 on Windows fails to compile:

In file included from c:\users\omerk\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\esp-12.2.0_20230208\riscv32-esp-elf\include\c++\12.2.0\stdlib.h:36,
                 from C:\Users\omerk\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-f0437b945f/esp32c6/include/newlib/platform_include/assert.h:13,
                 from c:\users\omerk\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\esp-12.2.0_20230208\riscv32-esp-elf\sys-include\sys\reent.h:503,
                 from C:\Users\omerk\AppData\Local\Arduino15\packages\esp32\tools\esp32-arduino-libs\idf-release_v5.1-f0437b945f/esp32c6/include/newlib/platform_include/sys/reent.h:9,
                 from c:\users\omerk\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\esp-12.2.0_20230208\riscv32-esp-elf\sys-include\stdio.h:60,
                 from C:\Users\omerk\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0-alpha1\cores\esp32/Arduino.h:27,
                 from C:\Users\omerk\AppData\Local\Temp\arduino\sketches\9EA17A2B30510F72480E2CA2A9127035\sketch\Blink.ino.cpp:1:
c:\users\omerk\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\esp-12.2.0_20230208\riscv32-esp-elf\include\c++\12.2.0\cstdlib:41:10: fatal error: bits/c++config.h: No such file or directory
   41 | #include <bits/c++config.h>
      |          ^~~~~~~~~~~~~~~~~~
compilation terminated.

exit status 1

Compilation error: exit status 1

Using arduino-cli inside WSL (Ubuntu 20.04) works just fine though:

$ arduino-cli compile --fqbn esp32:esp32:esp32c6 --build-path blink-c6/bin blink-c6
Sketch uses 181666 bytes (13%) of program storage space. Maximum is 1310720 bytes.
Global variables use 8928 bytes (2%) of dynamic memory, leaving 318752 bytes for local variables. Maximum is 327680 bytes.

Used platform Version      Path
esp32:esp32   3.0.0-alpha1 /home/omer/.arduino15/packages/esp32/hardware/esp32/3.0.0-alpha1

Following these instructions didn't fix the issue.

IsraelMek commented 11 months ago

@Hook654321 For the manual fix, I searched and copied the missing header file(c++config.h) to the folder indicated in the error message which is c:\users\user_name\appdata\local\arduino15\packages\esp32\tools\riscv32-esp-elf-gcc\esp-12.2.0_20230208\riscv32-esp-elf\include\c++\12.2.0\bits.

sfe-SparkFro commented 11 months ago

FWIW my workaround is to simply rename the folder esp-12.2.0_20230208 to esp-12.2.0. This shortens the path length just enough for GCC to find the needed files, no need to manually install anything anywhere. I understand this isn't a perfect solution for everyone (eg. those with long usernames), but might be helpful for folks wanting to use it right now.

Guytou11 commented 11 months ago

Hi, Is there any update on when Arduino will support the ESP32-C6 ? Is there perhaps a Zigbee library available that could be used on PlatformIO for the ESP32-C6 ?

thhkd commented 11 months ago

Hi, Is there any update on when Arduino will support the ESP32-C6 ? Is there perhaps a Zigbee library available that could be used on PlatformIO for the ESP32-C6 ?

ESP32-C6 y supported in arduino IDE using the board extension ESP32 by Espressif Systems version 3.0.0 alpha2. I hope it won't take long to have it available in PlatformIO aswel.

VojtechBartoska commented 11 months ago

Hi, yes, you can already used development branch in Arduino IDE for ESP32-C6 support, keep in mind that not everything is supported yet.

ITstreet1 commented 10 months ago

I have an official ESP32-C6 DevKitM and use the latest alpha release available on Arduino IDE boards manager. https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/esp32c6/esp32-c6-devkitm-1/index.html When connected over the UART port it shows up as a COM port When connected over the USB port it shows up as an ESP32H2 Dev Module. Obviously, it is not an H2.

I tried WiFi Scan. Works! I tried the Adafruit_Neopixel Simple example for testing the addressable LED on pin 8. Don't work! I get:

ESP-ROM:esp32c6-20220919 Build:Sep 19 2022 rst:0xc (SW_CPU),boot:0xc (SPI_FAST_FLASH_BOOT) Saved PC:0x4001975a SPIWP:0xee mode:DIO, clock div:2 load:0x4086c410,len:0xc24 load:0x4086e610,len:0x26f8 load:0x40875728,len:0x594 entry 0x4086c410 E (123) rmt(legacy): CONFLICT! driver_ng is not allowed to be used with the legacy driver

abort() was called at PC 0x42005dfd on core 0 Core 0 register dump: MEPC : 0x40802168 RA : 0x40806142 SP : 0x4087e100 GP : 0x4080c0d0
TP : 0x00000000 T0 : 0x37363534 T1 : 0x7271706f T2 : 0x33323130
S0/FP : 0x4087e12c S1 : 0x4087e12c A0 : 0x4087e138 A1 : 0x4087e11a
A2 : 0x00000000 A3 : 0x4087e165 A4 : 0x00000001 A5 : 0x4080e000
A6 : 0x00000000 A7 : 0x76757473 S2 : 0x42023000 S3 : 0x4080d734
S4 : 0x42020000 S5 : 0x42000000 S6 : 0x4080217a S7 : 0x00019590
S8 : 0x0000c4e0 S9 : 0x00000000 S10 : 0x00000000 S11 : 0x00000000
T3 : 0x6e6d6c6b T4 : 0x6a696867 T5 : 0x66656463 T6 : 0x62613938
MSTATUS : 0x00001881 MTVEC : 0x40800001 MCAUSE : 0x00000007 MTVAL : 0x00000000
MHARTID : 0x00000000

Stack memory: 4087e100: 0x00000000 0x00000000 0x4087e12c 0x4080a8d4 0x4080217a 0x42000000 0x42020030 0x4080c658 4087e120: 0x4087e12c 0x4080c674 0x4087e118 0x30303234 0x64666435 0x28010200 0x726f6261 0x20292874 4087e140: 0x20736177 0x6c6c6163 0x61206465 0x43502074 0x34783020 0x35303032 0x20646664 0x63206e6f 4087e160: 0x2065726f 0x00000030 0x42020000 0xabe96d90 0x20001090 0x4202a394 0x4202a398 0x42005e00 4087e180: 0x42023000 0x4202a394 0x4202a3a8 0x4200875e 0x00000006 0x00000000 0x00000000 0x4200a944 4087e1a0: 0x00000000 0x00000000 0x00700000 0x420093de 0x0000004d 0x0000000c 0x0000004d 0x42000000 4087e1c0: 0x0000004d 0x0000000c 0x0000004d 0x4080230c 0x00000000 0x00241900 0x00000000 0x02625a00 4087e1e0: 0x00032480 0x4004b05c 0x0637481c 0x47138000 0x8ff9fff6 0x27b7c81c 0x87936000 0x4b940007 4087e200: 0x43000000 0x4202c4ff 0x420195af 0x4086f80e 0x647d9b54 0x00020000 0x00010020 0x00020020 4087e220: 0x42020020 0x42000020 0x0000c4e0 0x00019590 0x00010000 0x00140000 0x00000000 0x40880000 4087e240: 0x000038e0 0x4004b05c 0x0000ffff 0xffffffff 0x00000000 0x4087e3a0 0x00000000 0x4086faba 4087e260: 0x2def1b7c 0x188e5179 0x00010000 0x00140000 0x00010000 0x200205e9 0x4080217a 0x000000ee 4087e280: 0x0000000d 0x00ffff00 0x01000000 0x42020020 0x0000c4e0 0x40800000 0x00003b10 0x42000020 4087e2a0: 0x00019590 0x40803b10 0x00007dbc 0x4080b8d0 0x00001100 0x00000000 0x00000000 0x00000000 4087e2c0: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 4087e2e0: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 4087e300: 0x00000000 0x00000000 0x00000000 0x00010020 0x0001c508 0x00020020 0x000395b8 0x0004137c 4087e320: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 4087e340: 0x00000000 0x00000000 0x00000000 0x000324a0 0xe724310e 0xc721bc64 0xdaf8fc49 0x63d44ead 4087e360: 0x647d9b54 0x600a5267 0xc43ced59 0x5706888f 0xffffffff 0x00000010 0x0000000a 0x40880000 4087e380: 0x00000000 0x000000cc 0x000038f0 0x4086c476 0xef906181 0xe760d1f1 0x00000000 0x00000000 4087e3a0: 0x0000e000 0x00002000 0x00000000 0x00000000 0x00000000 0x00000000 0x00010000 0x00140000 4087e3c0: 0x00150000 0x00140000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 4087e3e0: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 4087e400: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 4087e420: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x00000002 0x00000000 4087e440: 0x60002000 0x00000100 0x00000020 0x4001b1c0 0xc5b8d782 0x2163fb0a 0xdb9b1d92 0x00000000 4087e460: 0x60645907 0x00000000 0x00010000 0x200203e9 0x4086c410 0x40875728 0x00000594 0x000000ee 4087e480: 0x0000000d 0x00ffff00 0x01000000 0x420038f0 0x7533885e 0x8c5a9bca 0x8a57e948 0x675777fb 4087e4a0: 0xefe1f630 0x37537b19 0x8f3a9fa2 0x0a23ea69 0x1abef30c 0x00000000 0x00000000 0x00000000 4087e4c0: 0x00000000 0x00000000 0x00000000 0x00000000 0x00000000 0x4087e5f0 0x00000101 0x00000002 4087e4e0: 0x8c5a9bca 0x8a57e948 0x675777fb 0xefe1f630 0x37537b19 0x8f3a9fa2 0x0a23ea69 0x1abef30c

ELF file SHA256: 04c3aa2217fcd4f8

BlinkRGB example from the ESP32 package. Don't work!

E (43120) rmt: rmt_new_tx_channel(210): invalid interrupt priority:-1515870811

Beacon Scanner works!

Discover Connect example don't work!

Arduino: 1.8.19 (Windows 10), Board: "ESP32C6 Dev Module, Disabled, Disabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 160MHz (WiFi), QIO, 80MHz, 4MB (32Mb), 921600, None, Disabled"

DiscoverConnect:26:4: error: #error Serial Bluetooth not available or not enabled. It is only available for the ESP32 chip.

26 | #error Serial Bluetooth not available or not enabled. It is only available for the ESP32 chip.

  |    ^~~~~

exit status 1

error Serial Bluetooth not available or not enabled. It is only available for the ESP32 chip.

Any idea what is wrong?

lbernstone commented 10 months ago

Discover Connect example don't work!

Arduino: 1.8.19 (Windows 10), Board: "ESP32C6 Dev Module, Disabled, Disabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 160MHz (WiFi), QIO, 80MHz, 4MB (32Mb), 921600, None, Disabled" DiscoverConnect:26:4: error: #error Serial Bluetooth not available or not enabled. It is only available for the ESP32 chip. 26 | #error Serial Bluetooth not available or not enabled. It is only available for the ESP32 chip.

  |    ^~~~~

exit status 1

error Serial Bluetooth not available or not enabled. It is only available for the ESP32 chip.

Any idea what is wrong?

Bluetooth classic (as used in BT Serial) is only available on esp32, exactly as the message says.

ITstreet1 commented 10 months ago

Fine. What about neopixel?

lbernstone commented 10 months ago

RMT has been refactored. Try https://github.com/espressif/arduino-esp32/blob/master/libraries/ESP32/examples/RMT/RMTWriteNeoPixel/RMTWriteNeoPixel.ino

ITstreet1 commented 10 months ago

This example blinks the Neopixel in some sort of blue (turquoise, or so).

Bottom line, will the example be included in the package? Why the Adafruit_Neopixel examples does not work? Will it be also fixed?

lbernstone commented 10 months ago

Adafruit_Neopixel is directly using IDF. They will need to update their library to work with IDF 5.1. The examples located in https://github.com/espressif/arduino-esp32/tree/master/libraries/ESP32/examples/RMT are what will be included.

TD-er commented 10 months ago

[...] Why the Adafruit_Neopixel examples does not work? Will it be also fixed?

Right now I am looking into what is needed for the Adafruit Neopixel library to support the new RMT interface. Not sure how much effort this needs as I have never looked into the code of this library myself.

me-no-dev commented 10 months ago

RMT issue is a bug. Will be fixed in next release. Till then you can add on like 540 in esp32-hal-rmt.c the following code: rx_cfg.intr_priority = 0;

ITstreet1 commented 10 months ago

This remains:

When connected over the USB port it shows up as an ESP32H2 Dev Module.

When can be expected the main functionalities of C6 such as Zigbee, Thread, etc, to be available?

I have an H2, so I will try this one, too.

[...] Why the Adafruit_Neopixel examples does not work? Will it be also fixed?

Right now I am looking into what is needed for the Adafruit Neopixel library to support the new RMT interface. Not sure how much effort this needs as I have never looked into the code of this library myself.

I have updated lib, but it is not working

TD-er commented 10 months ago

RMT issue is a bug. Will be fixed in next release. Till then you can add on like 540 in esp32-hal-rmt.c the following code: rx_cfg.intr_priority = 0;

Could this also be the reason the C3 will boot-loop whenever I have any Adafruit NeoPixel library even included in a build with ESP-IDF 5.x? Even though this library clearly only should be using TX-mode... Or do you mean adding tx_cfg.intr_priority = 0; around line 516?

Jason2866 commented 10 months ago

Imho talking about 3rd party non working libs is off topic here. The right place to address is the github of the not working lib. A major release is expected to have breaking changes.

ITstreet1 commented 10 months ago

RMT issue is a bug. Will be fixed in next release. Till then you can add on like 540 in esp32-hal-rmt.c the following code: rx_cfg.intr_priority = 0;

With adding this line on 540 I got the same as before. By adding it on a line 516, I get this:

Arduino: 1.8.19 (Windows 10), Board: "ESP32C6 Dev Module, Disabled, Enabled, Default 4MB with spiffs (1.2MB APP/1.5MB SPIFFS), 160MHz (WiFi), QIO, 80MHz, 4MB (32Mb), 921600, None, Disabled"

C:\Users\dekip\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0-alpha2\cores\esp32\esp32-hal-rmt.c: In function 'rmtInit':

C:\Users\dekip\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0-alpha2\cores\esp32\esp32-hal-rmt.c:516:9: error: 'rx_cfg' undeclared (first use in this function); did you mean 'tx_cfg'?

516 | rx_cfg.intr_priority = 0;

  |         ^~~~~~

  |         tx_cfg

C:\Users\dekip\AppData\Local\Arduino15\packages\esp32\hardware\esp32\3.0.0-alpha2\cores\esp32\esp32-hal-rmt.c:516:9: note: each undeclared identifier is reported only once for each function it appears in

exit status 1

Error compiling for board ESP32C6 Dev Module.

This report would have more information with "Show verbose output during compilation" option enabled in File -> Preferences.

@Jason2866 If the reason the lib doesn't work is bugs in the C6 support package that should be fixed as @TD-er mentioned, then this is not off-topic. https://github.com/espressif/arduino-esp32/issues/7713#issuecomment-1774221708

me-no-dev commented 10 months ago

@ITstreet1 this: https://github.com/espressif/arduino-esp32/commit/730d827553cf3ae357eb62a3b66f97b13a255177

ITstreet1 commented 10 months ago

Yes. On this exact place, I still get this text/number wall from above.

Jason2866 commented 10 months ago

It is an Adafruit Neopixel Lib issue. RMT is working well with an Arduino 3.0.0 adopted version of Makuna Neopixelbus lib. Tested and running with ESP32, ESP32-S2, ESP32-S3, ESP32-C3 and ESP32-C6.

ITstreet1 commented 10 months ago

https://github.com/espressif/arduino-esp32/issues/7713#issuecomment-1774174954 This works too, I believe. My point is about: https://github.com/espressif/arduino-esp32/issues/7713#issuecomment-1774221708

I believe you suggest me to check the Adafruit GitHub repo? Or to wait for you to fix the bug, if there is a bug after all?

Jason2866 commented 10 months ago

Yes, the example from espressif is working too. I won't fix Adafruit Neopixel, since i don't use. So the way is open an issue in Github of Adafruit Neopixel.

ITstreet1 commented 10 months ago

You can fix this though:

When connected over the UART port it shows up as a COM port When connected over the USB port it shows up as an ESP32H2 Dev Module. Obviously, it is not an H2.

Besides, what are the expectations about Zigbee, Thread, etc? If there are any. :)

Jason2866 commented 10 months ago

This is as it should be

When connected over the UART port it shows up as a COM port


When connected over the USB port it shows up as an ESP32H2 Dev Module. Obviously, it is not an H2.

Can't be fixed either the H2 or the C6 is shown wrong. The have the same PID VID no indication to check what device is really connected.

VojtechBartoska commented 10 months ago

Neopixel library is not supporting our core (latest IDF yet), here is result from out Library testing. https://github.com/espressif/arduino-esp32/blob/gh-pages/LIBRARIES_TEST.md

VojtechBartoska commented 10 months ago

You can fix this though:

When connected over the UART port it shows up as a COM port When connected over the USB port it shows up as an ESP32H2 Dev Module. Obviously, it is not an H2.

Besides, what are the expectations about Zigbee, Thread, etc? If there are any. :)

Hello, we did initial investigation for supporting those protocols but did not find a proper implementation way. It is not going to be part of 3.0.0, if applicable, we will add it later.

MingyaoLiu commented 10 months ago

I can build and upload to ESP32-C6 WROOM on thhe 3.0.0-alpha2. However I can't see the serial monitor. If I change the board from "ESP32C6 Dev Module" to "Spark Fun ESP32C6 wiic Pocket", I can build and upload, and see Serial print out. I also tried building a simple serial print in ESP-IDF in platformio, it also works.

Anyone can point me to how to fix this serial issue? Is there something I can change in board defination to fix this?

Thx.

MingyaoLiu commented 10 months ago

I can build and upload to ESP32-C6 WROOM on thhe 3.0.0-alpha2. However I can't see the serial monitor. If I change the board from "ESP32C6 Dev Module" to "Spark Fun ESP32C6 wiic Pocket", I can build and upload, and see Serial print out. I also tried building a simple serial print in ESP-IDF in platformio, it also works.

Anyone can point me to how to fix this serial issue? Is there something I can change in board defination to fix this?

Thx.

ok I fixed it, forgot to disable CDC.

rdahlin commented 10 months ago

I have tested the alpha for Arduino IDE and so far it has worked fine. I have tried to get neopixel to work but understand that it's not possible yet and now I don't get any output in the console when connected to the usb port (not UART) if I don't nave CDC enabled. When I do so the log output works again but when I do a BLE "characteristic->notify()" I get "-> E (139991) rmt: rmt_new_tx_channel(211): invalid interrupt priority:1107301138" in the log. I have not got this before. I have printed out debug values of that I just set for the characteristic and before that and nothing else has been printed.

If i disable CDC i get "-> controller lib commit: [3ff2145]" instead.

Am I doning something wrong here or is it some bugs that causes this?

me-no-dev commented 10 months ago

@rdahlin this has already been fixed in master, Will be part of next release.

mightChamp commented 10 months ago

Has anyone tested SPI communication in ESP32-C6 in Alpha2 release ? SPI fails at spiStartBus() in SPI.cpp file, as spi_num >= SPI_COUNT here SPI_COUNT is set to 1 for ESP32-C6, and default HSPI value is 1, So SPI always fails to init.

P-R-O-C-H-Y commented 10 months ago

@mightChamp ESP32C6 have only one general purpose SPI and it is FSPI. Thanks for pointing out that the define for HSPI exists there for C6.

rdahlin commented 10 months ago

@rdahlin this has already been fixed in master, Will be part of next release.

@me-no-dev : ETA?

me-no-dev commented 10 months ago

soon. maybe week or so.

mightChamp commented 10 months ago

@mightChamp ESP32C6 have only one general purpose SPI and it is FSPI. Thanks for pointing out that the define for HSPI exists there for C6.

Is FSPI used by FLASH in ESP32-C6?

elgerg commented 10 months ago

You can fix this though:

When connected over the UART port it shows up as a COM port When connected over the USB port it shows up as an ESP32H2 Dev Module. Obviously, it is not an H2.

Besides, what are the expectations about Zigbee, Thread, etc? If there are any. :)

Hello, we did initial investigation for supporting those protocols but did not find a proper implementation way. It is not going to be part of 3.0.0, if applicable, we will add it later.

Oh thats a real shame. I would really like to use the H2 and C6 with Zigbee

P-R-O-C-H-Y commented 10 months ago

@elgerg I am currently working on a solution to add a proper support for Zigbee protocol. You can follow this open ticket #8807, which is being updated.

elgerg commented 10 months ago

@elgerg I am currently working on a solution to add a proper support for Zigbee protocol. You can follow this open ticket #8807, which is being updated.

That's great news! Thanks

dkull commented 10 months ago

https://blog.espressif.com/announcing-the-arduino-esp32-core-version-3-0-0-3bf9f24e20d4 Beautiful!

ITstreet1 commented 10 months ago

Ok, I tried a simple I2C scanner to scan a connected Oled screen. No I2C devices were found!

According to the diagram, the SDA and SCL pins are 6 and 7 of the pinout. https://docs.espressif.com/projects/espressif-esp-dev-kits/en/latest/_images/esp32-c6-devkitm-1-pin-layout.png

Is this an issue, or I made a mistake? From what I see on the table with the support overview, there is nothing for I2C.

P-R-O-C-H-Y commented 10 months ago

Hi @ITstreet1, in the pins_arduino.h file for ESP32-C6 the default pins for I2C are:

static const uint8_t SDA = 23;
static const uint8_t SCL = 22;

Can you try it please using those pins? :) Or you can use your own pins by adding them as inputs to the begin function:

#define I2C_SDA 6
#define I2C_SCL 7

Wire.begin(I2C_SDA, I2C_SCL);
ITstreet1 commented 10 months ago

Tried both. Nothing. Tried the BME280. Nothing I can upload picture if you wish.