0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

DigisparkでMicrosoft Teamsのマイクミュートのオンオフの物理キーを作る(夏休み工作)

Last updated at Posted at 2022-08-10

Digisparkは、マイコンのATTiny85の小さなボードです。これと、QMK Configuratorを使ってノンプログラミングでMicrosoft Teamsのマイクミュートのオンオフの物理キーを作ってみました。
はんだ付けやケースの工作は必要なでのすが、プログラムを書かなくてもよいのは楽だと思います。QMK Configuratorには、いろいろキーが設定できるので、Microsoft Teamsのマイクミュートのオンオフ以外もできると思います。
Microsoft Teamsのマイクミュートのオンオフのショートカットキーは「Ctrl + Shift + M」です(Windowsの場合です)1つのキーを押すと、「Ctrl + Shift + M」が送信されるようにしています。

用意するもの

  1. Digispark
  2. プッシュボタンスイッチ(モーメンタリとよばれるプッシュボタンスイッチ。モーメンタリは、プッシュボタンスイッチを押してい間だけオンになるプッシュボタンスイッチです)
  3. 配線用のコード、はんだ、はんだごてなど

あと、PCも必要です。ここではWindows 10を利用しましたので、すべてWindows 10を利用した手順になります。

Digisparkの動作確認

Digisparkは、PCにUSB接続後の5秒間だけプログラムの書き込みモードになります。その後書き込まれているプログラムを実行します。なので、DigisparkはPCに接続しないでください。
プログラム書き込み用のソフト(micronucleus)をダウンロードし、そのmicronucleusでDigisparkがアクセスできるか確認します。

micronucleusのダウンロード

https://github.com/micronucleus/micronucleus/releases にアクセスしmicronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763.zipをダウンロードします。説明の都合上ダウンロードフォルダーにダウンロードされたことを前提に進めます。
qmk6.png
micronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763.zip をすべて展開します。

展開すると展開した場所にmicronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763フォルダーが作られると思います。
インストールは不要です。展開しただけで利用できます。

micronucleusの実行とDigisparkの接続

コマンドプロンプトを開きます。
コマンドプロンプトが出てきたら、Downloadsフォルダーに移動します。
移動したらmicronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763\micronucleus-cli-master-882e7b4a\micronucleus.exe --infoを実行し、Please plug in the device ...が表示されたらDigisparkをPCに接続。

>cd Downloads

>micronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763\micronucleus-cli-master-882e7b4a\micronucleus.exe --info
> Please plug in the device ...

DigisparkをPCに接続すると、Device is found!が表示されDigisparkのファームウェアのバージョンが表示されます。
Device has firmware version が表示されてれば問題ないと思います。

>micronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763\micronucleus-cli-master-882e7b4a\micronucleus.exe --info
> Please plug in the device ...
> Device is found!
connecting: 20% complete
connecting: 27% complete
connecting: 34% complete
connecting: 40% complete
> Device has firmware version 2.6
> Device signature: 0x1e930b
> Bootloader entry condition: The bootloader is always activated after reset.
> Bootloader exit condition: The bootloader exits after 6 seconds (default) if no uploading detected.
> Available space for user applications: 6650 bytes
> Suggested sleep time between sending pages: 7ms
> Whole page count: 104  page size: 64
> Erase function sleep duration: 728ms
>> Micronucleus done. Thank you!

>

Digisparkとスイッチの接続

Digisparkとスイッチの接続は、次のような回路図になります。
qmk0.png

GUIによるキーの設定とコンパイル、ダウンロード

その次は、ノンプログラミングです。Web上で操作すると自動的にプログラムを作成してくれます。
出来上がったプログラムをコンパイルしてダウンロードします。

GUIによるキーの設定

まずは、QMK Configuratorの https://config.qmk.fm/#/1k/LAYOUT_ortho_1x1 へアクセスします。
qmk1-0.png
設定できるキーがでてきます。ここでは、1つだけです。
まずは設定されているキーを削除し、その後新しくキーを設定します。
×を押して現在の設定を削除します。
qmk1-1.png
そうすると以下のようになります。N/Aは何もキーが設定されていない状態です。
qmk1-2.png
設定するキーを選択しないといけないので、N/Aをクリックします。
qmk1-3.png
設定するキーを指定します。Quantumタブをクリックし、1つのキーで複数のキーを設定します。
qmk2-0.png
ここでは、C_S_Tを選択します。C_S_Tは、何かのキーを押す前にコントロールキーとシフトキーを押す設定になります。
qmk2-1.png
こんどは、C_S_Tの中のN/Aを選択します。
qmk2-2.png
ANSIタブをクリックし、Mを選択します。
qmk3-0.png
そうすると、C_S_Tの中のMが入り、コントロールキーとシフトキーとMキーを押す設定が出来上がります。
qmk3-1.png

コンパイル

右上のCOMPILEをクリックするとコンパイルが始まり、ジャガイモが表示されます。ジャガイモの表示が消えれば、コンパイルは終わります。
qmk4.png

ダウンロード

FIRMWAREをクリックし、コンパイルされたプログラムをダウンロードします。
qmk5.png
1k_layout_ortho_1x1_mine.hex というファイル名でダウンロードされます。
これも説明の都合上ダウンロードフォルダーにダウンロード置いてください。

ダウンロードしたプログラムの書き込み

Digisparkの動作確認で使用した、micronucleus.exeを使います。
コマンドプロンプトを開きます。
コマンドプロンプトが出てきたら、Downloadsフォルダーに移動します。
micronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763\micronucleus-cli-master-882e7b4a\micronucleus.exe ----run 1k_default.hexを実行し、Please plug in the device ...が表示されたらDigisparkをPCに接続します。

>micronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763\micronucleus-cli-master-882e7b4a\micronucleus.exe --run 1k_default.hex
> Please plug in the device ...

DigisparkをPCに接続すると、Device is found!が表示されプログラムの書き込みが始まります。

>micronucleus-cli-master-882e7b4a-x86_64-MINGW64_NT-10.0-17763\micronucleus-cli-master-882e7b4a\micronucleus.exe --run 1k_default.hex
> Please plug in the device ...
> Device is found!
connecting: 16% complete
connecting: 22% complete
connecting: 28% complete
connecting: 33% complete
> Device has firmware version 2.6
> Device signature: 0x1e930b
> Bootloader entry condition: The bootloader is always activated after reset.
> Bootloader exit condition: The bootloader exits after 6 seconds (default) if no uploading detected.
> Available space for user applications: 6650 bytes
> Suggested sleep time between sending pages: 7ms
> Whole page count: 104  page size: 64
> Erase function sleep duration: 728ms
parsing: 50% complete
> Erasing the memory ...
erasing: 55% complete
erasing: 60% complete
erasing: 65% complete
> Starting to upload ...
writing: 70% complete
writing: 75% complete
writing: 80% complete
> Starting the user app ...
running: 100% complete
>> Micronucleus done. Thank you!

>

確認

Digisparkにつけたプッシュボタンスイッチを押したときに、想定したキーになっているか確認します。
Keyboard Event Viewer https://w3c.github.io/uievents/tools/key-event-viewer.html にアクセスしてinput element with type="text":のテキストボックスをクリックします。その後、Digisparkにつけたプッシュボタンスイッチを押して話ます。
qmk8.png
そうするとDigisparkから送られてきたキーや順番が表示されます。
qmk9.png

Arduinoの開発環境でも同じようなのは作成できます。でもQMK Configuratorで思ったより簡単にできましたので記録として書いています。

0
0
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
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?