

Projectionball
ProjectionBall v7.x with RP2040
- Size
- 60 × 60 mm
- Copper layers
- 2
- Thickness
- 1.6 mm
- Parts
- 76
- Nets
- 63
- Pads
- 294
- Tracks, vias
- 1,121, 68
- Pours
- 293
- Routed
- Yes
- KiCad
- KiCad 5 (file 20171130)
- Created
- 21 Oct 2023
- Updated
- 9 Feb 2024
Overview
Projectionball is an open-source printed circuit board by meerstern, from the meerstern/ProjectionBallUnit repository on GitHub. It is a 2-layer board of 60 × 60 mm with 76 parts on 63 nets, routed with 1,121 tracks and 68 vias.
It is built around the RP2040, W25Q16JVUXIQ and LD3985M33R, with the SD3077 and CR1220-2 among its other parts. Its parts include 27 capacitors, 14 resistors, 7 connectors, 5 ICs and 5 switches. It belongs with the RP2040 boards of this library.
Main components
5RP2040
LQFN-56(7x7)12bit 133MHz 30 LQFN-56(7x7) Microcontrollers (MCU/MPU/SOC) ROHSRaspberry PiMicrocontrollers (MCU/MPU/SOC)W25Q16JVUXIQ
USON-8-EP(2x3)-40℃~+85℃ 100,000 cycles 10uA 133MHz 16Mbit 2.7V~3.6V 20 Years 3ms SPI USON-8-EP(2x3) NOR FLASH ROHSWinbond ElecNOR FLASHLD3985M33R
SOT-23-5L-40℃~+125℃@(Tj) 1 150mA 150uA 3.3V 30uVrms 50dB@(10kHz) 60mV@(150mA) 6V Fixed Over Current Protection、Over Temperature Protection、Enable Positive SOT-23-5L Voltage Regulators - Linear, Low Drop Out (LDO) Regulators ROHSSTMicroelectronicsVoltage Regulators - Linear, Low Drop Out (LDO) RegulatorsSD3077
SOP-8-208mil-40℃~+85℃ 0.8uA 2.7V~5.5V 800nA Built-in I2C Temperature compensation、Backup power management and battery charging、InsideSRAM/NVRAM、Programmable clock output、Alarm function、Built-in crystal oscillator、Periodic interrupt output、Countdown timer Yes SOP-8-208mil Real Time Clocks ROHSWAVEReal-Time Clocks (RTC)CR1220-2
--40~80℃ Battery base CR1220 Phosphor bronze - Battery holder base ROHSQ&JButton And Strip Battery Connector
README
README.md簡易レーザープロジェクタ ProjectionBall Unit
概要
- ロボット制御技術を応用したガルバノスキャナ方式の簡易レーザープロジェクタです
- 文字や時刻、日時、内蔵図形を描画することが可能です
- 本体ボタン、PCのCOMポートやUARTを介して設定を変更することが可能です
- 任意の文字列は英数字を最大5文字同時表示、それ以上は32文字までスクロール表示可能です
- 投影距離は明るい場所で数m以下、暗い場所で10m以下が目安です
- Pico-SDKを使用したソースコードを公開しています
仕様
- 電源スイッチ、モード切替、パターン切替、BOOTボタン、RESETボタンを搭載しています
- マイコンRP2040、RTC SD3077、モータFA-130、ドライバTB6612、エンコーダMA732Qを使用しています
- 赤色レーザーモジュール(出力1mW以下、ClassⅡ同等品)
- 5V/0.8AのUSB電源(micro USB)で動作
- 電源LED(青)、エラーLED(オレンジ)を搭載
- 時刻(RTC)/設定データ一時保存用電池 CR1220
- シリアルポートP1 ボーレート9600bps、データサイズ8bit、パリティ無、ストップ1bitが既定値
- サイズ60mm x60mm x 43mm(突起部、USBコネクタ除く)、固定穴45mm x45mm M3x4
アプリケーション例
- 移動ロボットに組込して進路を表示
- イベント等での情報を表示
注意点
- この製品はclassⅡのレーザーを使用しています
- レーザーを使用しているため、光源を直視しないでください
- 分解や改造をした状態で使用すると非常に危険ですので、お控えください
- この製品によって引き起こされることについては、当社は責任を持ちません
- 目にレーザー光が入る可能性があるため、人や動物に対して投影しないでください
- 汎用モータを使用しているため、描画のちらつきや崩れがあります
- ガルバノミラーはガラス製表面鏡のため、怪我をする恐れがあります 手を触れなでください
- 光軸がずれる可能性があるため、落下や衝撃を与えないでください
- 本製品は研究、開発目的の用途を想定しています
- 起動後にエラーLEDが点灯する場合はミラー部分が回転できるか、引っかかりがないか確認し、電源を入れ直してください
- 告知なしに部品や仕様を変更する場合があります
使い方
a.単体で使用する場合
microUSBをUSB電源等に接続し、電源スイッチ、モード切替、パターン切替スイッチで操作することが可能です
b.他の機器と連携する場合
microUSBをUSB電源等に接続し、P1端子を介してUART通信(ボーレート9600bps, 3.3V)可能です
マイコン等からコマンドを送信して制御することが可能です
c.設定を行う場合
PC等にmicroUSBを接続し、Teraterm等からシリアルポートを介してコマンドで設定を行うことが可能です
d.ファームウェアの書換を行う場合
PC等にmicroUSBを接続し、BOOTボタンを押した状態でRSTボタンを押すとUSBドライブとして認識されます
ファームウェアファイル(*.uf2)を認識されたUSBドライブに書き込むことでファームの書換が可能です
描画モード
- パターン0: 星
- パターン1: 矢印
- パターン2: メール
- パターン3: スマイル
- パターン4: 太陽
- パターン5: 雲
- パターン6: 傘
- パターン7: 雪だるま
- パターン8: 雲と雷
- パターン9: ハート
描画パターン
- モード0: 通常描画
- モード1: 一筆書き描画
- モード2: 回転描画
- モード3: デジタル時計
- モード4: デジタル日付
- モード5: 任意メッセージ
※メッセージは英数字、最大5文字、それ以上はスクロール表示です
描画例
各部機能
コマンド
- コマンド文字列を送信することで描画モードやパターン等の設定が可能です
- 改行コードは"\r\n"がデフォルトです
日時設定コマンド
| コマンド名 | コマンド | 引数 | 例 |
|---|---|---|---|
| 時刻設定 | tim= | hhmmss | tim=220212(Enterキー) |
| 時刻確認 | tim? | なし | tim?(Enterキー) |
| 日時設定 | day= | YYMMDD | day=220305(Enterキー) |
| 日時確認 | day? | なし | day?(Enterキー) |
※日付時刻は必ずそれぞれ2桁で入力してください
例 2時8分01秒→tim=020801
制御コマンド
| コマンド名 | コマンド | 引数 | 例 |
|---|---|---|---|
| モード確認 | mod? | なし | mod?(Enterキー) |
| モード設定 | mod= | モード | mod=1(Enterキー) |
| パターン確認 | ptn? | なし | ptn?(Enterキー) |
| パターン設定 | ptn= | パターン | ptn=2(Enterキー) |
| ソフトリセット | rst! | なし | rst!(Enterキー) |
| 描画一時停止 | pus! | なし | pus!(Enterキー) |
| 描画再開 | rsm! | なし | rsm!(Enterキー) |
| 描画角設定 | deg= | 角度 | deg=90(Enterキー) |
| 描画角確認 | deg? | なし | deg?(Enterキー) |
※描画角は描画の上下左右等の角度を変更する場合に使用します
※描画角のデフォルトは0度(deg=0)です
ユーザ設定コマンド
| コマンド名 | コマンド | 引数 | 例 |
|---|---|---|---|
| 描画文字列確認 | str? | なし | str?(Enterキー) |
| 描画文字列設定(MEM) | str= | 英数字 | str=Hello(Enterキー) |
| 描画文字列設定(RAM) | stg= | 英数字 | stg=Hello(Enterキー) |
※MEMの場合、文字列はメモリに保存され、自動的に再起動します
※RAMの場合、文字列は即時反映されますが、電源再投入等でメモリに保存された文字列に戻ります
タイマ設定コマンド
| コマンド名 | コマンド | 引数 | 例 |
|---|---|---|---|
| タイマ確認 | tst? | なし | tst?(Enterキー) |
| タイマ有効化 | ten! | なし | ten!(Enterキー) |
| タイマ無効化 | tds! | なし | tds!(Enterキー) |
| 停止時刻確認 | pus? | なし | pus?(Enterキー) |
| 停止時刻設定 | pus= | hhmm | pus=1230(Enterキー) |
| 再開時刻確認 | rsm? | なし | pus?(Enterキー) |
| 再開時刻設定 | rsm= | hhmm | pus=1530(Enterキー) |
※タイマ確認は0で無効状態、1で有効状態を示しています
キャリブレーションコマンド
| コマンド名 | コマンド | 引数 | 例 |
|---|---|---|---|
| 描画中心確認 | cen? | なし | cen?(Enterキー) |
| 描画中心設定 | cen= | X,Y | cen=100,-200(Enterキー) |
※レーザーが基板や筐体に当たって描画が隠れてしまう場合にのみ、描画中心を調整します
※描画中心のキャリブレーション値は出荷時に調整しています
※キャリブレーション値は初期値に対してX軸(縦方向)、Y軸(横方向)のオフセット値を設定します
エラーLED点灯時の確認
- 起動後にエラーLEDが点灯する場合はミラー部分が回転できるか、引っかかりがないか確認し、電源を入れ直してください
- ミラーが回転して描画を開始しない場合は下記の図のようにミラーの角度を調整して電源を入れ直してください
- 手前から見てレーザーモジュールからの光がX軸ミラー、Y軸ミラーの2つのミラーに反射する角度に調整します
- ミラーはガラス製のため、怪我の恐れがあります 手を触れないように注意してください
電池交換時の確認
- RTC電池は電源供給なしで3年以上、日時、時刻及び設定情報を保持することが可能です
- 万一、保持できなくなった場合はCR1220の電池交換を行ってください
- 設定情報はモード、パターン、タイマ状態、描画角を保持しています
- 電池交換後は日時、時刻及び設定情報が不定値となるため、必ず時刻、日付、モード、パターン、タイマ状態、描画角を再設定してください
- 特に描画角が不定値になると正しく描画されません deg=0(Enterキー)とコマンドを入力して設定してください
外観
License - MIT
Parts
76| Qty | Value | Footprint | References |
|---|---|---|---|
| 18 | 0.1u | Capacitor_SMD:C_0603_1608Metric | C1, C2, C3, C4, C6, C13, C14, C15, C18, C20, C21, C22, C23, C24, C25, C28 +2 |
| 8 | MountingHole_3mm | Mounting_Holes:MountingHole_3mm | REF1, REF2, REF3, REF4, REF9, REF10, REF11, REF12 |
| 5 | 1k | Resistor_SMD:R_0603_1608Metric | R1, R3, R9, R10, R11 |
| 5 | 27 | Resistor_SMD:R_0603_1608Metric | R4, R5, R6, R7, R13 |
| 4 | SW_Push | SMD_PUSHSWITCH:SKRPACE010 | SW1, SW2, SW3, SW4 |
| 3 | 10u | Capacitor_SMD:C_0805_2012Metric | C8, C12, C17 |
| 2 | 10k | Resistor_SMD:R_0603_1608Metric | R2, R15 |
| 2 | 10p | Capacitor_SMD:C_0603_1608Metric | C5, C11 |
| 2 | Ferrite_Bead_Small | Inductor_SMD:L_0603_1608Metric | FB1, FB2 |
| 1 | 0.01u | Capacitor_SMD:C_0603_1608Metric | C10 |
| 1 | 100u | Capacitor_SMD:CP_Elec_6.3x3.9 | C26 |
| 1 | 12MHz | FA238V:FA238V | X1 |
| 1 | 2.2u | Capacitor_SMD:C_0603_1608Metric | C16 |
| 1 | 20k | Resistor_SMD:R_0603_1608Metric | R12 |
| 1 | 330 | Resistor_SMD:R_0603_1608Metric | R14 |
| 1 | 470u | Capacitor_SMD:CP_Elec_8x10 | C19 |
| 1 | CR1220 | CR1220_2895:2895 | BT1 |
| 1 | Conn_01x07 | Connector_PinHeader_2.54mm:PinHeader_1x07_P2.54mm_Vertical | J1 |
| 1 | D | Diode_SMD:D_SOD-123 | D3 |
| 1 | ENC1 | Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_Vertical | J3 |
| 1 | ERR_LED | LED_SMD:LED_0603_1608Metric | D2 |
| 1 | Fuse | Resistor_SMD:R_1210_3225Metric | F1 |
| 1 | GROVE_I2C | GroveCon:GROVE | P2 |
| 1 | GROVE_UART | GroveCon:GROVE | P1 |
| 1 | LD3985M33R | Package_TO_SOT_SMD:SOT-23-5 | U1 |
| 1 | MICRO-USB-SHIELD-ZX62R-B-5P | CON_FCI_USB:CONN-10118194-0001LF-FCI | M1 |
| 1 | MOTOR1 | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | P3 |
| 1 | MOTOR2 | Connector_PinHeader_2.54mm:PinHeader_1x02_P2.54mm_Vertical | P4 |
| 1 | POW_LED | LED_SMD:LED_0603_1608Metric | D1 |
| 1 | Q_NMOS_GSD | Package_TO_SOT_SMD:SOT-23 | Q1 |
| 1 | RP2040 | MCU_RaspberryPi_and_Boards:RP2040-QFN-56 | U3 |
| 1 | SD3077 | Package_SO:SO-8_5.3x6.2mm_P1.27mm | U4 |
| 1 | SW_DPDT_x2 | DPDT_SMD:DPDT_SMD_Large | SW5 |
| 1 | TB6612FNG | tb6612:tb6612-SSOP24 | IC1 |
| 1 | W25Q16JVUX | Package_SON:SON-8-1EP_3x2mm_P0.5mm_EP1.4x1.6mm | U2 |
| 1 | microTF | Connector_PinHeader_2.54mm:PinHeader_1x06_P2.54mm_Vertical | J4 |
More from meerstern/ProjectionBallUnit
2- 2 layers20 × 28 mm

