ESP32-C5-WIFI6-KIT-N16R8 Çift Bant 2.4/5 GHz WiFi 6 Geliştirme Kartı - Waveshare
ESP32-C5-WIFI6-KIT-N16R8 Çift Bant 2.4/5 GHz WiFi 6 Geliştirme Kartı - Waveshare SKU 32577
Waveshare ESP32-C5-WIFI6-KIT-N16R8, hem 2,4 GHz hem de 5 GHz ağlarda çalışabilen WiFi 6 destekli ESP32-C5 tabanlı gelişmiş bir IoT geliştirme kartıdır. Kart; çift bant 802.11ax WiFi, Bluetooth Low Energy ve IEEE 802.15.4 radyosunu aynı platformda birleştirerek WiFi sensör düğümleri, düşük gecikmeli kablosuz kontrol sistemleri, Zigbee/Thread cihazları, Matter uygulamaları ve çok protokollü IoT ağ geçitleri geliştirmek için güçlü bir temel sunar.
Kartın merkezindeki ESP32-C5-WROOM-1-N16R8 modülü; 240 MHz'e kadar çalışan yüksek performanslı RISC-V işlemciyi, düşük güç görevleri için ayrı LP RISC-V çekirdeğini, 16 MB Flash ve 8 MB PSRAM ile birleştirir. 5 GHz desteği, yoğun 2,4 GHz ortamlarında daha düşük parazit ve daha düşük gecikme sağlayabilecek ağlara bağlanma olanağı verir. 2,4 GHz desteği ise uzun kapsama, eski modemlerle uyumluluk ve Zigbee/Thread gibi 802.15.4 uygulamalarının aynı kartta geliştirilmesini sağlar.

