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

投稿

2024の投稿を表示しています

doxygenでコールグラフのフォントに躓いた話

コメントの整理 ソースがぐちゃぐちゃしてきたのでコメントを整理していたら・・あれ? コールグラフの日本語フォントがおかしくなってる 前は游ゴシックを指定していたのだけど今回はYu Gothic UIを指定してみたのだよ そしたらコールグラフの文字が見事な豆腐文字 まじかー まあすぐに治ったのだけど、またはまったらいやなので・・・備忘録 doxygenでの指定方法 まあ、ダブルクォーテーションをフォント名に指定するだけなんだけどね フォント名って結構空白文字があるから、自動的に補完してくれるものかと思ったけどそうでも無かった まあこんな感じでフォント名の前後に "フォント 名" みたいな感じでダブルクォーテーションで囲めばいいだけなんだけどちょっとはまった 游ゴシック みたいにフォント名に空白が混じってなければ無しでも大丈夫なんだけどね 結果 こんな感じで出力されました おしまい

パノラマ写真(F1のヘアピンプラスから)

なんかやることがあると、余計なことをしてしまう F1行ったときの写真をパノラマにしてみた   ヘアピンの出口で撮ったのだけど・・・ むう、直線のはずが変なカーブがこっちに迫ってる ベースになったのはこの5枚の写真 まあ、そんなこともあるよねと  

.NET MAUIではSSIDを指定した接続は.NET 9まで待て?

待てば海路の日和あり 本当かなぁ .NET MAUIはSSIDに対してのプラットフォーム間で共通のアクセスする方法がない。 全部プラットフォーム毎にコーディングする必要がある こんな事ならえるいーだーもflutterで作ればよかった そう思っていたら、githubにissueが上がっていた 一応今のところ.NET 9で搭載しようという計画はあるみたい・・・ Wifi Adapter Controls #18661 Description Currently, the MAUI framework can only detect what network connection is currently being used, it cannot interact with the platform-specific wifi adapters, without having to go into platform-specific code.   github.com こんな感じ コーディングしてる様子はないけど・・・ きっと11月にはリリースされていることだろう

ESP32のOTA(Over The Air)をスマホからやる:スマホ側の話(.NET MAUI)

ESP側の話 の続きです Andoroid  まあウインドウズでも動いちゃったんですが 開発環境はVisual Studio2022 .NET MAUI です つーても実証実験のタメに作っただけなので、C#でTCPクライアントを作って、パケットを送りつけるというとても雑なアプリです このページ見た人は「何だよ俺でも出来るじゃん」と思うでしょう 出来上がったイメージはこんな感じ   ソリューションを作る Visual Studioで.NET MAUIのアプリを作って下さい。 今回はTcpClientMauiというnamespaceにしましたが、そこはご自由に firmwareの用意 まあ何は無くてもファームウェアの用意です。 こいつを送り込んでやります。 つーても私の場合は他のアプリをいくつか作ってるので、その中から適当に選択したアプリのfirmware.binを使いました ESP32のファームを作るのにVS Code上のplatform IOを使ってる人はプロジェクトフォルダの下の .pio/buildの中を引っかき回せば見つかります。(adruinoはどこにあるんだろ・・・) それをZIPで圧縮してVisual Studio のさっき作ってプロジェクトのResourcesの下のRAWにドラッグします そして、大抵は勝手にプロパティのビルドアクションがMauiAssetになってるのだけどなってなかった場合はMauiAssetにしよう コーディング 後はコーディング ZipHelperクラス(ZipHelper.cs) namespace TcpClientMaui {     internal class ZipHelper     {         public static byte [] ExtractZipFromMemory( byte [] zipData)         {             using ( var zipStream = new MemoryStream(zipData))             using ( var archive = new ZipArchive(zipStream, ZipArchiveMode.Read))             {                 // こ

ESP32のOTA(Over The Air)をスマホからやる:ESP32側の話