- 2 layers20 × 11 mm

Similar boards
- 4 layers92 × 56 mm

REIN R1
rein-baremetal/REIN_R1_KiCad
Dual-MCU baremetal embedded development board featuring high-speed QSPI storage, hardware USB hub, and flexible power management. Open for PCB trace routing collaboration
177 parts2 - 2 layers42.5 × 21 mm

- 4 layers58 × 58 mm

- 2 layers22 × 26.4 mm

- 2 layers45 × 45 mm

- 2 layers99.1 × 95.3 mm

- 4 layers40 × 49 mm

ADC
maknoll/MRI_ADC_Probe
This repository includes all hard- firm- and software resources realated to MRI ADC Probe developed for measuring gradient fields in a running MRI scanner.
69 parts - 2 layers23.9 × 19.8 mm

Questions
How big is the Projectionball PCB?
It measures 60 × 60 mm and has 2 copper layers, 1.6 mm thick.
What parts does the Projectionball use?
76 parts, built around the RP2040, W25Q16JVUXIQ, LD3985M33R and SD3077. The full list of its parts is on this page, with links to each part's symbol and footprint where PCBKit's library has them.
Where can I download the Projectionball KiCad files?
From the meerstern/ProjectionBallUnit repository on GitHub, at the commit this page was made from: the board is pcb/main/projectionball.kicad_pcb. PCBKit opens the board in the browser, with nothing to install.
Can I use the Projectionball design in my own project?
Its repository states no licence, so its author keeps all rights: ask meerstern before reusing the design.