にゃん太郎とアマチュア無線

メインクーンのにゃん太郎と趣味のアマチュア無線と電子工作の記録です。

電子工作

raspberry-pi4 で新os Bookwormのvncではまった

新しいOSがでたみたいなので最新OSに新規に入れて、APRS環境を一新したいと思って入れたんですがなんとどうやってもWINDOW11のVNCから接続できない。エラーは下記のエラーです。

unable to connect to vnc server using your chosen security setting. either upgrade vnc server to a more recent version from realvnc, or select a weaker level of encryption.

どうもセキュリティの問題で接続できないみたい。
困ったときのgoogle先生ではvino(画面共有)の設定をfalseにするとか、vnc-serverをupgradeせよ とか何をしても上記エラーで接続できない。これに3日はまった。

原因は簡単で新osのデスクトップ環境がWaylandに変わったせいでした。
sudo-raspi-config でAdvanced Options」-> A6「Wayland」->w1 x11にすると昔のx11の環境で動きます。これで再起動

これで正常にvncで接続できました。やれやれ。
まあもうちょっとしたらgoogle先生にいっぱい載ると思いますが、、、

NANOVNA ST-LINK V2で復旧

anovna いろいろ新しいファームが出てきて、いろいろ試してみたら、前回書き換えに失敗してまったくUSB認識しなくなりました。電源をいれると画面は真っ白でDFUに入ってる画面みたいです。完全にbrick状態ですね。こうなるとUSBも認識しないので何もできません。
ということでやっとST-LINK V2がAmazon経由中国から到着しました。11月17日に注文して12月6日です。まあこんなもんですが、値段がなんと660円から380円になってました。

UsWAtAfj (1)

最初どうしてもSTM32 ST-LINK UtilityからCan not connect to target! でNANOVNAが認識されずずいぶん悩みました。
Tp8dk5gD

いろいろ情報をさがすと、ピンのSCLKとDIOが表示と位置が違うとかあったんですが、念のためカバーを外して表示をみると表示はあってるみたいですね。
これでもいろいろCLKの値とか変更してもダメです。
ST-LINK Utilityからはちゃんと見えているみたいで、ST-LINKのファームのUPDATEも正常にできましたが、どうしてもNanovnaを認識しません。
なおデバイスマネージャーからはユニバーサルシリアルデバイスの下にSTM32 STLINKと表示されていればOKです。これはST-LINK Utilityをインストールするとドライバも自動でいれてくれるようです。
しかしUSBの口がなんかぐらぐらしてるので、よくみるとUSB側のコネクタに半田のクラックを1か所発見。到着したときUSBのコネクタカバーがえらく硬くて外れなかったので、無理に外した時にクラックを発生させたのかもしれません。それを半田付けしなおすと、一発で認識しました。正常に認識するとこの画面になります。
ST

これでopen fileでNanovnaのファームを読み込みます。binでもhexファイルどちらでもokでした。書き込みは右上の左から3番めのprogram verifyを押すと書き込めます。
なおvccの3vですが、接続するとSt-Link側からNanovnaに供給されためNanovna側は電源OFF状態で書き込めました。なお targetの設定です。
st


これで無事Nanovnaのファームウェア書き換えに成功しました。ファーム書き換え失敗で、USBがまったく見えない状態でも復旧できることがわかりました。660円は正解ですね。今は380円ですが、、、
新しいファームがどんどん出てきていろいろ試したい人には保険で購入しといたほうがいいかも、(笑)

TS-100 SEN ERR

5年間使っていた。マイコンSTM32搭載の電子半田こてTS-100が故障しました。この半田こては温度上昇が早く、しかも温度設定が楽ずっと使っていたんですが、突然温度設定が安定せず、一気に400°cになったり、してしばらくすると sen errの表示がでます。ファームがいろいろ提供されているのでいろいろファームをアップしても同じです。捨てようかなと思ったんですが、いろいろな種類のコテ先も買ってるしもったいないです。
そこで困ったときのgoogle先生 結構TS-100に関してはこのsen errが多く発生しているみたいでyoutubeでそのものずばりがヒットしました。入力をMOSFETで受けて制御していうようで、この入力の MOSFETが壊れるらしく、しらべても実装されているそのものずばりは、なかなか手に入らないです。たぶんこれだろうとあたりをつけてP-channel dual MOSFET を秋月で調べてみました。FDS4935AでP-CHデュアルチャンネル MOS FETです。でもって注文して交換しました。汎用品らしくて5個200円。 これでばっちり直りました。よかった。



ひさしぶりの電子工作 PCWI01

前から興味があったJH4VAJ OMのPCWI01 リグ-PCインタフェースキットが手に入り作りはじめました。このキットは人気が高いようで配布予定があってもすぐに終了してしまい、なかなか手に入ることができませんでした。リグ-PCインタフェースキットは使っているRIGがFTDX3000なので必要なかったんですが、バンドパスフイルターが充実してるので、いまはやりのFT4あたりで使ってみようと思います。

アマチュア配布のキットはいろいろありますが、このキットはすごく完成度が高くしかも値段がなんといっても安いことです。まったく原価ではないでしょうか? 感覚的にはこの倍の値段でもいいような気がします。アマチュア配布のキットはいろいろ作ってきましたが、部品を集め、仕分けして受付や発送の手間など結構大変です。値段もそれなりのものが多いのですが、これだけのキットが6200円とは、信じられないです。まったくOMには頭が下がります。

IMG_20191119_100754

