Zigbee stick yazılımı yüklerken COM/ttyUSB sorunları: tanılama ve çözüm

Kerem Aydın·8 Temmuz 2026·⏱4 dk

Zigbee stick yazılımını yüklerken Windows'ta COM portu yoksa veya Linux'ta /dev/ttyUSB* görünmüyorsa, neredeyse her zaman suçlular şunlardır: yanlış USB‑UART sürücüsü, veri aktarmayan kablo, erişim hakları veya portu kapatan servisler. Aşağıda, sorunu genellikle 10–15 dakikada çözen hızlı bir işlem sırası bulunmaktadır.

Ana kural: Önce stick'in hangi USB‑UART yongasına sahip olduğunu belirleyin (CP210x/CH340/CH9102), ardından sürücüyü kurun ve porta erişimi yapılandırın.

İçindekiler

USB‑UART'ı nasıl belirlersiniz (CP210x/CH340/CH9102)

Windows: Aygıt Yöneticisi → Bağlantı Noktaları (COM ve LPT) (veya sürücü yoksa Diğer Aygıtlar) açın. Şu isimleri arayın:

  • Silicon Labs CP210x → CP210x
  • USB-SERIAL CH340/CH341 → CH340/CH341
  • CH9102/CH343 → CH9102/CH343 ("yanlış olanı kurdum" hatasının sık nedeni)

Linux:

lsusb
dmesg -w

Genellikle lsusb çıktısında 10c4:ea60 (CP210x) ve 1a86:7523 (CH340) gibi tanımlayıcılar görülür, ancak öncelikle dmesg mesajlarına güvenin.

Sistemde ne görünmesi gerektiğine dair hızlı kılavuz

USB‑UARTSistemde nasıl görünürTipik port
CP210xCP210x/SLAB_USBtoUARTCOMx / /dev/ttyUSB0
CH340/CH341CH340/CH341COMx / /dev/ttyUSB0
CH9102/CH343CH9102/CH343COMx / /dev/ttyUSB0

Windows: COM görünmüyor veya yazılım yükleyici portu açamıyor

  1. Kabloyu ve USB portunu kontrol edin. Sorun çok sık olarak sadece şarj kablosu olmasından kaynaklanır. Belirti: güç var ama aygıt tanınmıyor veya "Unknown USB" hatası veriyor.
  • başka bir kablo kullanın (kesinlikle veri aktaran),
  • farklı bir porta takın (tercihen USB hub olmadan doğrudan).
  1. Aygıt var ama COM görünmüyorsa: sürücüyü yeniden kurun.
  • Aygıt Yöneticisi → aygıta sağ tıklayın → Aygıtı Kaldır ("Sürücüyü kaldır" seçeneği varsa işaretleyin).
  • Stick'i çıkarın, çipinize uygun sürücüyü kurun (CP210x ≠ CH340 ≠ CH9102),
  • tekrar takın ve Bağlantı Noktaları (COM ve LPT) altında sarı uyarı işareti olmadan aygıtın göründüğünü kontrol edin.

Aygıt Yöneticisi'nde CH9102 görünüyorsa, CP210x veya CH340 sürücüsünü kurmak çoğu zaman işe yaramaz (ve Code 10/COM yok hatasına neden olabilir).

  1. COM var ama Access denied / Port busy / cannot open port hataları alınıyor.
  • Portu açmış olabilecek tüm uygulamaları kapatın (COM izleyiciler, terminaller, otomatik bağlantı servisleri),
  • Bilgisayarı yeniden başlatın (portu "serbest bırakmanın" en hızlı yolu),
  • Stick'i takıp çıkardığınızda görünen doğru COM portunun seçildiğinden emin olun,
  • gerekirse yazılım yükleyiciyi yönetici olarak çalıştırın.

Linux: /dev/ttyUSB yok veya Permission denied

  1. USB'nin gerçekten göründüğünden emin olun:
lsusb
dmesg -w

Bağlantı sırasında hiçbir şey değişmiyorsa büyük olasılıkla sorun kablo/port/hub/güç kaynağındadır.

  1. Port görünüp hemen kayboluyor — portun sık "kaçırıcıları".

Debian/Ubuntu'da yaygın bir senaryo: /dev/ttyUSB0 bir saniye görünür ve brltty veya ModemManager sorgulaması nedeniyle kaybolur.

  • Gerekmiyorsa brltty (Braille ekran desteği):
sudo systemctl stop brltty.service brltty-udev.service
sudo systemctl disable brltty.service brltty-udev.service
  • Yazılım yüklemeye engel oluyorsa ModemManager (modem otomatik algılama):
sudo systemctl stop ModemManager
sudo systemctl disable ModemManager
  1. /dev/ttyUSB0 var ama Permission denied: hakları ekleyin.
ls -l /dev/ttyUSB0
groups
sudo usermod -aG dialout $USER

Ardından oturumu kapatıp tekrar giriş yapın (veya yeniden başlatın).

  1. "Kaygan" ttyUSB0 yerine kararlı port adını kullanın:
ls -l /dev/serial/by-id/

Yazılım yükleyicide /dev/serial/by-id/usb-... şeklinde bir yol belirtin; böylece diğer USB‑UART aygıtları bağlıysa port karışmaz.

Yazılım yüklemeden önce kontrol listesi

  1. Veri aktaran kablo, hub olmadan bağlantı.
  2. Kesin USB‑UART belirlendi: CP210x / CH340 / CH9102.
  3. Windows: Bağlantı Noktaları (COM ve LPT) içinde hata olmadan aygıt mevcut.
  4. Linux: /dev/serial/by-id/ içinde port görünür, kullanıcı dialout grubunda.
  5. brltty ve ModemManager devre dışı veya engel değil (port kayboluyorsa/meşgul ise).
  6. COM/ttyUSB'yi açmış olabilecek programlar kapatıldı.
  7. Bootloader'a girerken aygıtın yeniden bağlanıp farklı bir port alabileceğini unutmayın.

Sık yapılan hatalar

  • COM/ttyUSB hiç görünmüyor → "sadece şarj" kablosu, kötü port, güç/hub sorunu.
  • Aygıt var ama yanlış sürücü → İsimde CH9102/CH343 varken CP210x/CH340 kurulmuş (veya tam tersi).
  • Port busy / Access denied → Port başka bir süreç tarafından zaten açık.
  • Linux'ta Permission denied → dialout grubu yok veya yeniden giriş yapılmamış.
  • Port kayboluyor → brltty/ModemManager veya bootloader moduna geçişte yeniden bağlantı.

SSS

Neden bazen /dev/ttyUSB0 yerine /dev/ttyACM0 olur?
Bazı aygıtlar CDC-ACM olarak çalışır. Bu normaldir: bağlantı sırasında görünen gerçek portu seçin veya /dev/serial/by-id/ kullanın.

ModemManager ve brltty'yi her zaman kapatmak gerekir mi?
Hayır. Yalnızca şu belirtileri görürseniz kapatın: port kayboluyor, yazılım yüklemesi başlamıyor, dmesg çıktısında bu servislerin müdahalesi görülüyor.

Neden yazılım yüklemesi sırasında port değişiyor?
Birçok stick, bootloader'a geçerken yeni bir USB aygıtı olarak "yeniden tanımlanır". Bu sırada COM/tty farklı olabilir — yazılım yükleme moduna girdikten sonra port listesini tekrar kontrol edin.