Öne Çıkan Özellikler
- SKU 32577, ESP32-C5-WIFI6-KIT-N16R8 kesin ürün sürümü
- 2,4 GHz ve 5 GHz çift bant WiFi 6, IEEE 802.11ax
- 802.11a/b/g/n/ac ile geriye dönük ağ uyumluluğu
- 240 MHz'e kadar 32-bit RISC-V yüksek performans işlemcisi
- 48 MHz'e kadar düşük güçlü LP RISC-V yardımcı işlemci
- 16 MB Quad SPI Flash ve 8 MB Quad SPI PSRAM
- 384 KB HP SRAM, 16 KB LP SRAM ve 320 KB ROM
- Bluetooth Low Energy, uzun menzil coded PHY ve 2 Mbps PHY desteği
- IEEE 802.15.4, Zigbee 3.0 ve Thread 1.4 desteği
- WiFi 6 OFDMA, MU-MIMO, BSS Coloring ve Target Wake Time özellikleri
- Kart üstü çift bant PCB anten; harici anten konnektörü bulunmaz
- Yerel USB Serial/JTAG ve CH343P USB-UART için iki ayrı USB Type-C portu
- 3,7 V tek hücre Li-ion/Li-Po pil konnektörü ve şarj yönetimi
- Kart üstü adreslenebilir RGB LED, RESET ve BOOT butonları
- GPIO, ADC, UART, I2C, SPI, I2S, PWM, RMT, CAN FD ve USB Serial/JTAG
- ESP-IDF, Arduino IDE ve PlatformIO ile geliştirme
Teknik Özellikler
| Ürün | Waveshare ESP32-C5-WIFI6-KIT-N16R8 |
| SKU | 32577 |
| Modül | ESP32-C5-WROOM-1-N16R8 |
| Anten | Kart üstü çift bant PCB anten |
| HP işlemci | Tek çekirdekli 32-bit RISC-V RV32IMAC, 240 MHz'e kadar |
| LP işlemci | 32-bit düşük güç RISC-V, 48 MHz'e kadar |
| ROM | 320 KB |
| HP SRAM | 384 KB |
| LP SRAM | 16 KB |
| Flash | 16 MB Quad SPI |
| PSRAM | 8 MB Quad SPI |
| WiFi | 2,4 ve 5 GHz, 1T1R, WiFi 6 IEEE 802.11ax |
| Uyumlu WiFi standartları | IEEE 802.11a/b/g/n/ac/ax |
| WiFi veri hızı | 150 Mbps'ye kadar PHY veri hızı |
| WiFi çalışma frekansı | 2412-2484 MHz ve 5180-5885 MHz; bölgesel kanal kuralları geçerlidir |
| Bluetooth | Bluetooth Low Energy; Bluetooth Classic bulunmaz |
| 802.15.4 | IEEE 802.15.4-2015, 2,4 GHz OQPSK, 250 Kbps |
| Zigbee / Thread | Zigbee 3.0 ve Thread 1.4 |
| ADC | 12-bit SAR ADC, çip düzeyinde 6 kanala kadar |
| Dijital çevre birimleri | UART, SPI, I2C, LP I2C, I2S, RMT, PCNT, PARLIO, LED PWM, MCPWM |
| CAN | İki CAN FD denetleyicisi; harici transceiver gerekir |
| USB | 2 x USB Type-C: yerel USB Serial/JTAG ve CH343P USB-UART |
| Pil bağlantısı | 3,7 V tek hücre Li-ion/Li-Po, MX1.25 2 pin |
| Pil şarj yönetimi | ETA6098 tabanlı kart üstü şarj/güç devresi |
| RGB LED | Adreslenebilir RGB, GPIO27 |
| Kart boyutu | 61,40 x 25,40 mm |
| Montaj delikleri | 4 adet, 2,00 mm çap |
| Header durumu | SKU 32577 üzerinde pin header lehimli değildir |
| Geliştirme ortamı | ESP-IDF, Arduino IDE, PlatformIO |
Bluetooth sürüm notu: Waveshare ürün dokümanı kartı Bluetooth 5 (LE) olarak tanıtır. Espressif'in güncel ESP32-C5 ve ESP32-C5-WROOM-1 datasheet'lerinde radyo Bluetooth Core 6.0 sertifikalı olarak listelenir. Yazılımda kullanılabilecek özellikler seçilen ESP-IDF/Arduino sürümüne ve etkin Bluetooth yığınına bağlıdır; Bluetooth Classic desteklenmez.
SKU 32577 ve Diğer Sürümler Arasındaki Fark
| SKU | Model | Temel fark |
|---|---|---|
| 32577 | N16R8 | 16 MB Flash, 8 MB PSRAM, dahili anten, headersız; bu ürün |
| 32470 | N16R8-M | 16 MB Flash, 8 MB PSRAM, dahili anten, header lehimli |
| 34454 | N32R8 | 32 MB Flash, dahili anten, headersız |
| 34241 | N32R8-M | 32 MB Flash, dahili anten, header lehimli |
| 34455 | N32R8-U | 32 MB Flash, harici çift bant anten bağlantısı, headersız |
| 34456 | N32R8-UM | 32 MB Flash, harici anten bağlantısı, header lehimli |
2,4 GHz ve 5 GHz Çift Bant Avantajı
| Konu | 2,4 GHz | 5 GHz |
|---|---|---|
| Kapsama | Duvarlardan geçiş ve uzak mesafe genellikle daha iyidir. | Aynı koşullarda daha kısa kapsama görülebilir. |
| Parazit | Bluetooth, Zigbee ve yoğun WiFi trafiğiyle paylaşılır. | Daha fazla kanal ve daha düşük 2,4 GHz paraziti sunabilir. |
| Uyumluluk | Eski modemler ve IoT ağlarıyla geniş uyumluluk. | 802.11a/n/ac/ax destekli erişim noktası gerekir. |
| Önerilen kullanım | Uzun menzilli sensör, ESP-NOW, Zigbee/Thread ile birlikte çalışma. | Düşük gecikmeli kontrol, yoğun ağ, yüksek veri trafiği ve kritik telemetri. |
Otomatik bant modunda ESP32-C5, aynı SSID'yi iki bantta gördüğünde sinyal seviyesi ve 5 GHz öncelik ayarına göre erişim noktası seçebilir. ESP-IDF varsayılan politika, 5 GHz sinyali 2,4 GHz sinyalinden belirli bir eşiğin altında kalmadığı sürece 5 GHz'i tercih edecek şekilde ayarlanabilir. Uygulama isterse yalnızca 2,4 GHz, yalnızca 5 GHz veya otomatik mod seçebilir.
WiFi 6 Özellikleri Ne Sağlar?
- OFDMA: Kanal kaynaklarını çok sayıda küçük IoT veri akışı arasında daha verimli paylaştırabilir.
- Downlink MU-MIMO: Uyumlu erişim noktasının birden fazla istemciye daha verimli veri göndermesine yardımcı olur.
- BSS Coloring: Yoğun WiFi ortamlarında komşu ağların trafiğini ayırt ederek kanal yeniden kullanımını iyileştirebilir.
- Target Wake Time: Uyumlu ağlarda cihazın planlı uyku/uyanma zamanlarıyla enerji tüketimini azaltmaya yardımcı olur.
- Beamformee: Uyumlu erişim noktasından gelen yönlendirilmiş sinyal avantajından yararlanabilir.
- WPA3 ve PMF: Güncel ağ güvenliği ve yönetim çerçevesi koruması sağlar.
WiFi 6 ibaresi her uygulamada 150 Mbps kullanıcı verisi alınacağı anlamına gelmez. PHY hızı; protokol yükü, kanal genişliği, sinyal seviyesi, anten yerleşimi, erişim noktası, şifreleme ve uygulama işlem yükünden etkilenir. ESP-IDF belgeleri gerçek TCP/UDP aktarımının PHY değerinden düşük olduğunu belirtir.
Kablosuz Protokollerin Birlikte Çalışması
WiFi, Bluetooth LE ve 802.15.4 aynı RF kaynaklarını paylaşır. ESP32-C5 bu protokoller arasında zaman bölüşümlü coexistence mekanizması uygular; bu nedenle üç protokol destekleniyor olsa da hepsi aynı anda tam kapasitede bağımsız radyo gibi davranmaz. Paket yoğunluğu, kanal seçimi, bağlantı aralığı ve görev öncelikleri toplam performansı etkiler.
Basit sensör, kontrol ve prototip uygulamalarında tek kart yaklaşımı büyük kolaylık sağlar. Sürekli yüksek hacimli WiFi trafiğiyle aynı anda kritik Zigbee/Thread ağ geçidi çalıştırılacak ürünlerde RF coexistence testleri yapılmalı; ticari sınır yönlendirici veya yoğun ağ geçidi tasarımında ayrı radyo/SoC mimarisi değerlendirilmelidir.