チップ部品が多いので難易度はやや高めです。このキットは親切でチップ部品は2つぐらい余分にいれてくれてあります。よくピンセットで飛ばしてしまう不器用な私はありがたいです。しかし前に中華のキットでトレーニングしてるので大丈夫でしょう (笑)。
とりあえず抵抗とコンデンサの取り付けが終わりました。ひさしぶりにチップ部品の取り付けで肩が凝りそうです。よくピンセットでチップ部品を飛ばしてしまうのでダイソーの300円とトレイの中で作業してます。飛ばしてもすぐに見つかるのでこれはお勧めです。
完成が楽しみです。

NanoVNA その4 壊れた?

ついにAmazonで2台目をポチりました。中国からの配送で2週間後届いたのですが、箱がぐちゃぐちゃでいやな予感。開けてみるとなんと液晶が割れていて使い物になりません。

IMG_20191015_084709


IMG_20191117_094942

さっそく販売業者にその写真を撮り、連絡するとすぐに代わりの商品を送ってくれました。今度は1週間で届きました。不良品の返送はしなくてよかったみたいで、2台になりました。幸いいい業者さんにあたったみたいです。まあAmazonなんで返品保証はばっちりなんですが、、
液晶は2.8のILI9341 spiインターフェイスのタッチパネル付きなのでaliexpresで600円ちょいぐらいです。これを購入して交換してみました。どうせなら3.2インチにしてもよかったんですが、やはり大きすぎてケースに収まりきらないようなんで2.8にしました。フイルムケ-ブルの半田付けは初めてなんでちょっと心配でしたが、なんとか交換できました。取り外しはヒートガンがないと無理ですね。下のランドがはがれてしまいそうです。これでつごう3台になってしまった。

いろいろやってますが、突然電源を入れると最初のメニューが表示され、それから進まなくなることがあります。おまけにUSBから不明なデバイス記述子とかで認識しない。てっきり壊れたかと思い焦りましたが、ショートでDFUモードに入りファームを入れなおすと直りました。なにしろUSBから認識しないのでなにもできないと思いましたが、USBの制御はRS232CのFTDI(昔の人間)ではなく、もすべてファームから制御されているので、DFUモードで認識すればなんとかなるようです。

しかし最近0.5.0のファーム更新で事件がおきました。いつものようにDFUfilemanageragerでhexファイルをDFUに変換してDfuSeDemoで書き換えたのですが、実行中のバー表示が一瞬赤表示になりました。その時にもう一度実行すればよかったのですが、そのまま電源OFF/ONすると画面が真っ白でおまけにUSBも認識しません。ショートでDFUモードにしてもUSBがまったく認識しなくなりました。こうなるともうお手上げです。困った。
JTAGの端子があるようなんで、そこにST-Linkを使ってそこからなんとか書き換えできないだろうか? ということでST-LinkV2をAmazonで注文してしまいました。まあ660円だしいいか。もっともUSBが完全に死んでいるようなので、できるかどうか不明です。届いたら試してみます。安いのを頼んだから中国からなんで2週間はかかるけど、、
しかしいろんなファームが出てきてわかかめの状態になっているみたいです。私のお気に入りはフォント大きめで2CHしか解析できないけど、hugen79版のNanoVNA-H_AAです。

起動して最初はRECALL 0の内容を持ってくるようですが、本当の最初の内容がよくわからないです。キャリブレーションしてSAVEすると、その時の内容を持ってきてしまうので、うっかり違う画面でSAVEしてしまうと、最初どうだったのかわからなくなります。RESETしても戻らないし、、、、

それからメニュー左に表示されている、DRSTXとかの表示の意味ががよくわかないです。また表示されていないのを表示させる方法は、、、

まあ私の技能ではせいぜいSWRとリアクタンスを見るくらいですけどね。(笑)

12/6 追記 ST-LINKV2でファーム書き込み成功して復旧しました。

DIY Rotating LED Kit POV Soldering Training Kit その2


前のやつに続いて、またBanggoodのこれを作ってみました。いまちょうど12%OFFをやっています。
6ba555d0-4b8d-48cf-b5d9-d1756034469a

しかし今度は結構難易度が高いです。チップ部品の取り付けはなんとかなるけど、写真のように基盤の表と裏にそれぞれLEDチップの+と-を挟んで半田つけなんて経験したことないし、えらく難易度が高い。初試行錯誤でいろいろやってみましが、なんとかLEDを裏返しにしてマスキングテープに貼りつけて上から基盤をを押しあてるようにして半田付けをしました。
ここまでがちょっと大変。

DSC03425

DSC03431

でもって完成したんですが、まだところどころ点灯していない。orz  これから直したいのですが、チップLEDの手持ちがない。実はこのLED長く半田こてを当てると電極部分が取れてしまうんです。このシリーズのキットは中華製にしては珍しく、チップ部品の予備のパーツを入れてくれてます。特に1個しかない部品に関しても2個入れてくれています。LEDにしても10個ぐらい予備があったんですが、どうも最初の試行錯誤で予備を使いきってしまいました。製作上の注意点です、やはり受光LED(紫)の極性が長いほうが-になっていることです。これを間違うと同期が取れません。

完成はしたんですが、今度は入っているプログラムのhexコードを書き込みソフトのSTC-ISP読み取れなくて苦労しました。ファイルはRARで圧縮されていて結構文字化けだらけです。たぶんRARの日本語環境のRAR解凍ソフトの問題だと思うんですがいろいろな解凍ソフトを試しましたが、結局入っているhexコードは全部全く読み込めないこが判明しました。それでしかななく再コンパイルしてhexコードを作り直して読み込めました。

