以前からやりたいやりたいと思っていてできていなかったTinkerboardでのKVMですが、Claude Codeを使ったら一発でできてしまったというお話・・・
そもそも、以前の記事では「USBガジェットモードで使用できない」と思っていたのですが、どうもそれはやはり勘違いだったようです。(普通にClaude Codeはデフォルトのarmbianでやってのけました)
Claude Codeすげえなとなったところ
今回もClaude Codeにほとんどやってもらってしまってすげーぜ!以外の部分が無いのですが・・・
TinkerBoardのHWエンコーダを使えるようにしてくれた
特に使えるようになる算段があったわけではないのですが、 使えるようにしてよ~~ってお願いしたらmainlineに取り込まれていないソースコードを使ったりして使えるようにしてくれました。
しかもISPにあった不具合も検証して起こらないようにしてくれて、映像に入るノイズも抑えてくれた…!
すげーぜ!
この時点で USBのHDMIキャプチャで得た映像をブラウザ経由で確認することが可能になりました。
CSIを使えるようにしてくれた
TinkerBoardにはRaspberry Piと同じようにCSIでカメラを接続できます。このCSIはUVCなUSBキャプチャとは異なりRawなデータを得られるので少ない遅延で映像を見ることができます。 (結構MJPEGのデコードの遅延が大きい)
そんなCSIなんですが、古いカーネルでしかサポートされていないようで、最近のOSイメージだと認識すらしませんでした。とはいっても同世代のボード用のドライバーのコードはあったりするらしく、それを引っ張ってきて動くようにしてくれました。
いきなり C790 というCSIのHDMIキャプチャを試すのではなく、Raspberry Pi Cameraのような同じCSIでよく知られたデバイスでClaudeに思考してもらうことで不明点を順番に解消しながら進めていくことができたようです。
フロントエンドもばっちり
まぁこの辺は当然って感じになってしまっていますが、まぁKVMのフロントエンドをしっかり書いてくれました・・・
USBガジェット化も!
冒頭にも書きましたが、TinkerBoardってUSBガジェットにはならないと勘違いしていたようで、 ダメ元で「できる?」ってきいたら平然とやってのけました・・・
終わりに
長年実現できていなかったKVMですが、コーディングエージェントの力を借りて()実現できてしまいました。びっくり
まぁこれにはオチがあって・・・ その話はまた後日・・・