Kart Üzerindeki Donanımlar
| ESP32-C5-WROOM-1-N16R8 | MCU, 16 MB Flash, 8 MB PSRAM, RF devresi ve çift bant PCB anteni içerir. |
| USB Type-C - USB | ESP32-C5 yerel USB Serial/JTAG bağlantısı ve güç girişi. |
| USB Type-C - UART | CH343P üzerinden UART programlama, seri terminal ve güç girişi. |
| CH343P | USB-UART dönüştürücü; DTR/RTS ile otomatik yükleme devresini destekler. |
| DC/DC dönüştürücü | 5 V/pil güç yolundan kart için kararlı 3,3 V üretir. |
| ETA6098 güç yönetimi | Tek hücre pil şarjı ve güç yolu yönetimi. |
| MX1.25 pil soketi | 3,7 V tek hücre Li-ion/Li-Po bağlantısı. |
| RGB LED | GPIO27 tarafından sürülen kart üstü adreslenebilir LED. |
| RESET butonu | CHIP_PU/EN hattı üzerinden kartı yeniden başlatır. |
| BOOT butonu | GPIO28 boot strapping hattıyla manuel download moduna giriş sağlar. |
| Güç ve şarj LED'leri | USB/güç ve pil şarj durumunu görsel olarak bildirir. |
İki USB Type-C Portunun Farkı
| Port | Bağlantı | Kullanım |
|---|---|---|
| USB | ESP32-C5 yerel USB Serial/JTAG, GPIO13 D- ve GPIO14 D+ | Firmware yükleme, seri çıktı ve JTAG debug |
| UART | CH343P USB-UART, GPIO11 TX0 ve GPIO12 RX0 | Klasik COM port, otomatik boot ve seri monitör |
İlk kurulumda UART etiketli port pratik bir seçenektir; CH343P işletim sistemi tarafından COM/tty seri portu olarak görülür. Yerel USB portu ek dönüştürücü olmadan ESP32-C5'in USB Serial/JTAG denetleyicisini kullanır ve debug için daha doğrudan bağlantı sunar.
Yalnızca şarj amaçlı USB kablolar veri taşımaz. Port sık sık bağlantıyı kesiyorsa veri destekli kısa bir kablo ve yeterli 5 V sağlayan bilgisayar/USB adaptörü kullanılmalıdır. Waveshare FAQ'sı her iki portun kararlı çalışması için USB geriliminin yaklaşık 4,9 V üzerinde kalmasını önerir.
Pil Kullanımı ve Pil Gerilimi Ölçümü
Kart üzerindeki MX1.25 konnektör, nominal 3,7 V tek hücre Li-ion/Li-Po pil içindir. USB bağlandığında kart üstü ETA6098 tabanlı devre pili şarj eder ve güç yolunu yönetir. Çok hücreli pil paketi, 5 V pil grubu veya korumasız/uygunsuz kimyadaki pil doğrudan bağlanmamalıdır.
Şemada pil gerilimi 200 kohm ve 100 kohm direnç bölücü üzerinden GPIO6 / ADC1_CH5 hattına taşınır. Bu nedenle GPIO6 serbest genel amaçlı çıkış olarak değerlendirilmemeli; pil ölçümünde yaklaşık 3:1 bölme oranı hesaba katılmalıdır.

