Android Thingsワードクロック – あなたの言葉で時を刻む
部品と用品
| 部品 | 数量 | 備考 |
|---|---|---|
| Raspberry Pi 3 Model B | 1 | |
| Arduino Nano R3 | 1 | WS2812B LED使用時の中継用 |
| NeoPixelストリップ(WS2801またはWS2812B) | 1 | |
| 写真立て(フレーム) | 1 | |
| レーザーカット文字レイアウト | 1 | |
| 余分な木材(レイアウトと同サイズ) | 1 | LED遮光用スペーサー |
必要な工具と機械
- はんだごて(汎用)
アプリとオンラインサービス
- Google Android Things
- Google Firebase
- Google Actions on Google
このプロジェクトについて
ユーザーの母国語で時刻を読み上げる時計があったら? それが実現しました!
このクロックの核心概念は、日中は現在時刻を単語で表すのに必要な文字だけを点灯させ、それ以外は消灯させることです。
スマートホームデバイスの好例で、Googleアシスタントとシームレスに統合され、音声コマンドで自然な操作が可能。インテリアとしても美しく、リビングに置けます。
自作手順
まず、全文字を配置したレイアウトを作成し、写真立てに収まるサイズでレーザーカットします。文字間隔はLEDストリップのLEDピッチと合わせてください。
プロジェクトリポジトリに英語版とイタリア語版のベクターファイルを用意しています(他言語も追加予定)。
- 英語版レーザーカットレイアウト
- イタリア語版レーザーカットレイアウト

LEDストリップはWS2801とWS2812Bの両方に対応。違いは:
- WS2801:Raspberry Pi(または他のAndroid Things対応ボード)に直接接続可能。
- WS2812B:別途制御ユニットが必要(私はArduino NanoをUSBシリアルでAndroid Thingsボードに接続して使用)。
リポジトリのAndroid Thingsアプリソースコードには、両LED形式用のバリエーションとそれぞれの回路図が含まれています。
LEDストリップを切断・再接続し、ジグザグパターンに配置して文字レイアウトの裏側に設置します。各LEDが1文字を照らす役割を持ちます。


1つのLEDの光が隣の文字に漏れないよう、文字ごとに穴を開けた木材スペーサーを用意しました。文字全体を覆うサイズの穴を、レイアウトと同じピッチで開けます。



LEDを穴の中に配置し、テープで固定します。

文字レイアウトを写真立てに入れ(前面から正しく読める向き)、その上からLED入りスペーサーを重ねます。

選んだLED形式に合わせてAndroid Thingsボードに接続します。


Android Studioでビルドする前に、Build Variantsメニューから正しいバージョンを選択してください。

言語(英語/イタリア語)× LED形式(WS2801/WS2812B)の組み合わせごとにバリアントが用意されています。
アプリをビルドしてAndroid Thingsボードで実行し、WiFiパラメータを設定します。インターネット接続があれば、Androidが自動的に現在時刻を取得し、該当する文字を点灯させて時刻を表示します。

再起動後にインターネット接続がない場合は、適切なエラー状態を表示します。

Androidコンパニオンアプリ
GitHubリポジトリには、LEDの色やタイムゾーン(近日対応)を変更できるAndroidモバイルコンパニオンアプリのコードも含まれています。
インストール・起動すると、Android Nearby APIを使って設定不要で近くのクロックを検出。カラーパレットが表示され、色を選ぶと即座にLEDが更新されます。

スマートホーム連携
Googleアシスタント経由でLED色を変更可能です。Firebase Functionsをトリガーし、Firebase Realtime Databaseの値を更新。Android Thingsボードがそれを読み取り、実機に反映します。
リポジトリにSmart Home設定手順の全てがあり、完則すれば色と明るさを音声で制御できます(動画参照)。
コード
Android Things Word Clock on GitHub
https://github.com/danybony/word-clock/tree/master/AndroidThings
回路図
WS2801 LEDストリップの4線をAndroid Thingsボードに直接接続
ws2801_NrdL4yHYgS.fzzWS2812B LED使用時は、Arduino Nanoを中継としてLEDとAndroid Thingsボードの間に配置
ws2812b_dE6hG5tmEZ.fzz製造プロセス
- 鳩時計:歴史、職人技、現代への進化
- 集積回路(IC):現代エレクトロニクスを支える微小強力チップ
- Arduino POVクロック:残像効果で浮かび上がるLED時計を自作する
- Arduinoで作るレトロNumitron管時計:シンプル、信頼性高く、省エネ
- DIY Arduinoワードクロック – 文字で時刻を表示する洗練されたリアルタイムクロック
- 高精度ワードクロック:分単位で時刻を文字表示
- 12メートル先から見える大型LEDマスタークロック(アラーム機能付き)を自作しよう
- イタリア語ワードクロック自作:Arduino Nano、NeoPixel、LCD、RTCで時刻を文字で表示
- Arduino UNOで作るベルリンクロック – DIY LEDマトリクス時計
- MOSMusicプロジェクトキット: MOSFET、Arduinoで音楽同期照明制御
- 車両シャーシレイアウト:エンジン位置と駆動配置の解説