ModuLab Build • Code • Create
Login Register
ModuLab Dashboard Jar
ModuLab Workshop

Freeplay

Welcome to the ModuLab: each module panel is a device or feature you can test, while utility panels help you organise, save, and review your lesson progress.

Dashboard Help

Collapse
Expand
⋮⋮Move Panel
Set Mode / Run
Stop
Pause
📖Open Notes

Loading ModuLab help…

Workspace Settings

LED

LED Matrix

Pixel Art Editor 8 x 32 pixels
Brightness Auto
Animation
Frame Brightness 8
Preview in Browser Preview the frames locally on browser.
Run on Device Read copies the device animation into the editor. Send uploads to device RAM and saves to flash. Play starts, Pause holds the current frame, and Stop ends playback.
No animation frames yet. Draw a bitmap, then add it as frame 1.

RGB Matrix

Pixel Art Editor 8 x 8 pixels
Selected #ff3366
RGB Animation Builder
Preview in Browser Preview the frames locally on browser.
Run on Device Read copies the device animation into the editor. Send uploads to device RAM. Play starts, Pause holds the current frame, and Stop ends playback.
No RGB frames yet. Paint the panel, then add frame 1.

Motion Sensor

Pitch
Roll
Yaw

Sonar

Forward Distance
Near Front of device Far
Range

Clock

Time

Art Clipboard

LED Matrix
RGB Matrix
OLED

Text

Text

Automation

Example Routines
Expression Help
Use plain expressions throughout automation. Quote string literals in actions.
Variablesdistance_cm, pitch, roll, yaw, mode_number, mode_name, error_code, time_hour, time_minute, time_second, time_hhmm, display_text, display_text_length, scroll_mode, animation_current_frame, animation_frame_count, animation_interval_ms, animation_playing, bluetooth_name, bluetooth_uart_baud, elapsed_ms
Helpersclamp, round, floor, ceil, abs, min, max, int
Condition expressions
abs(pitch)
                                    roll
                                    distance_cm / 10
                                    mode_name
                                    pitch > roll
Action expressions
DISPLAY_ANIMATION_FRAME {{ clamp(round(distance_cm / 10), 0, 7) }}
                                      P {pitch} R {roll}
                                      {mode_name}
                                      HELLO {bluetooth_name}
Distance
Pitch
Roll
Yaw
Mode
Mode #
Error
Text
Text Len
Scroll
Frame
Frames
Frame ms
Playing
BT Name
BT Baud
Hour
Minute
Second
HH:MM
Elapsed ms
Automation Routine Add blocks, watch live values, then run or step through.

Live Feed

Video Feed To RGB 8x8 Sample camera or video into the RGB matrix editor and optionally auto send.
Idle. Choose source and press Start.
Feed Text
Feed StatusIdle
Pick a friendly RSS source, or use a CORS-friendly JSON endpoint. RSS feeds use latest_title; weather feeds use values like current.temperature_2m.

The Terminal

Reference

Schema Status: checking...

Click a command name to fill the Raw Command box. Bitmap rows use eight uppercase hexadecimal values, one per display row. Animation frame indexes start at 0.