RP2350A-DVI

ショップ


製品概要

RP2350A-DVIは、Raspberry Pi財団の最新マイコン「RP2350A」を搭載し、TV/PCモニターへの画像出力機能と加速度センサーを搭載した開発基板です。プログラミングで多用するスイッチ,LED,スピーカーに加え、TV/PCモニターへの出力が可能なHDMIコネクタを搭載しています。追加の拡張基板などを使用することなくPicoDVI技術を利用して画像をTV/PCモニターに出力できます。

RP2350A-DVI

開発の背景:大画面でグラフィックを動かす喜びを、すべての学習者と開発者に

電子工作やプログラミングの学習において、最も強力な原動力となるのは「自分が作ったものが動いた!」という直感的な歓びと達成感です。特に、表現豊かな「グラフィック(映像)」や「音声(音)」として目に見える成果が返ってきたときの感動は、学習者の創造性を激しく刺激します。

本基板は、「身近にある大画面テレビやPCモニターに、自分のプログラムで鮮やかなグラフィックを簡単に描き出して楽しんでほしい」という、ものづくりの本質的な衝動を形にすることから開発がスタートしました。

しかし従来のDIP型(細長い基板の両側に一直線に端子が付いた形状)の開発ボードの多くは、マイコンの中核回路のみを搭載しているものが主流でした。そのため、大画面への映像出力はもちろん、単純なスイッチ入力や音の出力実験を行うためだけに、ブレッドボード等を用いた複雑な回路作成を強要されていました。結果として、不慣れな配線作業や配線ミスの原因特定に多くの時間を奪われ、肝心の「画面に絵を出して動かす」という一番楽しい成果に到達する前に、多くの学習者が挫折してしまうという大きな課題がありました。

「RP2350A-DVI」は、PicoDVIによる大画面出力機能(HDMI互換コネクタ)をはじめ、タクトスイッチ、圧電スピーカー、加速度センサーといったインタラクティブな要素をあらかじめ1枚の小さな基板に凝縮しました。配線という「楽しさに至るまでの高いハードル」を取り除くことで、個人のものづくりから教育機関の演習まで、誰もが手軽に「大画面に絵を出し、音を鳴らし、動かす」というデジタル創作の本質的な楽しさと深い学びに没頭できる環境を提供します。


「RP2350A-DVI」の特長

1. PicoDVIによる大画面モニター映像出力機能

RP2040で開発され、最新のRP2350で専用のハードウェア拡張が行われた「PicoDVI技術」を利用し、TVやPCモニターに画像や映像を大画面表示することができます。基板上にHDMI互換コネクタを標準装備しているため、市販のケーブル1本でスムーズにモニターへ接続可能です。

2. オンボード・インターフェース

Raspberry Pi Pico2に準じた形状と端子配置を採用し拡張性を確保した上で、実験や演習で多用される下記の入出力、センサー、端子をあらかじめ基板上に標準実装しています。

  • タクトスイッチ x4
  • 圧電スピーカー
  • LED
  • 加速度センサー: KXTJ3-1057
  • OLEDディスプレイ端子
  • I2C端子

これらの機能を活用することで、本基板単体でもゲームに代表されるインタラクティブな装置の試作・実験を行うことができます。また、ブレッドボードを利用すれば、多様な外部センサー回路を接続し、それらから得られたデータを大画面に表示・可視化することも可能です。

3. センサーや入出力デバイスなどの優れた拡張性(3.3V駆動)

基板の稼働電圧は、近年のセンサーや周辺デバイスの主流である「3.3V」に統一されています。配線を複雑化させる電圧変換回路などの追加部品を必要とせず、多彩なデバイスを直接安全に接続できます。

4. 多彩なプログラミング言語をサポート

大学の理工系学部や高専の実験・演習で幅広く使用されているArduino言語(C/C++)はもちろん、近年の高校「情報」科目や、大学のデータサイエンス学部等で採用が増加しているPython(CircuitPython、MicroPython)によるプログラミングが可能です。PicoDVIによる大画面表示のプログラミングも、Arduino言語やCircuitPythonで行えます。

5. 拡張基板「PICO-HDMI-PLUS」との高いプログラム互換性

好評を得ているRaspberry Pi Pico/Pico2の拡張基板「PICO-HDMI-PLUS」との間で、高い相互活用性と発展的利用性を実現しています。圧電スピーカーの接続端子割り当てに違いはあるものの、4つのタクトスイッチやDVI(HDMI互換)の信号割り当ては共通化されており、ハードウェア構成の互換性が高く保たれています。

開発環境において、製品ごとのピン配置定義(ヘッダーファイルやインポートファイル)を適切に切り替えることで、PICO-HDMI-PLUSにはない加速度センサー機能を除くアプリケーションプログラムを、コードを書き換えることなくそのまま共通して動作させることが可能です。これにより、これまでに蓄積された学習資産や開発ノウハウを無駄にすることなく、シンプルで高機能な「RP2350A-DVI」へとスムーズにステップアップできます。