GPIO ve Pin Fonksiyonları
Kart iki tarafta 16'şar olmak üzere 32 bağlantı noktası sunar. Bunların arasında güç, GND, reset ve VBAT hatları da bulunur. ESP32-C5-WROOM-1 modülünün 22 GPIO'su kart kenarlarına çıkarılmıştır; ancak bazı GPIO'lar PSRAM, USB, UART, pil ölçümü veya RGB LED tarafından paylaşılır.
| Pin grubu | GPIO / işlev | Önemli not |
|---|---|---|
| ADC | GPIO1 CH0, GPIO2 CH1, GPIO3 CH2, GPIO4 CH3, GPIO5 CH4, GPIO6 CH5 | GPIO6 pil gerilimi ölçüm devresine bağlıdır. |
| I2C önerisi | SDA GPIO2, SCL GPIO3 | Pinout üzerinde LP I2C işlevleri de belirtilmiştir; yazılımla farklı pin atanabilir. |
| UART0 | TX GPIO11, RX GPIO12 | CH343P UART portuyla paylaşılır. |
| Yerel USB | D- GPIO13, D+ GPIO14 | USB Serial/JTAG açıkken normal GPIO olarak kullanılmamalıdır. |
| RGB LED | GPIO27 | Kart üstü adreslenebilir RGB LED ile paylaşılır. |
| BOOT | GPIO28 | Reset anındaki seviyesi boot modunu etkiler. |
| PSRAM CS | GPIO15 | N16R8 modülünde 8 MB PSRAM'a ayrılmıştır; kullanmayın. |
| SDIO | GPIO7 DATA1, GPIO8 DATA0, GPIO9 CLK, GPIO10 CMD, GPIO13 DATA3, GPIO14 DATA2 | USB ile GPIO13/14 paylaşımını ve chip revision desteğini kontrol edin. |
| Genel GPIO | GPIO0, 1, 2, 3, 4, 5, 7, 8, 9, 10, 23, 24, 25, 26 | Seçilen çevre birimi, boot ve IO MUX işlevleriyle çakışma kontrolü yapılmalıdır. |
Boot Strapping ve Ayrılmış Pinler
ESP32-C5 reset sırasında GPIO26, GPIO27 ve GPIO28 seviyelerini okuyarak boot modunu belirler. GPIO25 ve GPIO7 de SDIO/JTAG yapılandırmasında strapping işlevlerine sahiptir. Bu pinler program başladıktan sonra kullanılabilse de reset anında bağlı çevre biriminin oluşturduğu seviye kartın açılmasını veya programlama moduna girmesini engelleyebilir.
- GPIO15: N16R8 modülünde dahili PSRAM chip-select hattıdır; genel GPIO olarak kullanılmaz.
- GPIO6: Kart üstü pil ADC direnç bölücüsüne bağlıdır.
- GPIO27: RGB LED ve boot strapping işleviyle paylaşılır.
- GPIO28: BOOT butonuna bağlıdır ve download modunu belirler.
- GPIO11/12: UART etiketli USB portu kullanılırken CH343P ile paylaşılır.
- GPIO13/14: Yerel USB Serial/JTAG portu kullanılırken USB D-/D+ hatlarıdır.
Çevre Birimleri ve Genişleme Olanakları
| UART | İki yüksek performans UART ve bir LP UART; GPS, RS485, seri ekran ve modem bağlantıları. |
| SPI | Genel amaçlı SPI; ekran, ADC, DAC, RF ve depolama modülleri. |
| I2C | Sensör, RTC, OLED ve I/O genişletici; ayrıca düşük güç I2C işlevleri. |
| I2S | Dijital mikrofon, ses codec'i ve ses çıkış uygulamaları. |
| LEDC / MCPWM | LED parlaklığı, servo ve motor kontrolü; çip düzeyinde altışar PWM kanalı. |
| RMT | Hassas darbe üretimi/ölçümü, adreslenebilir LED ve kızılötesi protokoller. |
| PCNT | Enkoder, debimetre, frekans ve darbe sayımı. |
| CAN FD | İki denetleyici; fiziksel CAN hattı için harici 3,3 V uyumlu transceiver gerekir. |
| PARLIO / GDMA | Paralel veri ve çevre birimi aktarımını işlemci yükünü azaltarak yönetme. |

