テクニカルノート

デジタル麻雀システムの技術構成と開発状況をまとめた技術補足ページです。

システム全体構成

4台の卓上端末・スマホ・管理画面・バックエンドが MQTT で約200ms リアルタイム同期。

麻雀卓(1卓 = 4席)— 各席に5インチ卓上端末を固定
東 Tab5
南 Tab5
西 Tab5
北 Tab5
MQTT(EMQX)over WebSocket  ≈ 200ms リアルタイム同期
📱
スマホ Webアプリ
QRコードでワンタップ参加。端末と同一MQTT同期に乗り混在運用も可。
Next.js(モバイル専用)
⚙️
バックエンド(点数の権威)
点数計算・整合性・履歴・精算を保証する単一の権威サーバ。
NestJS / Prisma / PostgreSQL / Redis
🖥
店舗オペレータ管理画面
全卓監視・スコア修正・QR管理・稼働ダッシュボード・対局履歴・会員管理。
Admin(PC/タブレット主)
同期レイテンシ
≈ 200ms
MQTT(EMQX)over WebSocket
端末数
4台 / 卓
各席に固定、スマホとの混在も可
点数計算
バックエンド権威
整合性・履歴・精算を完全保証
フレームレート
60fps
C/C++ & LVGL ネイティブ

技術スタック

端末
C/C++ & LVGL
ネイティブ・60fps
Webアプリ・管理画面
Next.js
バックエンド
NestJS・Prisma・PostgreSQL・Redis
同期
MQTT(EMQX)
over WebSocket
端末ハードウェア
M5Stack Tab5(ESP32-P4)
5.0インチ 1280×720 IPS・約294 PPI・各席固定

開発状況

開発状況(透明性のための補足)
バックエンド/Webアプリ(モバイル)/管理画面(卓監視・スコア修正・QR・稼働ダッシュボード・履歴・会員管理)は完了済み。実機(M5Stack Tab5)は動作検証済みで、2026年7月19日のオールジャパン麻雀チャンピオンシップ2026本戦ブースにて実機デモを実施します。 端末画面のスクリーンショットはネイティブ(C/LVGL)実装をホストシミュレータで実描画したもの(ロジックは実機と同一コード)、管理画面のスクリーンショットは実機環境の実データです。 卓への固定方法・配線・電源・意匠との統合は、卓メーカー様の設計と合わせて詰めさせてください。試作・PoC からのスモールスタートが可能です。