Arduino

Arduino MKR WAN 1310に搭載されたECC508を利用して乱数を生成してみる

Arduino MKR WAN 1310にはECC508というセキュアエレメントが搭載されており、これを用いて公開鍵認証などを安全に実現することができます。 ハードウェア乱数生成器を搭載しているため、暗号論的にセキュアな乱数を生成することもできます。以前の記事で紹介…

GPSの現在位置をLoRaで送信して距離を測ってみた (Arduino MKR WAN 1310)

TL;DR LoRa は最大数kmの長距離でセンサデータ等の通信ができるとされている通信方式です。 実際にGPSで取得した現在位置を送信するノードをArduino MKR WAN 1310を使って作成し、都市部(東京23区内)でこれを持ち歩いた時にどのくらいの距離まで通信できるの…

M5Paperの動作中の消費電力を削減する

M5Paper を動作させっぱなしにすると残像が残る? M5Paper は、静電容量タッチスクリーン付きの 540 x 960 の4.7インチ電子ペーパー(EPD)を備えた、ESP32搭載のデバイスです。 無線LANやBT通信などと組み合わせて、色々なモノを作ることができます。*1 1150 …

M5PaperでSPIFFSに日本語TTFファイルを置いて描画する

M5Paperでスケジューラを作りました。 M5PaperのM5EPDライブラリは、日本語等のUTF-8の文字列をTrueTypeフォント(TTF)を使って描画することができますので、スケジューラでもこれを使っています。 最初はSDカードに日本語TTFを置いていたのですが、高々数MB…

Wireless Analog Terminal Bellを作った

Wireless Analog Terminal Bell Analog Terminal Bell の動画にInspireされて、Wireless Analog Terminal Bell を作りました。ターミナルで作業している時に何か間違えると、分かりやすく(物理的な)ベルが鳴ってお知らせしてくれます。youtu.be 仕組み 端…

ESP32 (M5Stick-C) で電波時計を合わせよう

ふと気がついたら自宅の電波時計がかなり進んでいました。そこで、ESP32 (M5Stick-C)を使って擬似的に微弱なJJYの標準電波を発信するデバイスを作りました。 M5StickC 基本的には下記のコードをベースにしたものですが、ESP32のArduinoライブラリはNTP同期機…

Arduino ESP32からBluetoothシリアル(SPP)デバイスに接続する