Mekanik Ölçüler ve Montaj
- Kart dış ölçüsü: 61,40 x 25,40 mm
- Dört montaj deliği: 2,00 mm çap
- Yatay delik merkez mesafesi: 50,16 mm
- Dikey delik merkez mesafesi: 21,80 mm
- İki GPIO sırası arası dış kart genişliği: 25,40 mm
- SKU 32577 pin delikleri headersızdır; doğrudan kablo, dişi/erkek header veya taşıyıcı PCB için lehimlenebilir.
RF performansı için modülün PCB anten ucunun çevresi açık bırakılmalıdır. Anteni metal kutu, pil, ekran arka plakası, geniş bakır alan, kablo demeti veya başka bir PCB ile kapatmak 2,4 ve özellikle 5 GHz performansını düşürebilir.
Güç Besleme ve Elektriksel Güvenlik
- Kart USB Type-C üzerinden nominal 5 V ile veya uygun 3,7 V tek hücre pil üzerinden beslenebilir.
- GPIO mantık seviyesi 3,3 V'tur; pinlere 5 V sinyal uygulanmamalıdır.
- Motor, röle, solenoid, yüksek güçlü LED ve hoparlör GPIO'dan doğrudan sürülmemelidir.
- Endüktif yükte MOSFET/transistör sürücü, flyback diyot ve ayrı güç kaynağı kullanın.
- Harici güç kaynağı kullanılan modüllerle kartın GND hattını ortaklayın.
- İki USB portunu aynı anda farklı güç kaynaklarına bağlamadan önce toprak ve güç yolu koşullarını değerlendirin.
- WiFi yayın anındaki ani akım için kaliteli USB kablo ve kararlı güç kaynağı kullanın.
Donanım Güvenliği Özellikleri
ESP32-C5; Secure Boot, Flash/PSRAM şifreleme, gerçek rastgele sayı üreteci, anahtar yönetimi ve donanımsal kriptografi hızlandırıcıları sunar. AES, SHA, RSA, ECC, HMAC ve dijital imza çevre birimleri; TLS, imzalı firmware, cihaz kimliği ve güvenli OTA gibi işlemlerin CPU yükünü azaltabilir.
TEE denetleyicisi, Access Permission Management ve Physical Memory Protection mekanizmaları uygulama bölümleri arasında daha güçlü erişim sınırları kurmaya yardımcı olur. Güvenlik özellikleri otomatik olarak etkin değildir; üretim cihazında eFuse, Secure Boot, Flash şifreleme, debug kilidi, anahtar yedekleme ve kurtarma süreci birlikte planlanmalıdır. eFuse işlemleri tek yönlü olabileceği için önce geliştirme kartında kontrollü prosedür uygulanmalıdır.
Arduino IDE Kurulumu
- Güncel Arduino IDE'yi kurun ve kartı veri destekli USB Type-C kabloyla bağlayın.
- Ek Kart Yöneticisi URL'leri alanına
https://espressif.github.io/arduino-esp32/package_esp32_index.jsonadresini ekleyin. - Kart Yöneticisi'nden güncel esp32 by Espressif Systems paketini kurun.
- Kart listesinde ESP32-C5 için uygun Waveshare profili varsa onu; yoksa ESP32C5 Dev Module profilini seçin.
- Flash boyutunu 16 MB, PSRAM seçeneğini 8 MB harici PSRAM ile uyumlu moda ayarlayın.
- UART portu kullanılıyorsa CH343P'ye ait COM portunu seçin. Yerel USB kullanılıyorsa USB CDC/Serial-JTAG ayarlarını etkinleştirin.
- Önce basit RGB veya seri çıktı örneğiyle yükleme yolunu doğrulayın.
Sürüm notu: ESP32-C5 desteği yeni geliştiği için eski Arduino-ESP32 paketleri kartı listelemeyebilir. Güncel kararlı paket kullanılmalı; seçilen örneğin istediği ESP-IDF/Arduino sürümüyle kütüphane uyumluluğu kontrol edilmelidir.
Örnek 1: Kart Üstü RGB LED
Kart tanımı RGB_BUILTIN makrosunu sağlıyorsa aşağıdaki örnek GPIO27 üzerindeki adreslenebilir LED'i kırmızı, yeşil ve mavi yakar.
#ifndef RGB_BRIGHTNESS
#define RGB_BRIGHTNESS 32
#endif
void setup() {}
void loop() {
#ifdef RGB_BUILTIN
rgbLedWrite(RGB_BUILTIN, RGB_BRIGHTNESS, 0, 0);
delay(700);
rgbLedWrite(RGB_BUILTIN, 0, RGB_BRIGHTNESS, 0);
delay(700);
rgbLedWrite(RGB_BUILTIN, 0, 0, RGB_BRIGHTNESS);
delay(700);
rgbLedWrite(RGB_BUILTIN, 0, 0, 0);
delay(700);
#endif
}
Örnek 2: Çip, Flash ve PSRAM Kontrolü
void setup() {
Serial.begin(115200);
delay(500);
Serial.printf("Chip: %s rev %d\n",
ESP.getChipModel(), ESP.getChipRevision());
Serial.printf("Cekirdek: %d\n", ESP.getChipCores());
Serial.printf("CPU: %u MHz\n", ESP.getCpuFreqMHz());
Serial.printf("Flash: %u MB\n", ESP.getFlashChipSize() / 1024 / 1024);
Serial.printf("PSRAM: %u MB\n", ESP.getPsramSize() / 1024 / 1024);
Serial.printf("Bos PSRAM: %u bayt\n", ESP.getFreePsram());
}
void loop() {}
Beklenen temel sonuç 16 MB Flash ve yaklaşık 8 MB PSRAM'dır. PSRAM sıfır görünüyorsa yanlış kart profili, yanlış bellek modu veya eski Arduino çekirdeği seçilmiş olabilir.
Örnek 3: 2,4 ve 5 GHz WiFi Ağlarını Tarama
#include
const char* bandName(int channel) {
return channel <= 14 ? "2.4 GHz" : "5 GHz";
}
void setup() {
Serial.begin(115200);
WiFi.mode(WIFI_STA);
WiFi.disconnect();
delay(200);
int count = WiFi.scanNetworks();
Serial.printf("%d ag bulundu\n", count);
for (int i = 0; i < count; i++) {
int channel = WiFi.channel(i);
Serial.printf("%-24s %s CH:%3d RSSI:%4d dBm\n",
WiFi.SSID(i).c_str(),
bandName(channel),
channel,
WiFi.RSSI(i));
}
WiFi.scanDelete();
}
void loop() {}
Örnek 4: WiFi Bağlantısı ve Kullanılan Bandı Gösterme
#include
const char* ssid = "WIFI_ADI";
const char* password = "WIFI_SIFRE";
void setup() {
Serial.begin(115200);
WiFi.mode(WIFI_STA);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) {
delay(500);
Serial.print('.');
}
int channel = WiFi.channel();
Serial.println();
Serial.printf("IP: %s\n", WiFi.localIP().toString().c_str());
Serial.printf("Kanal: %d, bant: %s\n",
channel, channel <= 14 ? "2.4 GHz" : "5 GHz");
Serial.printf("RSSI: %d dBm\n", WiFi.RSSI());
}
void loop() {}
Örnek 5: Yerel WiFi Web Sunucusu
#include
#include
const char* ssid = "WIFI_ADI";
const char* password = "WIFI_SIFRE";
WebServer server(80);
void rootPage() {
String page = "ESP32-C5 Durum
";
page += "IP: " + WiFi.localIP().toString() + "
";
page += "Kanal: " + String(WiFi.channel()) + "
";
page += "RSSI: " + String(WiFi.RSSI()) + " dBm
";
server.send(200, "text/html", page);
}
void setup() {
Serial.begin(115200);
WiFi.begin(ssid, password);
while (WiFi.status() != WL_CONNECTED) delay(300);
server.on("/", rootPage);
server.begin();
Serial.println(WiFi.localIP());
}
void loop() {
server.handleClient();
}
Örnek 6: I2C Adres Tarayıcı
Örnekte SDA GPIO2 ve SCL GPIO3 kullanılır. I2C sensör modülünün 3,3 V uyumlu olduğundan ve hatlarda uygun pull-up dirençleri bulunduğundan emin olun.
#include
void setup() {
Serial.begin(115200);
Wire.begin(2, 3);
for (uint8_t address = 1; address < 127; address++) {
Wire.beginTransmission(address);
if (Wire.endTransmission() == 0) {
Serial.printf("I2C cihaz: 0x%02X\n", address);
}
}
}
void loop() {}
Örnek 7: Pil Gerilimini Okuma
Şemadaki 200 kohm / 100 kohm bölücü yaklaşık 3:1 oranındadır. Aşağıdaki değer yaklaşık ölçümdür; ADC toleransı ve direnç sapması nedeniyle multimetreyle kalibrasyon yapılmalıdır.
const int BAT_ADC_PIN = 6;
const float DIVIDER_RATIO = 3.0f;
void setup() {
Serial.begin(115200);
analogReadResolution(12);
}
void loop() {
uint32_t totalMv = 0;
for (int i = 0; i < 32; i++) {
totalMv += analogReadMilliVolts(BAT_ADC_PIN);
delay(2);
}
float adcMv = totalMv / 32.0f;
float batteryV = adcMv * DIVIDER_RATIO / 1000.0f;
Serial.printf("Pil: %.3f V\n", batteryV);
delay(2000);
}
Örnek 8: Zamanlayıcıyla Deep Sleep
#include "esp_sleep.h"
void setup() {
Serial.begin(115200);
delay(300);
Serial.println("Olcum tamamlandi; 60 saniye uyku.");
Serial.flush();
esp_sleep_enable_timer_wakeup(60ULL * 1000000ULL);
esp_deep_sleep_start();
}
void loop() {}
ESP32-C5 düşük güç modları sunar; ancak geliştirme kartındaki güç LED'leri, CH343P, şarj devresi ve DC/DC dönüştürücü kart toplam tüketimini etkiler. Uzun pil ömrü hedefinde yalnızca çip datasheet deep sleep değeri değil, kartın gerçek ölçümü esas alınmalıdır.
ESP-IDF Kurulumu ve İlk Proje
- Espressif Installation Manager ile ESP32-C5'i destekleyen güncel kararlı ESP-IDF sürümünü kurun.
- Windows'ta VS Code ve Espressif IDF eklentisini kurabilir veya ESP-IDF terminalini kullanabilirsiniz.
- Waveshare dokümanı örnek ekranlarında ESP-IDF 5.5.2 kullanır; proje paketinin sürüm notunu esas alın.
- Proje dizininde hedefi ESP32-C5 olarak seçin, yapılandırmayı açın, derleyin ve uygun porta yükleyin.
idf.py set-target esp32c5
idf.py menuconfig
idf.py build
idf.py -p COM7 flash monitor
Linux/macOS üzerinde COM7 yerine ilgili /dev/tty* aygıtı kullanılır. Yerel USB ve UART portları farklı seri aygıtlar oluşturabilir.
ESP-IDF ile Bant Modu Seçme
WiFi sürücüsü başlatıldıktan sonra 2,4 GHz, 5 GHz veya otomatik bant modu seçilebilir. Aşağıdaki parça tam uygulama değildir; WiFi station başlangıç akışına eklenir.
#include "esp_wifi.h"
// 2.4 ve 5 GHz arasinda otomatik secim
ESP_ERROR_CHECK(esp_wifi_set_band_mode(WIFI_BAND_MODE_AUTO));
wifi_protocols_t protocols = {
.ghz_2g = WIFI_PROTOCOL_11B | WIFI_PROTOCOL_11G |
WIFI_PROTOCOL_11N | WIFI_PROTOCOL_11AX,
.ghz_5g = WIFI_PROTOCOL_11A | WIFI_PROTOCOL_11N |
WIFI_PROTOCOL_11AC | WIFI_PROTOCOL_11AX,
};
ESP_ERROR_CHECK(esp_wifi_set_protocols(WIFI_IF_STA, &protocols));
Yalnız 5 GHz için WIFI_BAND_MODE_5G_ONLY, yalnız 2,4 GHz için WIFI_BAND_MODE_2G_ONLY kullanılabilir. Kanal genişliği ve 802.11ax/ac seçenekleri erişim noktasıyla uyumlu olmalıdır.
Zigbee, Thread ve Matter Geliştirme
ESP32-C5'in IEEE 802.15.4 radyosu Zigbee 3.0 ve Thread 1.4 uygulamalarına uygundur. Zigbee anahtar, lamba, sensör, coordinator/router/end-device prototipleri; Thread uç cihazları ve Matter over Thread çözümleri geliştirilebilir. Protokol rolü yalnız donanımla belirlenmez; doğru ESP-IDF bileşenleri, ağ kimlik bilgileri ve sertifikasyon gereksinimleri yapılandırılmalıdır.
Waveshare ESP-IDF örnek paketi iki kartla Zigbee HA on/off deneyi sunar: bir kart BOOT butonuyla anahtar, diğer kart RGB LED'i süren lamba rolünü üstlenir. Bu örnek temel commissioning, cluster ve kablosuz kontrol akışını doğrulamak için yararlıdır.
Arduino çekirdeği ESP32-C5 için Zigbee desteği sağlar; ancak Matter over Thread ve Matter over WiFi'nin hazır kütüphane yapılandırması sürüme bağlıdır. Gelişmiş Matter projelerinde Arduino'yu ESP-IDF bileşeni olarak kullanmak veya doğrudan ESP-Matter/ESP-IDF tercih etmek daha kontrollü bir yoldur.
Bluetooth Low Energy Kullanımı
BLE; telefonla cihaz kurulumu, beacon, düşük enerjili sensör, kablosuz konfigürasyon ve mesh uygulamalarında kullanılabilir. ESP32-C5; 125 Kbps ve 500 Kbps coded PHY ile kapsama odaklı, 1 Mbps ve 2 Mbps PHY ile hız odaklı bağlantı seçenekleri sunar. Broadcaster, Observer, Central ve Peripheral rollerinin birlikte kullanılabilmesi karmaşık BLE ağ geçidi senaryolarına olanak verir.
Klasik ESP32'de bulunan Bluetooth Classic SPP bu modelde yoktur. Seri port benzeri telefon bağlantısı gerekiyorsa BLE GATT servisi tasarlanmalı veya WiFi tabanlı TCP/WebSocket kullanılmalıdır.
Waveshare Örnek Paketinde Bulunan Demolar
| Ortam | Örnekler |
|---|---|
| Arduino | GPIO sıralı test, RGB LED, chip ID, WiFi AP, WiFi STA/OpenWeather, DHCP, statik IP ve harici LCD üzerinde LVGL 8/9. |
| ESP-IDF | Hello World, RGB, UART loopback, ekran bağlantısı, WiFi istemci, WiFi AP, BLE beacon ve iki kartlı Zigbee on/off. |
Doküman sürüm uyarısı: Waveshare'ın bazı alt sayfalarında eski N16R4 adı ve örnek bağlantıları görülebilir. SKU 32577'nin güncel ana ürün tanımı N16R8'dir. GPIO15'in 8 MB PSRAM tarafından kullanıldığı ve GPIO6'nın pil ADC hattına bağlı olduğu dikkate alınarak eski genel GPIO testleri doğrudan uygulanmamalıdır.
Kullanım Alanları
- 2,4/5 GHz çift bant endüstriyel sensör ve telemetri düğümleri
- Yoğun WiFi ortamında düşük gecikmeli kontrol ve veri toplama
- Zigbee ve Thread sensör, anahtar, lamba ve aktüatör prototipleri
- Matter uyumlu akıllı ev cihazları ve köprü uygulamaları
- BLE üzerinden telefonla kurulum ve cihaz konfigürasyonu
- WiFi ile BLE/802.15.4 arasında düşük/orta yükte protokol köprüsü
- CAN FD, RS485 veya UART verisini kablosuz ağa taşıyan gateway
- Pil destekli veri kaydedici, çevre izleme ve akıllı tarım düğümü
- WPA3 güvenlikli kurumsal IoT istemcileri
- Eğitim, RF protokol deneyi ve yeni nesil ESP32-C5 prototipleme
Örnek Proje Önerileri
| Proje | Ek donanım | Öne çıkan özellik |
|---|---|---|
| Çift bant çevre istasyonu | BME280, OLED, pil | 5 GHz telemetri, I2C, deep sleep |
| Zigbee akıllı röle | İzole röle/MOSFET sürücü | 802.15.4, Zigbee cluster |
| Thread sensör düğümü | Düşük güçlü sensör, pil | Thread 1.4, LP çekirdek, TWT |
| CAN FD-WiFi köprüsü | CAN FD transceiver ve koruma | CAN FD, 5 GHz WiFi, MQTT |
| BLE kurulumlu WiFi cihazı | İsteğe bağlı ekran/buton | BluFi/GATT, çift bant WiFi |
| Kablosuz HMI | SPI LCD ve dokunmatik kontrolcü | 8 MB PSRAM, LVGL, 5 GHz |
Sorun Giderme
| Belirti | Kontrol edilecekler |
|---|---|
| USB portu sürekli yeniden bağlanıyor | USB geriliminin yük altında yaklaşık 4,9 V üzerinde kaldığını, kabloyu ve bilgisayar portunu kontrol edin. |
| Program yüklenmiyor | BOOT'a basılı tutun, RESET'e basıp bırakın, sonra BOOT'u bırakın; doğru COM ve esp32c5 hedefini seçin. |
| PSRAM görünmüyor | N16R8 kart profili, 8 MB PSRAM ayarı, güncel Arduino/ESP-IDF ve Flash/PSRAM modunu kontrol edin. |
| 5 GHz ağ bulunmuyor | Güncel yazılım, otomatik/5 GHz bant modu, bölgesel kanal, AP kanal ayarı ve sinyal seviyesini kontrol edin. |
| Yanlış banda bağlanıyor | 2,4/5 GHz için ayrı SSID kullanın veya ESP-IDF bant modu ve 5 GHz RSSI önceliğini yapılandırın. |
| GPIO15 çalışmıyor | N16R8 modülünde GPIO15 PSRAM'a ayrılmıştır; başka GPIO seçin. |
| GPIO6 beklenmedik davranıyor | GPIO6 kart üstü pil ADC bölücüsüne bağlıdır; genel çıkış olarak kullanmayın. |
| Yerel USB seri çıktı yok | USB CDC/Serial-JTAG yapılandırması, GPIO13/14 çakışması ve doğru USB portunu kontrol edin. |
| Zigbee/Thread kararsız | 2,4 GHz kanal çakışması, WiFi trafik yükü, coexistence ayarı, anten çevresi ve güç kaynağını inceleyin. |
Sıkça Sorulan Sorular
Bu kart gerçekten 5 GHz WiFi destekliyor mu?
Evet. ESP32-C5, 2,4 ve 5 GHz çift bant 802.11ax radyoya sahiptir ve 802.11a/n/ac/ax 5 GHz ağlarla çalışabilir.
Aynı anda 2,4 ve 5 GHz'e bağlanabilir mi?
Hayır. Dual-band desteği iki bant arasında seçim yapabilmek anlamına gelir; eşzamanlı çift bant bağlantı değildir.
Bu kart ESP32-C6 ile aynı mı?
Hayır. İki aile de WiFi 6, BLE ve 802.15.4 sunabilir; ESP32-C5'in belirgin farkı 5 GHz WiFi desteğidir.
Header pinleri lehimli mi gelir?
SKU 32577 headersız sürümdür. Fabrikada header lehimli N16R8-M modeli SKU 32470'tir.
Harici anten bağlanabilir mi?
SKU 32577 kart üstü PCB anten kullanır ve kullanıcıya açık harici anten konnektörü yoktur. Harici anten için U/UM sürümler seçilmelidir.
Bluetooth Classic var mı?
Hayır. ESP32-C5 Bluetooth Low Energy destekler; klasik SPP/BR/EDR bulunmaz.
İki USB portundan da program yüklenebilir mi?
Evet. USB portu yerel USB Serial/JTAG, UART portu CH343P üzerinden programlama sağlar. Yazılım ve port seçimi kullanılan yola göre ayarlanmalıdır.
Pil şarj edebilir mi?
Kartta tek hücre 3,7 V Li-ion/Li-Po pil için şarj yönetimi vardır. Pil tipi ve polaritesi bağlamadan önce doğrulanmalıdır.
GPIO15 neden kullanılamıyor?
N16R8 modülündeki 8 MB PSRAM'ın chip-select hattıdır. Bu pini kullanmak bellek erişimini bozabilir.
Matter için uygun mu?
Donanım WiFi, BLE ve Thread özellikleriyle Matter geliştirmeye uygundur. Hazır Arduino kütüphane yapılandırması sınırlı olabilir; profesyonel projelerde güncel ESP-Matter ve ESP-IDF sürümü önerilir.
Paket İçeriği
- 1 adet Waveshare ESP32-C5-WIFI6-KIT-N16R8 geliştirme kartı
- SKU 32577, 16 MB Flash + 8 MB PSRAM, dahili anten, headersız sürüm
Dahil değildir: USB Type-C kablo, GPIO header, pil, harici sensör, ekran, jumper kablo ve diğer aksesuarlar aksi belirtilmedikçe pakete dahil değildir.
Kaynaklar ve Teknik Belgeler
- Waveshare ESP32-C5-WIFI6-KIT resmi ürün dokümantasyonu
- Waveshare kaynaklar ve indirilebilir dosyalar
- Waveshare Arduino geliştirme rehberi ve demolar
- Waveshare ESP-IDF geliştirme rehberi ve demolar
- Waveshare ESP32-C5-WIFI6-KIT FAQ
- ESP32-C5-WIFI6-KIT-NXRX resmi şeması
- Espressif ESP32-C5 resmi ürün sayfası
- Espressif ESP32-C5 serisi datasheet
- ESP32-C5-WROOM-1 ve WROOM-1U modül datasheet
- ESP-IDF ESP32-C5 programlama kılavuzu
- Arduino-ESP32 resmi belgeleri