方法ですが、拡張子UV2のファイルがコンパイルのプロジェクトになっているので、そこを変更します。前のと同じように6つの例が入っていますので、そのフォルダの中にDIY视界.Uv2というファイルがあります。これをDIY.TXTとかにRenameしてから編集して中ほどにあるOutName (DIYハモス・というのを(DIY)に変更します。するとダブルクリックで開けるので、それでそのまま再コンパイルしてhexコードを作り直します。するとDIY.hexができますのでこれだとSTC-ISPで読み込めます。
あとは前のと同じようにSTC-ISPで書き込むのですが、CPUはSTC15L2K16S2 クロックは18.432にしてDownload/Programを押した後、VCCを接続すると書き込みが始まります。

DIY Rotating LED Kit POV Soldering Training Kit Upgraded Version


なんだか無性にチップ部品の半田つけがしたくなってbangoodのDIY Rotating LED Kit POV Soldering Training KitUpgraded Versionを購入してしまいました。組立はチップLedがたくさんあるので手間はかかりましたが、比較的簡単にできます。このキットの間違いやすいところは、原点検出用の発光用赤外線ダイオードと受信用のダイオードの極性が逆になっているところです。これを間違うと同期がとれず、文字の表示がでたらめになってしまいます。でたらめになる場合はまずこれを疑ってください。発光用はデジカメで見るとみられるのですが、紫色の受光ダイオードは見られません。リードの長いほうが-側です。

DSC03424

これが回転して、下記の用に表示します。
DSC03414

ただ表示用の設定とか書き込みに結構苦労しましたので参考までに。。。
ソフトはふつうに解凍すると中国語なのでファイル名が文字化けしてしまします。それで中国語に対応した解凍ソフト zipextractorなんかを使います。解凍ソフトはいろいろありますが、これはインストールしなくとも使えるのでお勧めです。

stc-isp-15xx-v6.70  これはCPUへの書き込みソフトです。最新版がstc-isp-15xx-v6.85pになっているのでそちらを使った方がいいです。これはPl2303とかのCOMポート用のUSBコンバータで書き込みむのですが、P30がTXDでP31がRXDになります。使用方法も全部中国語なんで苦労しましたが、下記のように設定します。

P1

MCU Typeは IAP15W4K61S4を選択 ボーレートは14400ぐらいで適当に。ただInput IRC freqencyだけは18.432に設定してください。これに結構はまった。そしてOpen Code Fileで書き込むHexファイルを指定します。
Download/Programで書き込みますが、まず232CコンバータのピンのVCCを外した状態で接続します。そして書き込みのボタンを押してからVCCを接続すると書き込みが始まります。全部接続状態だと書き込みが始まりません。ボーレート2400だと結構時間がかかります。

入っているHexファイルはソースコード同梱で1から7まで7種類ありますが、7が多機能の最終版で、この7のMost functional effect combinerのHexファイルを書き込んで動作確認をします。これはリモコンの番号1から4を押すと、表示するモードをいろいろ変えられます。まずは中国語が表示されますのでそれで動作確認をします。
単に文字を表示するだけだったら 2 character display programでできます。これは文字コードは下記と同じ手順で書き込めますが、241行名に if( j>768 ) の数字を文字数x16の値に変更してください。768だと48文字です。その数を指定しないと原点検出がうまくできず2週目からうまく表示できなくなります。

表示が全部中国語なのでそのソースコードをいじって好きな文字に表示するようにします。
コンパイル用のソフトはKEIL UV3 8.08 を使います。これなんかインストール後ライセンズをクラックするソフトが付属していていいんだろうか。。。
各添付のサンプルのフォルダの中の拡張子がUV2のファイルがプロジェクトファイルなので、それを直接編集します。なんかDIY篇順.Uv2とか変な名前になってますが、、その中の40行目にある OutName (DIYハモス・というのを OutName (DIY)に変更します。

P2

このソースはいろいろ注釈いれてくれているのだけど、残念ながら文字化けして意味不明です。なんとか苦労して読んでみるとPicture.cの中に表示データが入っています。。最初はBMPの表示みたいで、文字データは240行目あたりから入っています。Hexコードの生成はツールバーの一番下の左から2番目のアイコンをクリックするとできます。まずはこの状態でコンパイルして先ほど指定したDIY.HEXができるのを確認します。

文字の生成ですが、ZKのフォルダになかにあるPCtoLCD2002.exeを使います。これも文字化けがひどいのですが、なんとか使えます。初期設定は下記のようにします。特にコードを間違うとうまくコードが生成できません。

3

これで下の窓に文字を入れて生成するとできますが、反転させないと回転部の表示が鏡表示になります。反転は左下の2番目のアイコンでできます。
これで生成したコードコピーして、上記UV2Picture.cの240行目あたりに上書きすると文字が書き込めます。


DSC03416

DSC03417





Wemos D1 MINIでKT0915 DSPラジオ

とにかく安いNodemcu D1MiniがWemosから出てきました。ESP8266関連でこれはいいです。
なにしろショップのAliexpressで4$です。この値段でピンヘッタはオスとメスの2種類ついているし、すごいとしか言いようがないです。また対応のシールドも結構出てるようで、今後のの成り行きではこれがNodemcuも主流になるような気がします。
今回私はAliexpressはPaypalが使えないので、敬遠してるのでEbayで購入しました。HKの業者に頼むと1週間ほどで入手できます。
ということで試しにKT0915を使ったDSPラジオを作ってみました。3Vで動作するので電源が楽です。
電源は3Vのコンバータモジュール 5個で2.35$です。
KT0195はAitendoのモジュールに変換基盤をつけてます。水晶はクロックモジュールから流用しました


DSC03403

これは上部に日時を表示させていますが、WifiでNTPに接続して時間を較正してから、表示させています。一応RTCモジュールを載せていますが、これにすると内部の時計だけで、RTCモジュールは必要ないかもしれません。この辺は先人のmacsbugさんのBLOGに感謝です。このBLOGにはD1Miniの情報も大変参考になります。実は私ここに書かれていたのでD1Miniの存在を知りここに買ってしまいました。
またここのコードはものすごくきれいで大変参考になります。私が書いたものとえらい違いです。

動作ですが、ロータリエンコーダで周波数を変更したかったんですが、ESP8266の割り込み処理がいまいちよくわからず、とりあえず、放送局をタクトSWでダイレクトに指定するようにしています。もう一つのタクトSWは音量調整用です。

NodeMcu WIFI Development Board


NodeMcu WIFI Development Board買ってみました。別にESP8266のDEV-KITを買ってもよかったんですが、これはESP8266Eに中華お得意のCH340USBがついています。もっとも値段自体はArudinoUNO互換機よりも少し高いですが、1000円以内で買えます。これはもともと最初に入っているファームはNODEMCUが入っていて、LUAで使うようになっていますが、やはり使い慣れたArudino IDEで使いたいということでちょっと使ってみました。
Arudino IDEではNodemcu1.0(ESP-12E)でちゃんとこのボードが選択できるようになっています。そしてこのボードを選択すると、面倒な書き込みモードにする必要がありません。これは便利です。Arudinoと同じ感覚で使えます。
試しに1.8TFT 128X160のモジュールを表示させてみました。
ESP8266用のライブラリは、Adafruit-ST7735-LibraryをESP8200用にForkしていて問題なくすぐに動きました。
スケッチのPINは
RST 05
CS   15
D/C    04
に変更してあります。
DSC03369

ただ最初に少しはまったのが、GPIOのPINの表記が違っています。
NODEMCU_DEVKIT_V1_0_PINMAP


こんなふうになっていて読み替えてつながないとダメです。

電子はんだごて TS-100

電子工作にかかせないものといえばはんだこてですが、いままでずっと定番のHAKKOのFX-600を使っていました。セラミックヒータなのですぐに使えて便利なんですが、なんといっても電源の切り忘れがしよっちゅうあります。まあ温度調節できるんで、火事の心配はないんですが、ちょっと気になります。
それでお得いのBanggoodでTS-100がセールで58.58$になってたんで購入してしまいました。これははっきりって高いだけあってすごいです。最高温度は400度までなんですが、HAKKOと比べると温度の表示がちょっと高いかもしれません。私よくポリウレタン線の被覆はがしに使うんですが、HAKKOの場合ダイヤルを420度に設定しないとうまく被覆が溶けてくれませんが、これは350度設定で十分溶けてくれます。普段のはんだでは270度くらいで十分使えます。
ボタンを2つ長押し もしくは3分間使わないと自動Sleepに入りますし、(これはUSBにつないで時間は設定できます。)
温度調整もボタン長押しで簡単にできるし操作性も抜群です。また写真を見てもわかるようにすごく小型で軽いです。


DSC03366

これちょっと難点は電源が12Vから24VのACアダプタなんです。またDCジャックのコネクタがセンターが2.5mmのジャックになっているので注意が必要です。
ヒートアップ時間は ACアダプタが12Vで17W 40秒 16Vで30W 20秒 19V 40W 15秒 24V 65W 11秒といった仕様なんですが、ほとんど待たずにすぐに使える感覚です。
このACアダプタはちょうどノートPCのACアダプタが使えます。私はハードオフで500円の19V富士通製ACアダプタを買って使っています。最近のノート用ACアダプタは内径が小さくて外径が大きいものが多いので注意が必要です。旧式のノートPC用で標準のジャックだとピッタリです。
また消耗品のこて先が専用なのでちょっと高いです。

DSC03368

なおUSBにつなぐとCONFIG.TXTというファイルが1個あるだけで中身は

T_Standby=200   #(100~400)
T_Work=300      #(100~400)
Wait_Time=180   #(60~9999)
Idle_Time=360   #(300~9999)
T_Step=10       #(5~25)
Turn_Off_v=10   #(9~12)
TempShowFlag=0  #(0,1)
ZeroP_Ad=262    #ReadOnly

になっています。これで最初のデフォルト値を設定するようです。
なおいろいろファームがでていますが、このファームアップはものすごく簡単で両方のボタンを押しながら電源を接続するとDFUモードに入るのでその状態で、USBに接続すると普通にUSBドライブとして認識されますので、そこへファームのBINファイルをコピーするだけです。DFUモードにしないと容量が少なくてコピーできません。
いまままでいろんな機器のファームをUPしてきましたが、こんなのは初めてです。こうでなくちゃね。

K6BEZアナライザ用のArudinoとTFTシールド

前にBangoodで購入した安い2.4TFTシールドですが、これがかなり難物でした。以前AdafruitのTFTシールドの記事を書いたんですが、6000円近くもしていかんせん高い。しかしこのBangoodのは送料込みでタッチペンまでついて6.49$です。これ安いだけあっていろんなロットのものがあるみたいです。まず最初に購入したものは、IDが0xC505というもので満足に動くライブラリがない。やっとPP_TFTというのを見つけてなんとか動いたのですが、タッチパネルがまったく使い物にならない。最近タッチペンが付属するようになって、AdafruitのTFTLCDで動くとのレポートがありましたので、また購入してみました。これはちゃんとAdafruitのTFTLCDのライブラリで動き、またタッチパネルも正常に動作します。そしていざアナライザ用にと、、、しかし私の考慮不足で、なんとA0からA5までこのシールドは使ってます。ArudinoUNOはAtmega328PUを使っているので、アナログピンはA5までしかありません。K6BEZアナライザでは2つのアナログ入力がいるので足りません。困った。もともと、Nanoなんかに使われてるAtmega328AUではA6,A7が使えるようです。また最近の互換機で電源がMicroUSBを使っているタイプではAtmega328AUを使っているものが多いようです。
それでGoogle先生に尋ねるとSIGH様のBLOGを発見。この互換ArudinoUNOって前にBangoodで買ってなかったけ、。。ありました、A6,A7のランドがちゃんと出ています。さっそくソケットを埋め込んで
ました。使ってみました。上記のBlog通りにAurdinoIDEを設定してやると、問題なく使えました。

DSC03363


これでなんとか安いタッチスクリーンでのアナライザを作ることができそうです。バンド周波数を入れられるようにしてみました。
DSC03360

< を押すと周波数UP > を押すと周波数Downです。、、、▲▼を表示させるコードがわからないので逃げました。(笑)とりあえずスケッチ上での表示はできたんですが、、
とりあえずここまで最近ちょっと忙しくて触る暇が取れません。完成は正月休みかな、、、

DDSジェネレータ Si5351A到着

前に注文していたAdafruitのSI5351が届きました。ここに直接注文するのは初めてなんですが、なにしろ国内ではどこも販売していない。と思ったら11月15日にストロベリーリナックスで発売されていたようですね。1個900円。同じくらいですね。しかしSi5351単体と水晶のみの基板です。
それに引き換え同程度の値段Adafruitの基板では、I2Cのプルアップ抵抗、レベルシフト用のバッファアンプついている。また5Vでも使えるのでまあいいかと思っています。送料と時間は余分にかかりますが、、、
このSi5351Aの仕様は8Khzから最高160MhzまでDDSで発振できることです。Si5351の仕様では220Mhzぐらいまで出せるようです。またインターフェイスがI2Cで制御できますので楽ですね。Adafruitではライブラリも出ていますのでArudinoで制御するのは楽ですね。

注文したのが、12月7日で12月24日に届きました。U.S. Postal Service First Class Mail なんでこんなもんでしょう。一応トラッキングNoはあるんですけど、USA国内向けなのでまったく役に断ちません。送料が$9.75かかるので、ちょっと3個大人買いをしてみました。といっても1個7.95$ですが、、AD9850のモジュールと値段は同じくらいですね。
しかしかなり梱包はいい加減です。A4サイスの薄いナイロン製に封筒で届きました。

DSC03357


ととりあえずピンを植えてコネクタをつけてみました。
DSC03358

K6NEZアナライザのDDS AD9850からら楽に移行できそうです。これでちょっと前に作ったTFTのアナライザの周波数を1Mhzから145Mhz帯まで拡張できるかどうか試してみます。これがうまく動いたらAD9850は卒業です。

ESP8266でセンサをつなぐ

まえにArduinoでセンサをつないで、1602の液晶に時計とか湿度を表示したりしましたが、そういえば前にOLED液晶を買っていたのを思い出しこちらで試してみました。このOLEDは画面が0.96インチで画面はちょっと小さいのですが、1602タイプの液晶と違い、ものすごく画面鮮明です。また省エネです。このOLED液晶はAdadruitのSSD_1306ライブラリで動くのですが、てっきりカラー液晶だと思っていて、ライブラリからテストを書き込むと黄色と青の表示が2分割されていておかしいなと思っていました。今回試してみて初めてわかったのですが、なんとこのOLEDはもともとモノクロタイプで上部に黄色、下部にブルー表示させるようになっているものと分かりました。ライブラリはESP8266で使うにはESP_Adafruit_SSD1306.hを使います。

どうせ省エネをめざすならば、Arduinoでなくいま話題のESP8266をを使ってみました。しかし今回初めて使ってみて、すごいデバイスですね。Wifiで接続できて、しかも安い。同じような目的のXbeeならば10倍ちかくしますもんね。アナログ入力が1つしかないのが残念ですが、まあこれからすこしするともっと多機能なものがでてくるような気がします。

もうすでに国内でも話題になっていて先人たちがいろんな情報を上げてくれています。そんなに苦労せずに、ArudinoのIDEで自分の慣れている環境が作れました。またいろんなスケッチを上げてくれているので、下記の写真のような表示は製作に2日、スケッチの方は、先人たちが上げてくれているスケッチの切り貼りだけで1日足らずでできました。
DHT11モジュールとRTCはDS3231を使っています。このDS3231はAmazonで205円で、中国からなので10日ほどかかかります。

ESP8266は電源の3.3Vがシビアで特にWifi通信をすると、電源が弱いと不安定になります。100円ショップの9Vアルカリ電池から秋月のTA48M033Fで3.3Vを作っています。単3 4本でも十分動くのですが、省スペースなのでこちらにしました。上部のコネクタはUSBシリアル用のコネクタです、ATMEGA328と違いDTRが必要ないので、PL2303の安いコンバータが使えます。ただし、このUSBコンバータの3.3Vは動くことは動くのですがすごく不安定です。最近の安い互換Arduino-UNOでは3.3VのコンバータでもAMS1117を使ったりしてますので、電源だけこれからとれば、十分動作するでしょう。純正UNOでは動かないそうです。

ESP8266はアップロードするのにGPIO0をGNDに落としたりするのが面倒ですが、まあ動けば書き換えることもないわけで、これが正解かもしれません。
なお温度の℃の表示は1602では
  lcd.print((char)223);
  lcd.print("C ");

SSD1306では
  display.print((char)247);
     display.print("C ");

です。SSD1306はちょっと変な感じがしますけど、、。

DSC03356


ESP8266を購入するときこのESP-07とESP-05を買ったんだけど、ESP-05の方の使い道がわかりません。なにしろスケッチをかくのにGPIOの端子が全くないので、書き込めない。もしかしてこれはATコマンドモードのみでいろいろ設定してWifiの通信モジュールとして使うものなんかな? ファームを最新のものにしたいんだけど、できないです。

Arudinoで温度 湿度 大気圧 センサーをつなぐ


結構arduinoではいろんなセンサがあります。今回日時、温度、湿度、大気圧を2004A液晶で表示してみました。
最初1602の液晶でで表示させてみたんですが、温度 湿度 時間だけならいいんですが、大気圧もあるので1604の液晶(2004A)を使いました。

まずセンサですが、温度 湿度は定番のDHT11 大気圧はGY-68を使いました。でいずれも500円ちょいで買えます。時間のRTCはDS3231でなんとリチウム電池付きで150円くらいで買えました。
I2C接続のために、GY-68がGNDとVCCのピンアサインが違っていましたので、接続にちょっと細工をしています。これ3.3Vの3端子レギュレータが搭載されているので便利ですね。

DSC03351

Arudinnoはこれを使いました。これ今回の実験ではのような用途にはめちゃくちゃ便利です。
DSC03352

表示させた場合
DSC03350

ライブラリは
#include <dht.h>
#include <Adafruit_BMP085.h>
#include <LiquidCrystal_I2C.h>
これとtime.hが必要です。
しかしなにも考えずにライブラリだけを入れてあとはスケッチの例で動作するのを確かめてから、その例にならいあとは、呼び出すだけでそのまま使えるというのはすごいですね。
またArudinoのリアルタイム処理のすごいとこには関心します。

あとRTCの時間設定が結構めんどくさかったりします。ESP8266のWifiモジュールも手に入れましたので、Wifi経由でNTP時間をとってきてセットしてみます。しかしこのモジュールは3.3Vなんでどうするか悩み中。UNOでは電流容量が小さすぎて動かないようだし、、、

この最終目的は前にRaspberry-PIでaprsサーバを立ち上げましたので、(今も稼働中です。)それと連携して気象ステーションをあげようかなと思っています。気象ステーションはAmazonあたりで売っているんですが、結構いいい値段がします。Piとの連携はメドがたったのですがArduinoの方がまだだったので実験がてら、、、
まあこれで風力とか雨のセンサを追加すると結構な値段になるような気もします。途中で挫折するかも、、、
まあ いつになるかわかんないですけど、、、、

K6BEZ DG7EAO アンテナアナライザにバンド選択を追加 その3


すっかりArduinoのプログラミングにはまってしまい、今度はロータリエンコーダを使って周波数を設定できるようにしてみました。前にタクトスイッチで周波数を選択できるようにしたのですが、短押しで周波数+ 長押しで桁移動、とさらにスタート周波数とストップ周波数を入力するには使えなくはないんですが、操作性にかなり問題がありました。
それでロータリエンコーダを使い、周波数設定を簡単にできるようにしてみました。できればスイッチ付きのエンコーダを使えば、もっとスムーズになるかも、
エンコーダの制御にはrotary.hの割り込み制御を使わさせていただきました。その関係でロータリエンコーダのピンは2と3の固定になります。
タクトSWはアナログピンのA2に配線しました。


DSC03334

DSC03335

まずエンコーダを回すとStart周波数が設定できます。そしてタクトSWを押すとStop周波数を設定できます。
SW長押しでリセットです。

動作は下記になります。



上記の改良版です。Youtubeのリンク先にスケッチを置いてあります。





しかしDG7EAOのアラライザにこんなにはまると思わなかった。このタイプのアナラザは精度はいまいちなんですけど、とにかくArudinoのプログラミングがとても楽しいです。



K6BEZ DG7EAO TFT アンテナアナライザにバンド選択を追加 その2


前にタッチスクリーンでバンドセレクト機能を追加しましたが、まあコストの点で安い2.2TFTを使ってタクトスィッチでバンドセレクト機能を追加したののですが、これで最終形態です。TFTのライブラリはオリジナルではUcglibを使っていたのですが、AdafluitのILI9341に移植しました。

タクトSWはD2とD3に増設します。回路図はDG7EAOのサイトにあります。TFTは22 inch 2.2" SPI TFT LCD Display module 240x320です。3.3Vの液晶なんでちょっと抵抗等の配線が面倒ですが、ebayで送料込みで600円ちょいで買えるのが魅力です。

なおarudinoはnanoではなくUno互換機で作りました。
移植にあたっては上記回路図ならば、下記のスケッチで動くはずです。

#include "Adafruit_GFX.h"
#include "Adafruit_ILI9341.h"

//ILI9341 2.2 TFT 240x320 SPI Adafault driver
#define TFT_DC 6        //Wiring
#define TFT_RST 4         
#define TFT_CS 5
#define TFT_MOSI 11    //Wiring
#define TFT_MISO 13   
#define TFT_CLK 10     //Wiring

Adafruit_ILI9341 tft = Adafruit_ILI9341(TFT_CS, TFT_DC, TFT_MOSI, TFT_CLK, TFT_RST,TFT_MISO);

//Wiringと書いてあるところは実際に配線してください。他はDUMMYです。
  
今回2種類作ってみました。
まずは開始周波数と終了数は数を任意でセットできるようにしてみました。
この応用で簡単に周波数指定のDDSが作れそうです。

SW2 周波数指定 長押しで桁移動
SW3 周波数スキャン 長押しでリセット

DSC03314

そして上記をちょっと使ってみたのですが、任意で周波数のセットができるのはいいのですが、短押しで数字指定 長押しで桁移動と操作がすこし面倒です。やはり周波数指定はロータリーエンコーダを使ったほうがいいですね。あまり部品を増やしたくなかったので今回は見送りました。

それでバンド選択をすこし簡単にしてみました。こちらのほうが操作性がいいですね。
SW2 バンドスキャン 長押し リセット
SW3 バンドセレクト 押すたびに 3.5 7 10 14 21 28が選択できます。

DSC03313

DSC03312

動作は下記のようになります。


これでどうやら最終形態で落ち着きそうです。SWRの絶対値が信用できないとか、連続でScanすると波形が乱れる問題が残っていますがいものところ原因不明です。スケッチですがあまりにも汚いので公開は遠慮しておきます。どうしてもというのでしたらメールをください。

それからおまけで下記のArudinoUNO互換機をBangooで見つけました。なんとUSBがスマホと同じMicro-B端子になっています。いままでどうしてもシールドを重ねたとき、でかいUSB端子が接触して気を使っていたのですが、その心配がないです。値段も送料込み4.52$です。
いままでAitendoのびんぼうでいいのを使っていたのですが、値段もこちらのほうが安いのでこれにします。
MINIUSB端子よりMICROUSB端子のほうが耐久性もいいようなので、、

DSC03315






K6BEZアンテナアナライザにタッチスクリーンその2

いろいろ試行錯誤してタッチパネル使用のスタンドアロン型K6BEZアンテナアナライザの最終形態?を完成しました。なにしろArudinoは全くに素人なんでいろいろライブラリ関係で苦労しましたが、なんとか動きましたので公開します。
うちの3.5 7 14 21 28バンドのバーチカルアンテナ ダイヤモンドKV-5の1から30MHZのスキャン表示

DSC03280

3.5Mhzのスキャン表示
DSC03281

なお最低Swrの値は結構甘いみたいですが、アンテナ調整には十分使えるでしょう。

今回は前回と違いUcglibではなくAdafruit純正?のILI9341とAdafruit_GFX.hに移植しました。フォントはあまりきれいではないんですけど、、
各バンドはALLを選ぶと1から30Mhzまでスキャンして全体のSWRカーブを表示します。Clrはグラフ表示のクリアでScanを押すとSweepします。
残念なことは今回使ったAdafruit 2.8インチ TFTタッチシールド v2の値段が5000円ぐらいで、少し高いことです。Bangooあたりで売っている1000円以下のタッチシールドで動かないか、いま試しています。これがかなりの難物でバージョンによってドライバのICが違うみたいで、苦労しています。またA0からA5までは使っているのでDDSがDDSの制御ができないので無理かもしれませんね。

動画はこんな感じです。中華なんちゃってLCDより相当早いですね。さすがは高いだけあります。



youtubeのリンクに初心者の書いたスケッチで恥かしいのですが公開しています。
今後ですが、タッチシールドを使わずにタクトSWを使って周波数選択するようにするスケッチも書いてみます。

TFTアンテナアナライザにタッチスクリーン


タッチパネルでバンド選択をするようにしてみました。
使ったパネルはAdafruit 2.8インチ TFTタッチシールド です。


DSC03277

DSC03275


動作は下記のようになります。


タッチシールドはいろいろ探してみましたが、できるだけ安いものということで、単に以前にに購入したTFTにタッチシールドがついたものを購入してみましたが、タッチパネル用に5つもピンが必要なようです。
それでやむなく少し高いのですが Adafruit 2.8インチ TFTタッチシールド v2を使いました。これだったら3から9ピンまで自由に使えます。そして、これでしたらUgclibはそのまま使えますので、移植も楽です。
UgclibはadafuiltのAdafruit_ILI9341に比べるとすこし遅いのですが、文字のフォントがきれいです。
これでようやく一段落つきました。タッチシールドのチャタリングにえらく苦労しましたがいろいろArduinoの勉強になってなかなか楽しく遊べました。
まあコストを考えると、前に書いたタッチパネルなしのTFTを使ってSWでバンド選択できるのが一番です。

DSO138 オシロスコープキット

中華製のオシロスコープキットを作ってみました。オシロは持ってるんですが、うん10年前のもので性能もいまいち、それでUSBオシロを検討してたんですが、結構な値段がします。bangood.comで下記のものを見つけました。
す。ここはなんでも今流行のドローン関係が充実してるらしく人気のようです。まあPAYPALが使えるのでそれが一番ですけど、、、
このサイトはキットが充実していて見ていても結構楽しいです。

http://www.banggood.com/DSO138-DIY-Digital-Oscilloscope-Kit-SMD-Soldered-13803K-Version-p-984002.html
8月10日に注文して19日に届きました。中国としては異例に早いです。スペックは

Maximum real-time sampling rate: 1Msps
Accuracy: 12Bit
Sampling buffer depth: 1024 bytes
Analog bandwidth: 0 - 200KHz
Vertical Sensitivity: 10mV / Div - 5V / Div (1-2-5 progressive manner)
Adjustable vertical displacement, and with instructions
Input impedance: 1MΩ
Maximum input voltage: 50Vpp (1: 1 probe), 400Vpp (10: 1 probe)
Coupling modes: DC / AC / GND
The horizontal time base range: 10μs / Div - 50s / Div (1-2-5 progressive manner)
With automatic, regular and one-shot mode, easy to capture the moment waveform
Available rising or falling edge trigger
Adjustable trigger level position, and with instructions
Observable previous trigger waveform (negative delay)
Can freeze at any time waveform display (HOLD function)
Comes 1Hz /3.3V square wave test signal source

性能もこの値段$23.99(送料込)だと200kまで測定できるので、まあまあではないでしょうか。
このキットはチップ部品をあらかじめ取り付けてあるものと、ないものがあってないものは、$20.99と少しお安くなっています。1608サイズのチップ部品は取り付けられなくはないんですが、なんといっても老眼できつい。さらにピンセットでよく飛ばしてしまいます。飛ばしたらまず見つけるのは絶望的です。でこの手のキットはチップ部品の予備がないと怖くて組立できません。それで4$ぐらいにはかえられないのでチップ部品取り付け済のキットを購入してみました。

もうちょっと高級品ならば
http://www.banggood.com/DSO068-DIY-Oscilloscope-Kit-With-Digital-Storage-Frequency-Meter-ATmega64-AVR-Microcontrol-p-981017.html

があります。これはまあキットといよりほとんど完成品ですね。

このキットはなんと中華製品には珍しくカラー印刷の組立説明書と操作説明書が付属しています。結構詳しくて回路図はもちろん製作後のtruble shootingまでついています。
製作途中の様子です。

s-DSC03242

チップ部品がないおかげで、製作は容易で不器用な私でも4時間ほどで組立完了しました。部品も過不足がなくパ-フェクトでした。

s-DSC03244

でもって完成後

s-DSC03246



s-DSC03249
カラー液晶も結構きれいです。

s-DSC03256
周波数カウンタとか電圧計とか 機能的にも十分ですね。

昔 秋月で発売されていたオシロより数倍いいですね。しかしこれが3000円足らずで買えるのはすばらしいです。しかし日本だとLCDだけで2000円以上するので無理な話かな。
このままでもいい気はするけど、ケースはどうしようかな?


k3ng cwkeyer

JH1LHV OMのこの記事に刺激されて作ってみみました。たいへん詳しく解説されており、私AURDINOは素人なんですがなんとか完成することができました。

s-DSC03232

OMの記事とおりに作れば動くんですが、ちょっとaitendoの激安I2CキャラクタSTN液晶(16文字x2行) [1602A-4]モジュールで苦労したのでちょっと忘備録代わりに、、、上記液晶は1602系統のi2c接続では最安だと思うんですが、あまりAURDINOでの資料がなく、すこし苦労しました。

まずI2C接続なんでそれ用に半固定VRとジャンパーしてピンで本体と接続。動作するライブラリ探しに苦労しました。いろいろ試しましたが、結局オレ工房さんのST7032のライブラリで動作しました。
まず上記のgithubからダウンロードして解凍したらフォルダをST7032にリネームしてAURDINOのlibralyフォルダに入れます。そしてK3NGのスケッチを変更します。optinon.fの#define FEATURE_LCD_YDv1を有効にします。そして本体のLiquidCrystal_I2C.hをST7032.hにリネ-ムしします。
そして下記の部分を

#if defined(FEATURE_LCD_YDv1)
  ST7032 lcd(0x3c);
// LiquidCrystal_I2C lcd(0x3c);
//I2CLiquidCrystal lcd(0x3c, (uint8_t)127);
//  LiquidCrystal_I2C lcd(0x27, 2, 1, 0, 4, 5, 6, 7, 3, POSITIVE);  // for FEATURE_LCD_YDv1; set the LCD I2C address needed for LCM1602 IC V1
#endif

にします。スレーブアドレスは0x3cです。これで動くと思います。

田吾作CQマシンを作りました。

ひさしぶりの電子工作です。JL4BLD OMが配布されているCQマシンのキットです。
こないだ6M&Daownのコンテストに10数年ぶりに参加して体力の衰えを感じ、
(呼ばれないのにCQの連発ってのは結構きつい)それでこんな便利なものがあるならばと
思いきって注文してしまいました。
これ価格はケース付のフルキットが8500円と ケースなしが4500円と格安です。
それでいて機能はすごいです。録音は2CH24秒 切り替えし時間2秒から12秒で調整可能
出力レベルも調整可能。たぶん必要な機能は全部網羅されているんではないでしょうか?
制作方法や詳しいマニュアルもCD-ROMがついていたりして親切です。

作ってみて。
難易度はそんなに高くないです。基盤がすこし小さいので老眼にはすこしつらかったですが、、
もう少し基盤が大きくてもよかったかもしれません。(抵抗やダイオードを立てて実装する必要
があります。)
ケースの高さがあまり高くなく、基盤をスペーサでケースに入れてしまうとピンヘッダがふたに
あたり、うまく締まりません。ピンヘッダを折り曲げて半田つけするかスペーザをワッシャに変えて
高さを低くるとふたが閉まりました。
赤色LEDはフルキットで注文した場合、PLAY-SWに内蔵されているので、付属のLEDは使わなく
ていいです。
最初完成して初めて電源を入れたとき、Play釦をおしてもピッと鳴るだけで、なにも動作せず
あせりました。原因は本体基盤ではなくスイッチ基盤でPlayとOnの間が半田がブリッジしてたんですが、
本体ばっかり調べていて、原因判明まで、結構時間がかかりました。
なにはともあれ、楽しめたし、本当に実用的なキットで満足しています。
DSC03133





プロフィール

nyantaroblog

記事検索
ギャラリー
  • UV-K5の通信ケーブルについて
  • RTL-SDR V3 FTDX3000 cwskimmer
  • RTL-SDR V3 FTDX3000 cwskimmer
  • RTL-SDR V3 FTDX3000 cwskimmer
  • direwolfでRA-35+xastir
  • direwolfでRA-35+xastir
QRコード
QRコード
アクセスカウンター
  • 今日:
  • 昨日:
  • 累計:

HamLife.jp
  • ライブドアブログ