モトグッチのバイクの日記

モトグッチでサーキットを走る日記

Youtubeの英日同時字幕&記録アプリ

Youtubeの英日同時字幕&記録アプリを作りました。

 

アプリは無料ですので、以下からお気軽にどうぞ。

Immercue

Immercue

  • Yuji Kanda
  • 教育
  • 無料

apps.apple.com

 

背景

ここ数年英語学習を趣味にしています。

 

というのも、バイクでサーキット走行というのはなかなかハードルが高く、

最近年に1回行けるかどうかという感じになってしまっており、

バイクに乗るのも年に1-2回という状態で、

MotoGPやMFJやEWCなどは見るものの、

バイクに乗るということから遠ざかってしまっていました。

 

物理的な体力的なことや時間的なこと、金銭的なことを考えると、

手軽で続けられる趣味があるといいなぁと考えるようになりました。

 

そう考えた時に、自分の探究心を満たしてくれて、世界が広がる実感を得られそう。

言語は、文化や歴史に関わる面白いテーマに思えました。

と大袈裟に書いたものの、一番手軽で続けられそうな「趣味」に思えた、というところでした。

 

ポイントは趣味ととらえることで、継続しようというところです。

学習、勉強と思って気負ってしまうと続かない私なので、

心掛けとして重視しているところです。

(とはいえ、指標は欲しくてTOEICを定期的に受験していたりしますが、仕事で必要とかでも無いのであくまで趣味です)

 

仕事でたまたまグローバルなプロジェクトが1回だけあって、英語のMTGとかに同席したり、

電車に乗って英語で質問されることがあったり、レンタル自転車の前で困っている外国の人を見かけたり、

英語を理解できたらなぁ、喋れたらなぁと思うことがあったのもきっかけではあります。

 

学習経緯

最初はTOEICを受けてみて、まず現在地を把握してみました。

奥様のTOEICの公式問題集があったので、それを試しにやってみると、

ちゃんと英語を勉強していなかったので、まぁ酷い点でした。

その後ちょこっと勉強して受けたTOEICも予想できる結果でした。

 

一億人の英文法を一通り読んで、受けてみて、多少点があがりました。

Abceedを始めてみて、TOEICの点は300点以上は上がりました。

でもそれは、TOEICの問題に慣れたのと、特有の単語や表現だけに特化した感じで、

点数の響きと自分の理解とのギャップが大きいものでした。

 

その後はしばらく続けていても伸び悩みの状態に陥りました。

 

ただ、公式問題集のPart2は音声から情景をイメージできるくらい音読して表現を覚えたので、

こんな感じで音読で表現を増やしていこうと思いました。

 

アプリの開発

単語や表現を覚える上で、イマージョンラーニングに興味を持って、

動画で表現を覚えるのが良さそうだなと考えました。

 

そこで、Youtubeで英日字幕表示して、動画を音と英語と日本語を紐付けて理解し、

キュー単位にループ再生して練習できると良いなと。

 

1回内容を覚えた動画は、

練習じには字幕がないところは飛ばしたいなということで空白スキップ機能をつけて。

 

前後のキューへの移動も簡単に行いたいので前へ、次へのボタンもつけて、

一覧から任意のキューへも飛びたいので一覧機能も追加。

 

単語の意味や、文法的なヒント、文脈でのニュアンスもすぐに調べたいな、

(特にYoutubeの自動字幕とかだと、実際の意味と異なる場合もあるので)

ということで、Appleの翻訳APIでの単語翻訳と、AI解説機能も追加。

 

アプリのポイント

学習を趣味として継続するため、継続の実感を得ることも重要なので、

進捗機能をつけました。

視聴でどれだけの単語に出会ったか?新規の単語がどれだけあったか?

単語や表現の中学、高校、TOEICの各レベルの網羅性。



どれだけ時間をかけたか、そのグラフ。

単語の登録機能とそのキューを記録して再生できる機能、

 

TOEICの得点と、学習時間との相関を確認できる機能、

色々盛り込んでみました。

 

 

当初、2ヶ国語同時字幕したいなぁと探してみると、Language Reactorのようなものもあるのですが、

自分で使いやすい物を作ってしまおうと思い、Chromeの拡張機能をまずは作ってみました。

chromewebstore.google.com

 

でも、日常的に使うのはiPhoneなので、iPhoneアプリが良いなぁと、

iPhoneで毎日使い続けられるアプリにしようと思って機能を盛り込んだアプリを作った感じです。

 

おすすめ動画

アプリで視聴する対象動画は、英語音声で字幕付きのものという前提になりますが、

私は、アニメーション、歌、シットコムなどで使っています。

