スキップしてメイン コンテンツに移動

brltty のcpu時間が多い問題

brttyなるプロセスが結構なcpu時間を占めていたのでchatgptに聞いてみると
CH340のUSBシリアルのトラブルの根本的な問題もこの辺にあったらしいのでbrttyを削除することに
アップデートで再インストールされるのでそのへんも含めて対処
chatgpt曰く
💡補足
Ubuntu や Debian は、USBシリアル変換器(CH340など)を点字ディスプレイと誤認しがちです。
brltty の自動起動によって /dev/ttyUSB0 が brltty に占有され、Arduino や ESP32 が認識されなくなる問題もよく報告されています。
らしい
sudo apt remove brltty
✅ 再インストールを防ぐ対策まとめ
✅ 1. brltty を完全削除して再インストールされないようにロック
sudo apt purge brltty
sudo apt-mark hold brltty

✅ 2. udev が brltty を起動しないようにする
点字ディスプレイではなく**USB接続のシリアル変換器(CH340など)**を使っていると、brltty がこれを「点字ディスプレイ」と誤認して起動することがあります。
対策:udev ルールを無効化
sudo mkdir -p /etc/udev/rules.d
sudo touch /etc/udev/rules.d/99-nobrltty.rules
次にこの内容を追加します:
echo 'ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", OPTIONS+="ignore_device"' | sudo tee -a /etc/udev/rules.d/99-nobrltty.rules
これは例として CH340 シリアル変換チップ(1a86:7523) に対して brltty が干渉しないようにする設定です。他のデバイスを使っている場合は lsusb で idVendor と idProduct を調べてください。
✅ 3. GRUBのカーネルオプションで brltty を無効化(上級者向け)
sudo nano /etc/default/grub
この行を探して:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
ここに brltty=off を追加:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash brltty=off"
設定を反映:
sudo update-grub

✅ 確認
最後に、ちゃんと削除されたか確認:
dpkg -l | grep brltty
何も表示されなければ、削除完了です。

一通り入力すると何も表示されなくなった
うまく行ったようで USBの抜き差し無しでCH340をつんだArduinoも認識されるようになった
MatterControlでもUSB抜き差し無しでLampsを認識してくれるようになった

コメント

このブログの人気の投稿

Blogger でp5jsがつかえた

”HTMLビュー”でHTMLを編集  divとcanvasを関連付ければ良いみたい (div id="p5canvas とcreateCanvasの.parent("p5canvas");) p5js本体はCDNを参照(https://cdnjs.com/libraries/p5.js) コードはP5サイトのEXAMPLEから(https://p5js.org/examples/3d-geometries.html) <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.js"></script> <div id="p5canvas"></div> <script> function setup() { createCanvas(710, 400, WEBGL).parent("p5canvas"); } function draw() { background(250); translate(-240, -100, 0); normalMaterial(); push(); rotateZ(frameCount * 0.01); rotateX(frameCount * 0.01); rotateY(frameCount * 0.01); plane(70); pop(); translate(240, 0, 0); push(); rotateZ(frameCount * 0.01); rotateX(frameCount * 0.01); rotateY(frameCount * 0.01); box(70, 70, 70); pop(); translate(240, 0, 0); push(); rotateZ(frameCount * 0.01); rotateX(frameCount * 0.01); rotateY(frameCount * 0.01); cylinder(70, 70); pop(); ...

Arduino IDE が "Downloading index: library_index.tar.bz2" で固まる問題

PCとのシリアル通信が原因の一つらしい '/home/usename/.arduino15/packages' を消すといいらしい ので消すと治った IDEの起動中にフリーズしてたのが治った Downloading index: library_index.tar.bz2 とダウンロード中だったが終了したので起動中のフリーズが起こるようになった

p5jsでpngをBase64文字列にしてコードに埋め込んでspriteに

Display String Blogger上でp5jsでsprites用の画像を扱うのが面倒そうなので 文字列にして埋め込んでみる 変換コードもコピペしたので残す  imageで読み込む際に文字列の頭にこれをつける'data:image/png;base64,' <script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/1.5.0/p5.js"></script> <div id="p5canvas"></div> <script> let img; let spx=10; let spy=10; let timer=0; function setup() { createCanvas(400, 200).parent("p5canvas"); frameRate(30); img = loadImage('data:image/png;base64,'+ 'iVBORw0KGgoAAAANSUhEUgAAACAAAAAQCAMAAABA3o1rAAADAFBMVEUAiACIAIi7u7uqzO4AAAAzIiJEMzOId2aZiIi7qqrdzLv/7t3///9VEQB3EQCqIgDMMwD/RAD/dxH/uxH/3SL/7ncRIndEVf9mzP+I3f+7//+ZzO677v8zRBEzZhGI3QC7/wARmXciAEREEVXMZojumar/zN27RFXuu8x3MyKZRETMd2b/mZkzIhFVMyKIVUSZd1W7iGbMqnfuzKr/3cwiEQBEIhGqZiLMdzPdiETumVX/u2b/3Yjd3VURMzMRd3cRu7sR//93ZruZd+4zM2ZmZpmZiLvMu+7//+6ZmaqIiIj/AP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AAP8AA...