M5StickC用の電子名刺. アイコンやQRコードの表示が可能.
コミックマーケット98用に作成したArduinoスケッチを汎用化したもの.
- M5StickC
- Arduino 1.8.12
- ESP32 1.0.4
- M5StickC Library 0.11
- efont Unicode BDF Font Data
- Aボタン
- アイコン / QRコード 切り替え
- Bボタン
- バックライト輝度調整
m5stickc-visiting-card.ino
の定数 name_string
, id_string
を編集する.
efontを読み込むので日本語表示が可能.
constexpr char* name_string = "名前";
constexpr char* id_string = "@id";
URLなどに使用. scroll-url.h
の定数 string
を編集する.
こちらはSpriteを使用している関係でefontで表示しておらず, 英数字のみ対応.
static constexpr const char* string = "Scroll_URL";
qr-state.h
の定数 url
を編集する. version = 2
では31バイトまで.
カメラの性能にもよるが, 64x64ドットでの表示のため読み取りはかなり厳しい. 周囲の明るさやフォーカスを合わせると読み取りに成功しやすい.
static constexpr const char* url = "QR_URL";
64x64ドットのPNG画像を用意しておく.
M5StickCはMicroSDカードスロットを持っていないため, 予め生バイナリに変換してソースコードに埋め込む必要がある.
意外とWindowsでも動作する生バイナリへの変換プログラムがなかったので, .NET Coreで変換処理を行う bmp2hex-dotnet-core を作成した. これを使用するとC/C++形式の配列データへ変換できる.
icon-image.h
の配列値を置き換えたら完了.
constexpr const uint16_t icon_image[] = { (略) };