先ずは動画を確認し、AI解説機能で意味を確認し、

ループ機能でイメージしながらシャドーイングする感じで使っています。

是非試してみてください😃

 

youtu.be

youtu.be

youtu.be

 

 

そして小椋選手優勝おめでとう🥳

youtu.be

自作キーボード(その11)完成

自作無線分割キーボードが完成しました。

f:id:ugkintoki:20251117230859j:image

 

初めてのPCB基盤設計から試作機の作成、

キーキャップやケースの3D CADでの設計からプログラムまで、

一通り作ってみました。

 

半田付けも多少手際よくできるようになりました。

 

IKEA効果(自分で作ったものに愛着が湧く効果)も相まって、

満足感があります。

艶のあるスプレー仕上げのキーキャップが綺麗です。

f:id:ugkintoki:20251117230916j:image

 

ケースも同様の仕様にしたところ、

届いたものを確認すると、下側は良かったのですが、上側はかなり反っていました。

スプレーペイントが表面(上面)だけの為、乾燥の際に反ってしまったようです。

f:id:ugkintoki:20251117234701j:image

 

60℃のお湯で熱して形を戻しました。

f:id:ugkintoki:20251117234714j:image

 

ケースとキーキャップはレジンのスプレーペイントの仕上げで、

Blush NanoとBrown Nanoのキースイッチでの打鍵音を確認されたい方は、

Youtubeの動画をどうぞ。


www.youtube.com

 

※これはMacにペアリングしたキーボードとマウスをiPadに共有しています。

キーボードはBluetooth接続なので直接iPadにも接続できます。

 

自作キーボード(その10)キーキャップ色々

前回でキーボードのケースを作ったので、今度はキーキャップを作りました。

f:id:ugkintoki:20251029234512j:image

 

これまでいくつかキーキャップを使ってきて、

どれもロープロファイルのものを選んできました。

 

最初のCorne Cheryでは、MXのロープロファイルのキーキャップを使いました。

f:id:ugkintoki:20251030002354j:image

これは質感も打鍵感も良かったので、これが一つの指標になりました。

 

次に自作キーボードの有線分割試作機では、17mmピッチに合うJunana MXを使用してみました

f:id:ugkintoki:20251029234812j:image

形状が独特で指にフィットする感じで良かったです。

ただ、17mmピッチ用で、17.78mmピッチにすると隙間が大きくなり、

親指部分は前後が持ち上がっている形状がしっくりこないところがありました。

(Junana MXは凸形もあるので、親指には凸型がいいかもしれません)

 

 

そして17mmピッチ用の自作の試作キーキャップ

tinkercadで作ったので、デザイン自体も荒くプリミティブな感じのキーキャップで、

レジンのサンディング仕上げで、ホームポジションの突起を削られてしまい、

指を当てる部分は凹ませ方が足りず、ほぼ平になってしまい、

10個のキーキャップを連結してJLC3DPに発注したのですが、自分でニッパーで切り離す際に連結部分のサイドにバリが残ってしまい、見た目もよろしくない感じで、

支柱部分の十字は仕様通りの1.17mmにしたものの、ちょっと噛み合いが緩い感じになってしまって、

色々課題の残るものでした。

 

 

次は自作の無線分割17.78mmピッチキーボードに最適化し、freecadで作り直して細部に拘って作り込みました。

連結部分も裏側で繋ぐようにしました。

支柱はちょっとキツくなっても良いかと1.1mmで作り、

素材はレジンでもスプレーペイント仕上げで(少し)コストをかけて発注しました。

ホームポジションは別ファイルに1個でスカイブルーのペイント指定で作り、メモにホームポジションの突起があるけど意図したものだから削らないでね、と添えました。

※発注してから、片手分の合計20個しか発注してないことに気付きましたが、まぁ仕上がりのチェックもしないとだから、とりあえず片手分で良いか、とキャンセルせずに到着を待つことにしました。

 

 

自作キーキャップができる前に、keychronのK3&K7のキーキャップが使えそうと分かったので、使ってみました。

f:id:ugkintoki:20251029235250j:image

 

これは市販されているキーボードのキーキャップなので、

表面の質感、触り心地、タイピングの安定感、どれも素晴らしく、

Sale中のため14.99$で買えたのはラッキーでした。

(商品と同じくらいの送料がかかりましたが・・送料高いだけあってすぐ届きました)

Keychron K7 Keycap Setwww.keychron.com

※日本語のサイトでは売り切れで、本国の方でもk3は売り切れ、k7のみsaleでした。

 

自作キーキャップを発注したものの、

keychronのキーキャップには、色がグレーという点以外はかなり満足していたので、自作キーキャップがこれを超えられそうにない気がしていました。

