Ubuntuでコマンドから圧縮ファイル展開機能を呼び出す

2022年12月26日月曜日
背景 zipならunzipを使えば良いと分かりますが、tar.xzなどは展開(解凍)に必要なコマンドの調査に手間かかります。 そういう場合はファイルエクスプローラーを開いて右クリックで「ここで展開」を選んでいましたが、同じことがコマンドでもできるはずなので調べました。 調査の結果...

自動ログインを無効にしたRaspberry Pi OSにパスワード入力無しでUSBメディア接続時認識させる

2022年12月18日日曜日
背景 デスクトップへの自動ログインを無効にしたRaspberry Pi OSのデスクトップ版にRDPなどでリモートログインした状態では、USBメディア(USBメモリやUSB接続で利用するHDDやSSDなど)を接続するとパスワード入力を求められます。 (HDMIでモニタ、USBでキ...

ESP32を受信機にしてXboxのコントローラーをI2C経由で使えるライブラリを作った

2022年12月12日月曜日
背景 ESP32というマイコンにはbluetooth機能が付いているため、Xbox SeriesXのコントローラーと通信できます。 しかしながら、ESP32で利用可能な信号線の数は20本弱とそれほど多くなく、多機能な装置を作ろうとすると信号線が足りなくなります。 また、ESP32...

ESP32からPS5のコントローラーに接続する

2022年12月4日日曜日
ライブラリの進捗 ps5-esp32に出したペアリング対応のpull requestが受理された ので、ps5-esp32を使えばESP32とps5のコントローラーをペアリングできます。 背景 PS5のコントローラー(dualsense)はbluetooth classicで通信...

Raspberry PiのLEDを消す

2022年11月28日月曜日
背景 家の寝室に置いているRaspberry PIの基板に実装されているLEDを光らせたくなかったので、消えたままになる設定にしました。 以前から電源と稼働状況を示す赤と緑の消し方は把握していましたが、今回新たにイーサネット(LANケーブル接続口)のLEDも消したかったくなったの...

Xbox SeriesXのコントローラーをBLEで振動させる

2022年11月21日月曜日
背景 XboxのコントローラーをESP32でBLE通信して使うライブラリ を更新していたところ、HID(service: 0x1812)のReport(characteristic: 0x2a4d)が書き込み可能と気づきました。 XboxのコントローラーにはLEDは無いものの振動...

Linuxでデーモンを定義して動かす

2022年11月14日月曜日
背景 Linuxのデーモン(daemon 守護者)とは、システムの裏側で動いてくれるプログラムです。 systemdなどプログラムの最後の文字がdになっている場合はデーモンを意味する場合があります。 参考: Linux リテラシ - 第4回 デーモン デーモン (ソフトウェア) ...

Raspberry Pi4でUSBメディアを認識しなくなったときの対応コマンド

2022年11月6日日曜日
Raspberry Pi4をRaspberry Pi OSのデスクトップ版で使っていると、USBメディア(USBメモリや外付けSSDやHDDなど)を接続しても認識されない現象が時々発生します。 調べてみると再起動せずとも認識してくれるコマンドを見つけました。 USB subsys...

ubuntuのアプリ選択画面にアプリを出すための設定方法

2022年10月30日日曜日
背景 ubuntu22.04はキーボードのWindowsボタンを押すとアプリ(プログラム)選択画面(ランチャー)が表示され、アプリ名を入力すると実行対象が絞り込まれます。 インストーラーがあるアプリはこの画面で選べるように設定ファイルが生成されるのですが、ダウンロードしたファイル...

nucleo-h753zi向けにPlatformIOを通してArduinoプロジェクトをビルドしてとりあえず動かせた

2022年10月24日月曜日
要約 下記の設定でボード情報はh743ziを利用しつつnucleo_h753zit6i向けにビルドできます。 platformio.ini [env:nucleo_h753zi] board = nucleo_h743zi board_build.mcu = stm...

cppでtemplateを利用して定義したclassを別名で呼べるようにしつつdeprecatedの警告をつける

2022年10月16日日曜日
背景 ライブラリとして公開しているクラス名を変えたくなったので取り組んだところ、templateを利用して定義したclassの別名での呼び出し方法と、deprecated(利用非推奨)警告の付与方法の把握に手間取ったので、備忘録を兼ねて記事を残します。 書き方:usingを利用し...

STM32Arduinoで2番目のシリアルは未定義だが、定義すれば使える

2022年10月10日月曜日
背景 STM32とはST社が販売しているマイコンの1種です。 ピンの数と機能が多く用意されており、USARTとUARTの回路がそれぞれ4つずつ用意されています。 しかしながら、STM32マイコン向けのarduino環境ではUSBで通信するためのシリアルポート以外は定義されていませ...

I2Cの役割の呼び名はマスターとスレーブからコントローラーとターゲットに変わった

2022年10月2日日曜日
I2Cの呼び名の変化を調べたところ、コントローラー(controller)とターゲット(target)に変わったようです。 (記事の上部の画像は Wikipediaで公開 されていた CC4ライセンス の画像です。) 英語版のI2Cのwikipedia によると、 I3Cの定義が...

stm32でLowPowerライブラリを使った際の書き込み不具合はmbedモードにすれば直る

2022年9月25日日曜日
STM32とはST社が販売しているマイコンの1種です。 STM32L552ZEが実装されたnucleoというシリーズの開発ボードで STM32LowPower という低消費電力で動作するための休止管理ライブラリの サンプルコード(TimedWakeup) を書き込んでUSBを抜き...

snap-storeはコマンドで更新できる

2022年9月17日土曜日
snapとはubuntuで使われているソフトウェア管理プログラムであり、snap-storeはそれのGUI操作プログラムです。 ubuntu22.04でsnap-storeの更新が通知されたので実行しようとしたところ、下記のエラーで更新できませんでした。 "Snap ...

VSCodeの「ウィンドウの再読込」が一時的な不具合の解消に便利

2022年9月11日日曜日
VSCode で「Ctrl + Shift + p」を押して出てくる入力欄に「reload window」と入力すると画面の再読込機能が出てきます。 実行すると、実行したVSCodeの画面が再読込されます。 このウィンドウの再読込は、認識されるはずのファイルをエディタが認識してく...