Arduino ESP32は、Bluetoothシリアル(SPP)のスレーブデバイスになるサンプルは付属しており、PCからはBluetoothシリアルで容易に接続することができました。 (例えば arduino-esp32/SerialToSerialBT.ino at master · espressif/arduino-esp32 · GitHub など…

ESP32をBluetoothキーボードやマウスにする

Arduino Leonardo等は、USBキーボードやマウスとして振舞わせ、PC等を操作するのに使うことができます。 同じくArduino IDEをプログラミング環境として使えるESP32ではUSBキーボード機能は付いていません。しかし、代わりにBluetooth LEを利用してキーボード…

ESP32で64x32 LEDマトリクスパネルを制御

ESP32を使って、Amazonで安価に売られている64x32ピクセルのLEDマトリクスに色々表示できるようにしてみました。 ESP32 + 64x32 RGB LED Matrix 使ったもの ・ESP32-DevKitC ・P3 RGBピクセルパネルHDビデオディスプレイ64×32ドットマトリックスSMD LEDディ…

赤外線アレイセンサ AMG8833 (Grid-EYE) をWebSocketで見てみる

赤外線アレイセンサ AMG8833、いわゆるGrid-EYEを使ってみました。 www.switch-science.com 上記の説明の通り、60度の四角錐の測定エリア(2次元)を8x8に分割した64個のピクセルについて、0〜80℃の温度が得られます。時間分解能は10fpsです。 これを、ESP8266…

Qiのパケットを解析してみる

iPhoneにも 8 / X でQiが搭載されました。 Qiでは受電機器から充電器に対して通信を行うことで、充電の開始/停止や電力の調整を行いながら動作しています。これにより異常があれば即時充電を止めるようになっているわけですね。 通信速度は2kbpsで、受電側…

ESP8266でNAT(NAPT)でWi-Fiを中継する

ESP8266(ESP-WROOM-02)を最近よく使っています。ESP8266を使ったセンサを、Wi-Fiアクセスポイントから遠い、直接電波の届きにくい場所に置きたかったため、ESP8266をもう一つ使ってWi-Fiの到達範囲を拡張する中継機にした(といってもブリッジではなくNAPTル…

USB直結のスクリーンセーバーブロッカー

USB直結スクリーンセーバーブロッカーを作ったツイートのまとめです。USBポート直結できるスクリーンセーバーブロッカー - Curated tweets by NeoCat なおArduino互換のため、Arduino IDEでボードの種類としてArduino Leopardを選択すればプログラムの書き込…

スマートメーターからリアルタイムに消費電力を取得する

少し前からスマートメーターの導入が始まっています。東電は2020年度末までに一般家庭などへの導入を完了させるそう。 http://www.tepco.co.jp/smartmeter/index-j.html 東電の場合、電力メーター情報発信サービス(Bルートサービス)を申し込むと、優先的…

MicroView + FM Tuner

OLEDディスプレイ搭載ArduinoのMicroView (Uno互換) と、FM Tuner Si4703 評価ボードを組み合わせてFMラジオを試作しました。 電源はリチウムイオン電池+LiPro Charger。 動いてるところ。表示は1行目から周波数、ボリューム、感度 ([S]はステレオ受信)、放…

Ringでリモコン

あのRingが届きました。 iPhoneアプリで好きなジェスチャーとアクションを対応付けして使います(もちろん設定後は、アプリがバックグラウンドに回っていてもRingの操作を受け付けてくれます)。 標準アクションだけでもいろいろな操作に対応していますが、…

販促品のLEDファンのデータを書き換えてみた

とあるカンファレンスのIntelブースで、販促品(?)のLEDつきファンを貰いました。 スイッチを入れるとファンが回転し、羽根に入っている7つのLEDが空中に文字を描き出すというもの。 もともとは求人広告として、「We're Hiring!」の文字とURLをアニメーション…

ArduinoとKinectでラジコンヘリを飛ばしてみた

KinectとProcessing、Arduinoを使って、ラジコンヘリを飛ばすしかけを作ってみました。 動画: 赤外線ラジコンヘリ 飛ばすのはFS-IRH100 (F103)という室内用のラジコンヘリ。 赤外線方式のコントローラが付いてきます。 2000円台という安さながら、慣れるとか…

USBミサイルランチャーをArduinoでコントロール

久しぶりにUSBホストシールドで遊んでみました。 USBで制御できるミサイルランチャー(カメラ付き)を手に入れたので、これをArduinoから動かしてみます。 必要なもの Arduino (Duemilanove / Uno。 Megaでも大丈夫かな?) USBホストシールド USBミサイルラン…

「Arduinoスーパーナビゲーション」でTwitterライブラリを紹介頂きました

書籍「Arduinoスーパーナビゲーション しくみと応用テクニック」で拙作のTwitterライブラリを紹介していただきました。Arduinoスーパーナビゲーション しくみと応用テクニック作者: サンハヤト株式会社 Arduino愛好会,河連庸子,山崎文徳,神原健出版社/メーカ…

Arduino 1.0対応Twitterライブラリを公開

Arduino 1.0が2011/11/30に正式リリースされました。 新しいArduinoに対応したり、ライブラリの強化などが図られています。(詳しい変更点はRelease Noteを。) 個人的にはEthernetライブラリが強化され、DNSやDHCP機能を標準でサポートした点が嬉しいところ…

Arduino用のLSM303DLH(デジタルコンパス+加速度センサ)ライブラリ

1つのチップに3軸の地磁気センサ(デジタルコンパス)と3軸の加速度センサを内蔵した、LSM303DLHというチップを搭載したSparkfunのボードがスイッチサイエンスなどから販売されています。お値段も円高効果か3000円を切っていてお買い得。LSM303DLH搭載傾き補…

オーディオ用スペアナ製作

スイッチサイエンスで販売されているチップを眺めていたら、スペクトラムアナライザMSGEQ7とLEDドライバが並んでいて、「あー、スペアナ作れるよってことね」と思い、オーディオ用のスペクトラムアナライザを製作。 ベース基板。MSGEQ7を2つ積んで、ステレオ…

Arduinoで電波時計を合わせよう

現在、福島第1原子力発電所の事故の影響で、東日本で電波時計の基準となる福島の送信所からの標準電波(JJY)の運用が止まっています。このため、電波時計の自動調整が行えなくなっています。(西日本は九州からの電波があるため問題ありません。) このJJYを…

電流センサ+Arduinoでコンセントの電流を測ってみた

スイッチサイエンスで売られている電流センサ ACS714 を使って、コンセントの電流を計測するモノを作りました。家電をON/OFFをモニターするとか、波形みたりもできます。±5Aまでのと±30Aまで測れるのがあるけど、使ったのは5Aの方。 写真のようにコンセント…

ArduinoでFeliCaリーダー; 黒パソリ(RC-S330,370)に対応

ArduinoでFeliCaリーダー & ケータイにURLをプッシュ の続編です。 黒パソリこと、RC-S330,およびRC-S370に対応させました。 USBのエンドポイントがコントロール+インタラプト転送からバルク転送に変わった他、コマンド体系も少し変わっているようです。プロ…

ArduinoでFeliCaリーダー & ケータイにURLをプッシュ

ArduinoでFeliCaリーダーを作ってみました。FeliCa PlugではなくPaSoRiを使っています。 SuicaとEdyを交互に検出して、残高を表示しています。 おサイフケータイのように両方に対応するものは両方とも表示。 「WebTo」機能(三者間通信)も試してみました。ケ…

IDE 0019以降向けにDNSライブラリを移植

http://gkaindl.com/software/arduino-ethernet で配布されているArduino用のEthernetDNSライブラリですが、IDE 0019以降ではコンパイルが通らず動作しません。これはEthernetライブラリがUDPをサポートするなど変更が加わった影響のようです。対応中だから…

I2C液晶ライブラリ

ストロベリー・リナックスのI2C接続できるキャラクタ液晶が手軽で便利そうだったので、いくつか購入。 たったの2線で通信できるので、他の液晶と比べて配線がとても簡単ですし、同じくI2C接続のRTC等とも相性が良いのが特徴です。あとアイコン表示があるのも…

気圧センサMPL115A1

気圧センサMPL115A1をArduinoに繋いで気圧を測ってみました。MPL115A1 SPI接続気圧センサモジュール 気圧センサに加えて、補償用の温度センサが入っています。*1 精度は"kPa accuracy"とのことなので、10hPaくらいは誤差範囲ってことでしょうか? (あまり精度…