MCU・メモリ仕様

  • MCU: Raspberry Pi RP2350A (Dual Cortex-M33 / Hazard3 RISC-V @ 最大150MHz)
  • FPU: ハードウェア単精度浮動小数点演算ユニット(FPU)内蔵
  • 内蔵RAM: 520KB (SRAM)
  • 外部FLASH (ROM): 8MB (QSPI接続)

オンボード・インターフェース

  • 形状:PICO2準拠端子配置
  • タクトスイッチ x4
  • 圧電スピーカー
  • LED
  • 加速度センサー: KXTJ3-1057
  • OLEDディスプレイ端子
  • I2C端子

「RP2350A-DVI」のユースケース

1. 個人の電子工作や教育機関での実験・演習で利用

電子工作や実験・演習でブレッドボードに挿していた従来のPICO/PICO2を「RP2350A-DVI」に置き換えるだけで、TV/PCモニターへの出力機能や加速度センサー機能が追加され、スイッチや圧電スピーカーの配線も行う必要がなくなるため、演習効率と作成されたアプリケーションの表現力が劇的に向上します。

上に示す基板の部品・端子配置図で示されるように、「RP2350A-DVI」左半分の端子の配置はPICO/PICO2に準拠しています。また、ビデオ出力やタクトスイッチ用に右半分の12端子を占有していますが、多くの試作・実験・演習に十分なデジタル端子 x11、アナログ・デジタル端子 x4 を使用することができます。

さらに、身近にあるTVやPCモニターへの大画面出力を手軽に利用できるようになることで、「小さな液晶画面に文字を出すだけ」という従来のマイコン演習の制約から解放されます。グラフィカルな計測データの可視化、表現豊かなUI設計、本格的な動的アプリケーションの構築など、学生や開発者が思い描く「制作物の発想の範囲」を大きく広げ、より創造的で実用的なものづくりへと導きます。

2. 手に乗せて遊べるインタラクティブゲームの作成(物理的な動きと連動) 

「RP2350A-DVI」では、入力に4つのスイッチと加速度センサー、音の出力に圧電スピーカー、映像の出力にTVやPCモニターを使用できます。出力画面の解像度は「320×240」あるいは「400×240」に対応しているため、本基板のみで少しクラシックなドット絵風のインタラクティブゲームやグラフィックアプリケーションを自由に作成・学習できます。

特に、オンボードの加速度センサーを活用することで、デバイスを直接手で持って操作するゲームや装置の作成が可能です。ボタン操作だけでなく、コントローラーとなる基板そのものの動き(前後左右への移動や傾き)を検知して画面内のキャラクターを動かしたり、直感的な操作を求められる体感型ゲームを構築したりする楽しさを手軽に体験できます。

3. コンパクトなデジタルサイネージの作成

TVやPCモニターに高精細な画像や映像を出力でき、基板自体が極めて小さく軽いため、モニター背面のHDMIコネクタのそばにスマートに(あるいはぶら下げて)配置できます。また、大容量の8MBのFlash ROMを搭載しているため、複数の画像データを基板内に登録可能。外部にPC等を用意することなく、本基板のみで実用的なデジタルサイネージ(電子看板)を構築できます。


プログラミング

PicoDVIを使用するプログラミングは、CircuitPythonやArduino言語(C/C++)で行うことができます。

  • CircuitPythonを使用する場合には、PICO2用のファームウエアをご利用ください。
  • Arduinoを使用する場合には、ボードとしてPICO2あるいはGeneric RP2350を選択し、RP2350Aを指定してください。

RP2350-DVIでモニタ画面に文字と簡単な図形を表示するCircuitPythonのプログラム例を以下に示します。

これだけで、大画面に表示ができてしまいます。ワクワクしますね。

# 表示システムの初期化を行う
import displayio, picodvi, board, framebufferio

displayio.release_displays()

fb = picodvi.Framebuffer(
    width=320, height=240, color_depth=8,
    clk_dp=board.GP14, clk_dn=board.GP15,
    red_dp=board.GP12, red_dn=board.GP13,
    green_dp=board.GP18, green_dn=board.GP19,
    blue_dp=board.GP16, blue_dn=board.GP17)

display = framebufferio.FramebufferDisplay(fb)

group = displayio.Group()
display.root_group = group

# 文字列の表示を行う
from adafruit_display_text import label
import terminalio

group.append(label.Label(terminalio.FONT, text="MicroFan", x=0, y=10, scale=2, color=0xFFFFFF))
group.append(label.Label(terminalio.FONT, text="RP2350A-DVI:PicoDVI", x=0, y=30, scale=2, color=0xFFFFFF))

# 図形の表示を行う
from adafruit_display_shapes.line import Line
from adafruit_display_shapes.rect import Rect
from adafruit_display_shapes.circle import Circle
from adafruit_display_shapes.triangle import Triangle

group.append(Line(0, 80, 320, 80, 0xFF00FF))
group.append(Rect(0, 120, 100, 100, fill=0xFF0000, outline=0xFFFF00))
group.append(Circle(160, 170, 50, fill=0x00FF00, outline=0xFFFF00))
group.append(Triangle(260, 120, 210, 220, 310, 220, fill=0x0000FF, outline=0xFFFF00))


回路図


関連製品

TRYGEAR-VIZ-RP2350B

PICOLAB-HDMI

PICO-HDMI-PAD