試作キーキャップの仕上がりの荒さから、レジンの3DPでは難しいかな、と思っていたのでした。

 

ところが、届いた自作キーキャップの仕上がりは素晴らしいものでした。

ツルツルに仕上がった表面は美しく、ホームポジションの突起もしっかり期待通りで、

打鍵感も含め、満足度はkeychronのキーキャップを上回るものになりました。

支柱はかなりキツくなってしまったので、あまり抜き差しはしない方が良さそうですが、

その分ブレがなくかっちりしているので打鍵感が良いです。

 

キーキャップのスプレーペイント仕上げが良かったので、

同様の仕上げで、残りのキーキャップとキーボードケースも発注しました。

 

これでハードは設計完了です。

f:id:ugkintoki:20251029235900j:image

※写真は一部keychronのキーキャップ、これはこれで面白い

 

ソフトは自前のソースを自動再接続やマルチデバイスに対応したり省エネ対応するのが難しそうなので、RMKというESP32C6に対応したファームウェアや、マイコンを変更してZMKという選択肢もありかなぁとゆっくり妄想中です🤔

 

自作キーボード(その9)自作無線分割キーボード、一旦完成

発注していたケースが届いたので、キーボードを組み立てました。

f:id:ugkintoki:20250926002406j:image

 

電源スイッチの位置の計測を間違ってしまったようで、

若干ケースの内側を削って、スイッチ部分を確保しましたが、

他はOKでした。

f:id:ugkintoki:20250926003026j:image

 

底面にGRIPLUSを全面に貼って、小型軽量のキーボードの安定性と音質向上を図りました。

f:id:ugkintoki:20250926002502j:image

 

そうして数日運用してみると、blush nanoのキータッチがやや物足りないような気もしてきました。

スコスコっという感じの静電容量無接点方式に似た感覚があり、静かで良いのですが。

 

そこで、タクタイルのbrown nanoメインに切り替えてみると、タイプ音が大きくなりますが、タイピングしている感覚が分かり易い気がしました。

f:id:ugkintoki:20250926002533j:image

 

また、キーは自作の試作キーキャップからJunana MXに変更してみたところ、タクタイルのコトコト感がよりしっかりして心地よいです。

f:id:ugkintoki:20250926002551j:image

 

USBソケット部分は、ケーブルはマグネット式のものを付けても出っ張らないように、かなり引っ込めて作ってみました。

f:id:ugkintoki:20250926002604j:image

f:id:ugkintoki:20250926002620j:image

 

これでしばらく運用してみようと思います。

自作キーボード(その8)無線分割キーボードの設計 XIAO ESP32C6

先日方式を検討したので、設計を進めていきます。

 

以下の順序で進めていきました。

  1. ブレッドボードでマイコンを変更して検証
  2. EasyEDAでの基盤の設計
  3. JLCPCBへの基盤の発注
  4. Shapr3Dでのケースの下書き
  5. freecadでのケースの詳細設計
  6. JLC3DPへのケースの発注

 

試作基盤に繋いだブレッドボードのマイコンを、

ESP WROOM 32(E)からXIAO ESP32C6に変更し、

プログラムを書き込んでみると、Bluetoothのエラーになって動きませんでした。

 

BleKeyboardをESP WROOM 32で利用する際にもそのままでは動かず、部分的に修正していたのですが、NimBLEで作り直して一先ず動作するようにしました。

 

ESP nowが欠落して右側の入力が不安定だったため、リトライの回数と間隔も調整しました。

 

動作確認用の最低限のところまで作成して一応検証は済みとして、装飾キー系は後回しにします。

 

次は基盤の設計です。

試作機からキーピッチやレイアウトを調整して、Gateron LowProfile3.0用に設計し、基盤を発注。

 

ケースはShapr3Dでイメージを固めて、freecadでケースの詳細を作成。

freecadは直感的ではないので、最初は苦労しました。複雑になってくるとアプリが落ちることもあり、イメージしたものを形にしていくのは難しかったですが、やり方を覚えていって、意図通りに作成していけるようになりました。

発注したケースはレビューも一発で通りました。

 

キーキャップは、今のレジンの試作品はホームポジションも削られているので、

設計をブラッシュアップして、素材をナイロンにして作ろうかと思います。

 

 

届いた基盤に半田付けして実装します。

試作機で半田にもなれたので、今回は半田も全て上手くいきました。

f:id:ugkintoki:20250918225509j:image
f:id:ugkintoki:20250918225513j:image
f:id:ugkintoki:20250918225516j:image

 

後はケースが届いたらケースに収めて、底面に滑り止めを付けて、プログラムを仕上げれば完成です。

 

