1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

バーアンテナでDCF77標準電波を発信するMatterデバイスを作る

Last updated at Posted at 2024-12-08

DCF77標準電波トランスミッタ

電波時計のためのDCF77標準電波を発信するMatterデバイスを作ります。

IMG_7997.jpg

以下の記事でM5StickCを使ってポータブルなDCF77標準電波トランスミッタを作りました。今回は据え置きでの運用に耐えうるよう、アンテナを付けて4m程度の距離で通信できるものにしました。

ソフトウェア

M5Stamp picoにTasmotaをWeb Installerでインストールし、追加アプリ"DCF77Transmitter.tapp"をTasmotaにアップロードしてMatterの設定して完成。

ハードウェア

アンテナは下記サイトを参考にしてPWMの出力をアンプを介してバーアンテナで送信しています。

パーツリスト
・抵抗  ・・・ 82Ω x1, 330Ω x1
・コンデンサ  ・・・ 6800pF x1
・AMバーアンテナ ・・・ BT360CF x1
・MOSFET ・・・ 2N7000 x1
・コントローラ ・・・ M5Stamp pico x1

回路図
電源は5vのUSBアダプタとしました
IMG_7999.jpg

実装イメージ
pinにはM5Stamp picoを挿します
IMG_8005.jpg

ファームウェア書込み

M5Stamp picoには、"Tasmota (english)"を選択して書き込みます
【Tasmota WebInstaller】 https://tasmota.github.io/install/

a1.png

そのままWiFi接続をして(2.4GHzのみ)
image.png
繋がったら、VISIT DEVICE
image.png
M5Stamp内のWebサーバに入れます。ここで設定していきます
main.png

configuration -> Configure Other
TemplateをM5Stamp pico用に書き換えます
【Configuration】https://templates.blakadder.com/m5stack_m5stamp_pico.html からコピペして

a2.png

Activateにチェックを入れてから「Save」します

自動リブートしたら、configuration->configure module
Module typeをM5Stamp Picoに切り替えて、
GPIO25をPWMに変更します。識別は1

a3.png

Tool->Consoleで黒い画面を立ち上げて、日本のlocaltimeに設定します。
tools.png
「 timezone +9:00 」と入力すればOK。ログのタイムスタンプで正しく設定されたか確認。
timezone.png

GitHubからDCF77Transmitter.tappをダウンロード

Tool->Manage File systemで、tasmotaの追加アプリ( DCF77Transmitter.tapp )をアップロードします。
a4.png

一旦、リブートします

起動後は、Off状態になっているため、M5Stampのボタンを押すとOnになってLEDが点灯します。少し待ってコンソールログに以下のような"DCF:"ログが出れば成功です

21:33:17.411 TAP: Loaded Tasmota App 'DCF77Transmitter.tapp'
        :
21:33:33.004 DCF: Out of sync
21:34:00.016 DCF: Tue 26.11.24 21:35 CET: 0-00000000000000-000101-10101100-1000010-011001-010-10001-001001000

続いて、configuration->configure matter
Matter enableにチェックを入れてから「Save」します
image.png
自動リブートしたら、configuration->configure matter
Add to Configurationで(Type = Relay, Parameter = 1)のエンドポイント追加
a6.png
Matterデバイスとして参加できるようにするために Commissioning openにチェックを入れて「Save」します
a5.png

コンソールログには以下のような"MTR:"ログが出ます

00:00:06.011 MTR: +Add_Event (CRIT     15001) [00]0028/00 (StartUp) - 14.3.0.0
00:00:06.016 MTR: +Add_Event (CRIT     15002) [00]0033/03 (BootReason) - 1U
00:00:06.018 MTR: Configuring endpoints
00:00:06.019 MTR:   endpoint =     0 type:root
00:00:06.031 MTR:   endpoint =     1 type:aggregator
00:00:06.035 MTR:   endpoint =     2 type:light3
00:00:06.039 MTR:   endpoint =     3 type:relay relay:1
00:00:06.041 RSL: RESULT = {"Matter":{"Initialized":1}}
00:00:06.043 MTR: Starting UDP server on port: 5540

HomeKitへの参加

Commissioning openの状態で Manual pairing codeが表示されます
image.png

以降、iPhoneのHomeアプリでデバイス追加していきます
IMG_7954.jpg
アクセサリを追加->その他のオプション->番号入力します
IMG_7955 - コピー.jpg

「認定されていない」旨の警告が出ますが、このまま追加してどんどん進めます。
ブリッジ1個と、照明1個、コンセント1個が認識されればOKです。
コンセントにはそれらしい名前「DCF Transmitter」を付けます。
IMG_7959 - コピー.jpg
「DCF Transmitter」がMatterデバイスとしてHomeKitに登録され、iPhoneからOn/Offできるようになります。
7.png

動作確認、電波時計の時刻を合わせる

起動時はOff状態になっていて、iPhone画面とM5Stampのボタンによる「On」/「Off」が連動し、On状態の時には電波を送信します(LEDも点灯)

動作確認は、まずM5Stampの時刻を変更(Consoleのコマンド「 timezone +9:05 」で5分進めるなど)しておいてOnにして送信開始。電波時計はRECボタンを長押しして強制受信モードにすると0時の位置まで針が移動 -> 5~10分程度して受信した時刻情報が揃って、時計の針が動き始めてM5Stampと同じ時刻で停止すればOK。
4m程度の距離で試してみましたが問題なく、離れたところに常設できそうです。
IMG_7946.jpg

補足

実は、Tasmota単体でもOn/Offスケジュール設定する機能あります
configuration->configure timer
IMG_7949 - コピー.jpg

さくさくMatterデバイスが作れるTasmotaおすすめ
【Tasmota】 = https://tasmota.github.io/docs/
image.png

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?