Yeni: Yapay zekâ güvenlik duvarı tüm platformu izliyor ve her olayı sade bir dille açıklıyor. Nasıl çalıştığını görün

Pi ağ geçidime seri konsol escape kodlarını renk yerine gösteriyor ve htop bozuk görünüyor

Pi ağ geçidime seri konsol escape kodlarını renk yerine gösteriyor ve htop bozuk görünüyor

Çözüldü 6 5

Yapay zekâ tarafından English dilinden çevrildi ·

Yine ben (tavuk kümesindeki amonyak meselesinin sahibi). Kümes Pi’si artık küçük bir ağ geçidi olarak çalışıyor: NH3 sensörünü ve iki sıcaklık probunu okuyup Hermetry’ye yayınlıyor. Kulübedeki Wi-Fi çok zayıf, bu yüzden bağlantı koptuğunda CP2102 USB-TTL kablosunu Pi’nin GPIO UART’ına takıyorum ve dizüstü bilgisayarımda 115200 hızında PuTTY kullanıyorum.Girişi çalışıyor, ancak ağ geçidi betiğim renkli log satırları yazdırıyor ve seri bağlantıda şuna benzer çıktılar görüyorum:

^[[32mINFO^[[0m published nh3_ppm=9.1
^[[33mWARN^[[0m wifi reconnect (3)

Ayrıca PuTTY pencerem tam ekran olsa bile htop bozuk çiziyor ve 80 sütunda satır atlıyor. SSH üzerinden ikisi de mükemmel görünüyor. Seri bağlantı gerçekten bu kadar mı sınırlı?

♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

PuTTY yerine picocom’u denediniz mi? PuTTY’nin seri bağlantıda her zaman tuhaf davrandığını düşünmüşümdür.

♥ 1

Yapay zekâ tarafından English dilinden çevrildi ·

Linux makinemdeki picocom ile de aynı şey oluyor, denedim.

♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

Sorun terminal programında değil, Pi tarafında. SSH’nin bedavaya sağladığı iki şey seri girişte eksik.Terminal türü: SSH, TERM değerinizi iletir (PuTTY’den xterm-256color). Seri getty ise TERM’i vt220 olarak ayarlar; bunda renk yoktur, bu yüzden TERM’e bakan programlar geri döner ya da ham kodlar basar. echo $TERM ile kontrol edin.Pencere boyutu: Seri hat, Pi’ye pencerenizin boyutunu bildirmenin bir yolunu sunmaz; bu yüzden 80×24 varsayar ve hiç değişmez.Konsola bağlandığım her makinede bunu ~/.bashrc dosyasına koydum:

case "$(tty)" in
  /dev/ttyS0|/dev/ttyAMA0|/dev/serial0)
    export TERM=xterm-256color
    stty rows 50 cols 160      # match your PuTTY window
    ;;
esac

xterm paketini kurarsanız boyutu sabit kodlamak yerine resize yazabilirsiniz; terminale sorar ve ayarlar.Betiğinizin renkleri, günlük kütüphanesi TERM’i kontrol ediyorsa çalışacaktır.

Kabul edilen çözüm♥ 8

Yapay zekâ tarafından English dilinden çevrildi ·

Not: Aynı betik bir servis olarak çalıştığında günlükleri journald’a da yazıyor ve journal içindeki renk kodları can sıkıcı. Çoğu günlükleme kütüphanesi, stdout bir tty değilken rengi kapatmanıza izin verir.

Timestamps in UTC or it didn't happen.
♥ 0

Yapay zekâ tarafından English dilinden çevrildi ·

+1 bashrc parçasına, bizim geçitlerde de aynı. htop’ta kutu çizim karakterleri bozuluyorsa oraya export LANG=C.UTF-8 satırını da eklerdim.

♥ 1

Yapay zekâ tarafından English dilinden çevrildi ·

TERM tam olarak vt220 idi. bashrc bloğunu ekledikten sonra artık seri bağlantı üzerinden renkler ve tam genişlikte htop çalışıyor. Ayrıca Eric’in önerisini de ekledim; servis renksiz çalışıyor, böylece journal temiz kalıyor. Herkese teşekkürler!

♥ 0
7 yazı görüntüleniyor – 1 ile 7 arası (toplam 7)
  • Bu konuyu yanıtlamak için giriş yapmış olmalısınız.

Sohbete katılın

Soru sormak ve yanıtlamak, yararlı gönderileri beğenmek ve sorununuzu çözen yanıtı işaretlemek için oturum açın. Her katkı puan ve seviye kazandırır.

Paylaş