開発環境 開発環境はVS code + platformIOです。ESP32はこの環境が一番楽かと。 あとはプラグインとしてC/C++ Extension PackやDoxygen Documentation Generator 便利小道具系でしょうか C/C++ Extension Packだけは入れて置いた方がいいかと ESP32側の話 色々やり方はあるかと思いますが、Wi-Fiでパケットを受け取って、そのパケットを2面あるプログラム用のフラッシュに書いていく。という方法をとります。 いろんな人のサンプルを見てると、httpを使う人が多いのだけど・・・スマホからファームのアップデートをするのにはちょっと面倒なので。 1.プロジェクトの作成 つーてもプロジェクトウィザードで普通のESP32用のプロジェクトを作るだけ 2.パーティション用にiniファイルを書き換える 出来上がったプロジェクトにplatform.iniというのがあるので、それを自分の使いやすいように編集する んで、ここで重要なのはパーティションをどう切り分けるのかと言うこと [env:esp32doit-devkit-v1] platform = espressif32 board = esp32doit-devkit-v1 framework = arduino monitor_speed = 115200 board_build.partitions = partitions.csv なのでパーティションを切り分けてあげるのだけど、その設定はcsvファイルで出来ているのでその切り分けファイルを読み込ませる必要がある。 今回はpartisions.csvというファイルに書いてあるますよと宣言するのにboard_build.partitions = partitions.csvと書いて上げる。 あとは、シリアルが遅いといやなのでmonitor_speed=115200と。 3.パーティション用のcsvを書く 自分で書くのもいいけど・・・デフォルトのパーティション設定ファイルが {$Windowshome}.platformio\packages\framework-arduinoespressif32\tools\partitions というところにあるので、それっぽいのを持ってきます #

Writersideは諦めます

Writersideでマニュアル作ってみたけどちょっと使いどころ間違ってたな 作ったページを自分でカスタマイズ出来ない というか出来上がったWEBページがどうもJetbrains上のサーバでなんかホストされてるみたい 日本語ページなんだからと <html lang="en-US">となってるところを<html lang="ja-JP">になおすとそれだけでページ全体が表示されなくなる 日本語で説明文いっぱい書いてるのに 動画もダメだ そして動画も縦動画が全く対応していない 何でだよと思って出来上がったhtmlを見てみたら type="application/x-shockwave-flash" という一文が・・・ いやいやいや・・・ 今時ショックウェーブかよ いやまあ良いけど まあそんなわけでまたもやマニュアル作り直し もうdoxygenでいいや

Github Copilotを試していたらヤバいものを見た

TCPServerのテスト中でした いや・・・AIはヤバいね 考える必要が無くなってくる えるいーだーのWi-Fi化のテストをしようと実証用の通信アプリを作っていたのだけど 受信部分を作ろうとしたら、関数丸々一個提案されちゃったよ まじかよ・・・ まあ、このサンプルだと読み取ったデータを問答無用にアスキー変換しちゃうし 俺の場合はデータを構造体に変換して上げなきゃいけなし そもそもここではデータの受信だけして、上位にイベントを上げるようにするのだけどさぁ・・・ これから受信スレッドを造る これからスレッドを起動するところを造るのだけどそんなのもともと数行だし なんか一発でコパイロットさんが「これを使え」とか言ってきそう これは本当に世の中変わるねぇ おしまい

3D鉄道模型まつりに出展します

 今度の3D鉄道模型まつりに出展します ブースはA8です   よろしくお願いします。

えるいーだーをWi-Fiに移行する前準備

Wi-Fiへの以降について 唐突かもしれませんが、えるいーだーは今後Wi-Fiに移行します ボード側のBLEは諸般の事情がありまして・・・まあWi-Fiに移行することになったのですがスマホ側は諸般の事情があっても実は平気なのでスマホ側はBLEとWi-Fiの両対応になります スマホの通信方式の両対応については実はそんなに大変ではありません 通信用のクラスは分離した状態で作ってますので ただまあだからといって実装にはそれなりに時間が掛かります。 サーバにするかクライアントにするか もうボード側をサーバにすることは決定しています スマホ、もしくはウインドウズ端末からボードのSSIDを指定して接続します なぜなのか セキュリティが確保出来ないのです。 ボード側から皆さんのご自宅のWi-Fi網にログインすることを考えた場合、皆さんは 「マゼピンという正体不明な人間」が作ったアプリにログイン情報を気軽に入力出来るでしょうか  また ボードに各家庭のログイン情報を保存してそれが漏洩したら? ということを考えた場合ボードから自宅のWi-Fiのログイン(もしくはスマホのAPモード)へのアクセスはあり得ないかなと・・・ 課題 Wi-Fiアクセスすると何がいいかってOTAというファームのアップデートもやりやすい(現在採用しているESP32はBLEとWi-FiのROMを作るとそれだけでストレージを食い潰してしまう) OTAという仕組みでスマホアプリにファームウェアを入れてそこからアップデートなんて事も出来ます 課題としてはこれから実装を始めて一年くらいかかってしまいそうなところでしょうか 本当は点灯パターンの編集画面に手を付けようと思っていたのですが、こちらの方が優先順位が上がってしまいました とは言え、その前にウインドウズアプリのリリースがありますがね・・・  まあ、要素技術をこれから調査することが残っているので這いますが Wi-Fi頑張ります   おしまい