今私は、休み期間なので、日中からネットサーフィンしています。
OLEDのSメーターのサンプルが何処かに無いかと情報集めのネットサーフィンしていたら、VUメーターの動画がありました。ソースも公開していましたので、早速ダウンロードしました。


コメント欄に出てくるサンプルはVUメーターのみのサンプルなので、このページのダウンロードが良いです。とても楽しめるスケッチです。! 
接続の下の方にある OLEDMeter.ino をクリックダウンロードします。
範囲を選択_106
楽しめるスケッチとは、後から分かります。
今までは、ESP32 DivKitC でのスケッチでArduino IDEを使っていたので、設定をAruduinoUNOに変えて、早速コンパイルしました。接続はまだしてません。コンパイルが通れば接続してみようというスタンスでやっています。コンパイル結果はNGです。インクルードファイルが無いのエラーをはいていました。これは、Webで確認すると、下記にありましたので、早速IDE上からZIPファイルをインストールです。久々のArduinoUNOです。

https://github.com/kosme/fix_fft

すんなりインクロードファイルが読み込まれました。後から気づきましたが、このインクルードファイルはオーディオ帯域のFFTで必要の様です。特になくても、良いようでしたが、コンパイルを通すだけでも、まっ、いいかです。Hi!
また、スケッチを覗くと、VUメーター以外にも、数種類メーターが記載あるようです。なんかワクワクしました。あとから、何のメーターかは、わかります。
コンパイルが通ったので、実際の表示を確認する為、ArduinoUNOとOLED(128X64)、それとSW類の配線をスケッチに記載してあるポートに合わせて行いました。

CIMG8760

配線
CIMG8759

VUメーターのサンプルのみと思っていましたら、FFT もそうですが、SWが付けられるようにスケッチが書いてあります。Webページにある接続はSW類がありません。少しスケッチの中を見てみると以下のメーターの表示が可能の様です。VU,S,POWER,SWRの4つがSWにより切り替わり表示なるようです。コンパイルを再度行い、書き込み実施しました。4つのメーターが表示されました。残念ですがFFTだけはSW押しても表示されませんでした。

VUメーター
Sメータ
POWERメータ
SWRメータ
FFT (動作せず)

とにかく、一番OLEDで見たかったメーターですし、気になっていたSメーターもありました。
最初の表示がVUメーターになっていたので、少しプログラムを弄り、表示開始はSメーターに変更しました。とにかくメーターを探し始めてこのスケッチに出会えました。スンバラシイです。

少しスケッチをザーッとみていましたら、リバーシブル機能のプログラム箇所がコメント化されていましたので、試しにコメント化を外して、コンパイルしてみた所、白地に黒の目盛りと指針に切り替わりました。これ又いい感じです。好みで選べます。私としては、白地に黒目盛りと黒指針がいいかと!

オリジナルのメーター(黒字に白のメモリと指針)

Sメーター
CIMG8764

VUメーター
CIMG8766

Powerメーター
CIMG8768

SWRメーター
CIMG8770

ここからリバーシブルのメーター表示

リバーシブル Sメーター
CIMG8775

リバーシブル VU メーター
CIMG8776

リバーシブル Powerメーター
CIMG8777

リバーシブル SWRメーター
CIMG8778

このSメーター類は無線機の自作をしている人達は、DDSと合わせてデジタルづくしの無線機を作り上げる事が出来ると思います。少し各メーターの入力のレベル設定の検討、調整は必要かと思います。

動作確認として、Sメーターの針の触れ方を見てみました。イリーガルなやり方ですが、入力端子への手との誘導で敏感にSメーターが触れます。どんな風に指針が動くかの確認には使えます。Hi! 以下各メータの表示とSメータ指針の触れ方確認の動画です。



とてもコンパクトなOLED(128X64)ですが、別の同型のOLEDでは少し広い様(ドットが多い)で、左側が空いて表示されるものがありました。別のOLEDでは範囲の変更が少し必要の様です。

また、このメーターの目盛りを作成するには、画像変換プログラムが必要のようでした。ただし、Windows用のソフトウェアでした。私のPCはLINUX(ubuntu)なので、ダウンロードはしませんでしたが、LINUX用の画像変換プログラムがあれば、目盛りを画像変換して、自分のメーターデータをこしらえてみたいところです。Windows10のPCもありますが、あえて、使いません。なんとか、LINUXで出来るようにという趣旨からです。