GNSS Circuit Logger BLE-LNS GPSロガーデバイスの作成v1.0

先日発注したロガーデバイスのケースが届いたので、組み立ててみました。

 

f:id:ugkintoki:20250825212552j:image

これを半田付けしていきます。

 

一通りできたところで動作確認していきます。

室内から動作確認するとなかなかGPSを拾わなくて、ちゃんとできているのかどうか解りにくいです。

配線ミスが一箇所あったのを修正して、動作確認OK。

f:id:ugkintoki:20250825212657j:image

 

今回買ったGPSモジュールにはM8Lが載っていて、M8Nの上位互換なのですが、モジュールにパッドが増えていて、それの影響かGPS取得が安定しなかったので、一旦バラしてM8Nのモジュールのものに載せ替えました。

f:id:ugkintoki:20250825212715j:image

 

前回作ったものと比較すると、PCBに穴を開けてアンテナを埋め込んだのと、OLEDのピンソケットを無くして基盤直付けにしたので、ユニバーサル基盤のプロトタイプのものよりも3mmほど薄くできました。

f:id:ugkintoki:20250825213231j:image

 

作成してみて、更なる改善点も見えてきました。

XIAO ESP32C3の背面の配線の半田付けが面倒なのと、もう少し薄くできそうなので、XIAO ESP32C3は基盤に直付けしようかなと思います。

 

ケースの設計もディテールを整えたいです。

これまではtinkercadで作っていたのですが、freecadで細かいところを作って行こうかなと思います。

 

Shapr3Dは操作感が直感的でとても良いのですが、プロ版は月間5,500円か年間42,800円とちょっと高い(といっても3D CADの中では安い方なのですが)ので事業としてちゃんとやらないと辛い感じです。

 

ツールとしてはFusionが最強と思いますが、フリーでは商用に使えないので、他の選択肢を探している感じです。

 

Shapr3Dのフリー版だと、STLを出力できる点はありがたいのですが、解像度の荒いものしか出力できず、プロ版でないと高解像度のSTLや、その他のSTEP出力などができないので、フリー版であくまでイメージを膨らませる用途に使おうと思います。

 

 

今回は PCBでの実装で、プロトタイプからの改良が出来たので良かったです。

自作キーボード(その7)3D CADツールを色々試してみた

GNSSバイスのケースや、キーキャップの作成には、

これまでtinkercadを使っていましたが、

細かいところを作り込んでいくのに、tinkercadだとちょっと難しくなってきました。

tinkercadはブラウザで使えるので気軽で良いのですが、一回セッションが切れてデータがちょっと前のセーブされていた時のものに戻ってしまったこともあり、普通にローカルにインストールして使うツールでも良いかなぁと思ってきました。

(上記キャプチャはFreecadで作ったモデルを読み込んだものです)

 

そこで、色々3D CADツールを探して使ってみました。

 

先ずblender

これは超多機能で3D CGアニメーションもできるようなツールなので、テクスチャやライティングにカメラワークなど、テンション上がる機能満載なのですが、3Dプリンター用のデータモデリングとしては、ちょっと細かい作業は大変そうでした。

(上記キャプチャはFreecadで作ったモデルを読み込んだものです)

 

 

次はFree CAD。

こちらもフリーでありながら精密なモデリングが可能で、平面に設計図を書いていく感じは、3Dプリンター用の寸法を厳密に指定したモデリングに適しています。

ただ、いかんせん直感的な操作とはいかないので、最初のハードルが高いです。

慣れてくれば良さそうですが、拘束とかも最初は苦しめられます。

 

アプリを快適に使うために、スペースマウスとか、3D CAD用の高機能マウスとかのデバイスも検討し始めていたのですが、

 

ふと、iPadのペンシルを使ってできると良さそうだと思い、

Shapr3Dを試しました。

使ってみると、最初のチュートリアルに動画説明もあってとても分かり易く、操作性もすごく良いです。

画面で直接ペンを動かすので、脳の色々な感覚が刺激されてるような気もして、ダイレクト感があって良いです。

無料版でも3Dプリンター用のstlファイルは出力できるので(ただし低解像度のみ)、しばらくこれをメインで使ってみようかと考え中です。

 

 

Free CADは時間はかかるのですが、きっちり形を作れるので、Shapr3Dでざっと作ってみて、Free CADで清書するとかもありかもしれません。

 

tinkercadipadアプリもあるので、こちらも空間操作がタッチパッドで直感的にできて、操作感が良いので、図形を簡単に並べてイメージを膨らますには良さそうです。

 

また、tinkercadやShapr3DのipadアプリはAR機能もあるので、こんなことができてしまうのがすごいですね。