最初はVUメーターだけかと思いましたが、無線用の各メーターもおまけにあり、棚ぼたのメーターサンプルスケッチでした。ArduinoUNOも捨てたもんじゃありませんね!探すと色々とスケッチ公開していたりする面白い動画がありますからネットサーフィンも楽しいもんです。新しいデバイス(ESP32等)も、このようなサンプルを例に書き換え応用し楽しめる可能性もありますから!一番いいのは、自分でもWeb動画どおりの体験出来るということです。スケッチ公開してくれてる作者には、感謝です。Hi!

つづく?

続きです。なんとなくWebを検索していたら、CNC3018Proの導入時に大変参考にさせていただいた、マーティーの工房日誌に同じOLE128X64のメーターのサンプルスケッチを確認しているのを見つけました。5月27日のブログでしたので、既に5ヶ月弱前に氏は確認されていました。


私は、以前はCNC3018のスピンドル設定とかPCB切削に夢中でしたので、興味があまりない時点で、見てはいましたが、なんか色々とやっているなーぐらいの感じで流し見していたと思います。あらためて、先に興味を持たれて、今私の興味のあることは既に全部確認されておりました。今回私がダウンロードしたスケッチより以前ですので、まだ、SメータとかPowerメーター、SWRメーターのスケッチは含まれていなかったスケッチの様です。VUメーターだけの様です。電圧計としての目盛りを自分で作成されておりました。また、画像データ作成用のWindows専用image2GLCDのツールではなく、WebのImage2cppサイトにてHexコードを作成するやり方を見つけて試されていました。なので、早速、私も確認することにしました。膳はいそげ!、下記になります。詳しく書いて説明されていますので、トントン拍子でHexコードを作れそうです。


今、試しにInkscapeで本物のVUメータの画像をダウンロードしてInkscapeで読み込んで少し文字を書き換えたりして試したりしています。サイズは128X64ピクセルです。変換すると滑らかなフォントではあまり綺麗にはならない感じもあります。使用するフォントの種類でどれが一番見栄え良く変換できるかを確認してみようかと思っています。

氏は電圧計での振れ角180°の電圧計も作成されています。また、スケッチ上のプログラムで、振れ角180°のときの変更箇所も丁寧にわかりやすく説明されていますので、メーター目盛りを自分で作成し、HEXデータ化して、スケッチを変更する場合は凄く役に立つと思います。そのままで同じ物を確認したければ、作成されたサンプルスケッチも、Google Driveにアップしてあるようです。他も、自分でBitmapデータでなく、Adafruit GFX Graphics LibraryのLine,Circle,Textの描画コマンドだけでメーター目盛りを作成されていました。他の方法も試されています。新たにBitmapからコード変換するソフトも見つけられていました。LCD Assistantだそうです。他情報が満載なので、見ていて殆どが、参考になり、しかも利用出来る内容です。リンクフリーなのも助かります。詳しくは、直接マーティーの工房日誌を見てみればわかります。

メータースケッチをやり始めてから、だんだん楽しくなってきました。

つづく?

続きのまた、続きです。VUメータの数字とコールサインを入れてHEXデータを作成してみました。
Inkscape でオリジナル画像を読み込みして、文字を最初に黒で塗りつぶします。その後、文字を白色だと見えないので、少し色がつく程度にして、最前面に指定して、メーター目盛りを大きめの文字にしてみました。フォントはImpactのCondensed でサイズ8.000です。コールサインはUbuntu ,Bold サイズ6です。単調なフォントが形状が見た目がいい様です。
範囲を選択_107
実際にスケッチのVUメーターHEXデータを入れ替えてコンパイルしてみました。
案外、大きくなりました、意外と崩れが少ない感じです。(8と9と3と5が崩れてる感じ)もっと変換後のデータの崩れの少ないフォントがあるかもしれません。文字の太さも関係するかもしれません。ボールドでやっています。

CIMG8784

元々のVUメータ目盛りです。
CIMG8766

いずれにしても、自分で目盛りのフォントも変更書き換え出来ました。変換後のデータの数値の視認性がよくなる元画像データを作るのは意外と根気がいるかもしれません。Hi!

つづく?