Introduction To ARC-Lite
Table of Contents
What Is ARC-Lite?
ARC-Lite is a cross-platform, education-focused robotics app for learning, experimenting, and controlling robots. It is the mobile and tablet companion to Synthiam's desktop ARC Pro platform. ARC-Lite runs projects authored in ARC Pro and installs them from the Synthiam Cloud.
With ARC-Lite you can:
- Load and run full ARC robot projects from the Synthiam Cloud.
- Follow guided, step-by-step educational lessons tied to specific robots.
- Control a physical robot with a touch-based remote control interface.
- Program visually using Google Blockly drag-and-drop blocks.
- View a live camera feed and use computer vision tracking features.
- Control servos, motors, sensors, and audio from a single unified app.
ARC-Lite includes four pre-loaded robot projects (AdventureBot, JD, Roli, Six) that download automatically on first launch. No initial robot configuration is required: power on a supported robot, connect your device to its WiFi network, and tap Go.
Note: Review the Installation & Required Permissions section before launching ARC-Lite for platform-specific setup details.
Who Is It For?
ARC-Lite is built for learners, educators, hobbyists, and newcomers to robotics. It emphasizes approachability for younger students while still offering depth for intermediate users.
| Audience | How They Use ARC-Lite |
|---|---|
| Students (K–12 and beyond) | Follow guided lessons, complete activities, earn stars, and experiment in Playground mode. |
| Educators & Classrooms | Use structured activity groups with progressive lessons, hints, and built-in completion tracking. |
| Hobbyists | Drive robots in Playground, write Blockly programs, and explore community cloud projects. |
| Beginners | Build robot behaviors with drag-and-drop Blockly blocks—no text coding required. |
| Intermediate programmers | View the JavaScript generated from Blockly, inspect variables, and refine logic. |
| Guests / First-time users | Launch in Guest mode for instant access without signing up (limited saving). |
The app is intentionally approachable: it includes a profanity filter for profile names, a mascot with contextual tips, and audio feedback for user actions to support learners of all ages.
Supported Robots
ARC-Lite ships with four popular partner projects pre-loaded and available offline after the first launch.
| Robot | Type | Description |
|---|---|---|
| AdventureBot | Wheeled rover | Beginner-friendly two-wheeled robot, easy to assemble and drive. |
| JD | Humanoid | Two-legged biped with arms; supports walking and gestures. |
| Roli | Tracked rover | Robust tracked-wheel rover suitable for simple terrain navigation. |
| Six | Hexapod | Six-legged walker with a full range of leg motion for advanced movement lessons. |
All robots communicate with ARC-Lite over WiFi using the EZB hardware controller. The app connects to each robot’s local WiFi access point and uses a standard TCP socket for control and telemetry.
Getting Started
First Launch
- Open ARC-Lite. The Initialization screen appears and begins preparing the app.
- The app downloads the four default robot projects from the Synthiam Cloud (requires internet on first launch only).
- When downloads finish, you are taken to the Profile Selection screen.
Quick Start (Guest Mode)
- On the Profile Selection screen, tap Go on the Guest tile and confirm the guest-mode limitations (no saving).
- Select a robot from the Select Robot screen.
- Tap a lesson in the Activities tab or choose Playground to drive freely.
- To control a physical robot, follow the Connection wizard to join the robot’s WiFi and connect. Many features can be explored without a connected robot.
Creating a Profile
- Tap + New Profile on the Profile Selection screen.
- Choose an avatar and enter a display name.
- Tap Save. Your profile now appears in the grid and stores activity progress and Blockly programs per robot.
Screen Reference
Key screens and their purpose are summarized below. Each subsection describes what you will see and the main interactions available.
Splash / Initialization Screen
This screen handles startup tasks, downloads the default projects on first launch, and checks for Terms of Service acceptance.
- Shows initialization card with version and Beta badge, the download status for the four default robots, and a progress bar.
- On first launch you must accept the Terms of Service before downloads begin; the dialog is accessible later from Privacy & Legal.
- If there is no internet: if cached projects exist the app continues; otherwise you can Try Again or Continue Anyway. The app retries automatically and resumes downloads when online.
Profile Selection
Home screen where sessions start. Profiles keep separate activity progress, saved programs, and optional cloud credentials.
Screen contents:
- Responsive grid of profile tiles, a + New Profile tile, a Privacy & Legal button, and an update notification when a new app version is available.
- Each tile shows an avatar, display name, a prominent Go button, and an Edit button (hidden for Guest).
Tap Go to start a session; Guest Go displays a confirmation that no data will be saved for that session.
Create / Edit Profile
Create a new profile or change an existing profile’s name and avatar.
Left column
- Large circular avatar preview
- Display name text field
- Back (discard), Delete (when editing), and Save actions
Right column
- Grid of avatar choices to select and preview instantly
- Tip speech bubble from the mascot explaining profiles
Display name rules: must not be blank and must pass the profanity filter, which normalizes characters and blocks banned terms. If rejected, you will be prompted to choose a different name.
Profile deletion requires two confirmations and permanently removes the profile’s saved data; the Guest profile cannot be deleted.
Select Robot
Choose a robot project to load into the session. The screen greets you, shows your avatar, and lists available project cards.
- Project cards show a thumbnail, title, short description, owner (for cloud projects), and an Open/Load button.
- An Explore Synthiam Cloud card links to the Cloud Browser; when offline it displays an Offline chip and WiFi Settings button.
Tap Open/Load to load the project and continue to the Activity Hub.
Cloud Browser
Two-tab hub for browsing downloadable projects and managing your Synthiam account.
Cloud Apps
- Search with debounced results, filters for "My files only" and "Certified only", and sort options.
- Project cards include Open (download/install) and Info for metadata.
- Downloading shows file size, progress bar, and saves the project to your profile on completion.
Preferences
About Synthiam Cloud
Description of cloud features and a link to learn more at Synthiam.com.
Sign In / Create Account
Sign in stores an auth token in your profile; sign out removes only the token and retains local data. Account creation can be completed in-app.
Activity Hub (Limbo Menu)
Central decision screen after selecting a robot: choose an Activity lesson or play in Playground mode.
Identity Panel
Two speech-bubble cards show the You card (profile avatar and name) and the Robot card (type, name, connection status, thumbnail, and Disconnect button when connected).
Activities Tab
If the loaded project includes activities, you’ll see a progress summary and grouped lesson cards. Tap a lesson to start Activity mode. If the robot is not connected, you are guided through the Robot Connection wizard first.
Playground Tab
Always available for free experimentation. Contains a Remote Control card and your saved Playground projects. Create new projects in Blockly, JavaScript, or Python. Save projects locally per robot.
Robot Connection
A three-step wizard that connects ARC-Lite to a physical EZB robot over WiFi. The flow includes preparation, joining the robot WiFi, selecting an IP, and initiating a TCP connection.
Preparation
A dialog provides robot-specific steps: power on, wait for startup signals, and place the robot safely. Dismiss when ready.
Steps
- Join Robot WiFi: Use system WiFi settings to join the robot’s access point. A help dialog with troubleshooting is available.
- Select Robot IP: UDP discovery lists found devices; you can choose a discovered IP or enter a custom IP (default 192.168.1.1).
- Connect: Confirm the network and IP, then tap Connect. On success you return to Blockly Editor or Remote Control depending on how you started the flow.
Blockly Editor
The main programming environment for Activity lessons and Playground projects. The layout divides the screen into a left rail (camera, movement control, run/stop, logs) and a right surface (activity banner and three tabs).
Left Rail
- Camera preview (live MJPEG feed while connected).
- Movement JoyPad: touch joystick for proportional driving; release to stop.
- Run / Stop toggle: Run executes the Blockly program; Stop halts execution immediately and re-enables editing.
- Log panel: scrolling output of up to 100 lines including print messages and errors.
Right Surface
Contains an Activity banner when in Activity mode and three tabs: Blockly, Code, and Variables.
Blockly Tab
Fully featured Google Blockly workspace: toolbox, drag-and-drop blocks, block options (duplicate, delete, comment), zoom controls, and an edit lock while a script runs.
Code Tab
Read-only JavaScript generated by Blockly, shown with syntax highlighting (Monaco Editor). Updates live as blocks change.
Variables Tab
Live table of script variables (Name, Value, Description) that updates during execution to help debug and understand program state.
Saving
Use the Save button to store Blockly XML. In Activity mode saves are tied to the lesson and profile; in Playground saves are stored under the project name and are local to the robot.
Remote Control
A touch-driven interface that loads the robot’s pre-built mobile controls. The interface scales to your screen and typically requests landscape orientation.
If no Back widget is present in the robot layout, ARC-Lite adds a floating Back button so you can return to the Activity Hub.
Common Control Widgets
| Widget | Description |
|---|---|
| Button | Taps execute a robot script. |
| Image Button | Custom image button instead of text. |
| Label | Static annotation text. |
| Script Label | Dynamic text that displays a variable updated by scripts. |
| Connection Status | Shows current WiFi connection state to the EZB controller. |
| Slider / Servo Slider | For general values or servo positions (0–180°). |
| Checkbox / Combobox | Boolean or selection widgets that write to script variables. |
| Camera | Live MJPEG feed; supports fullscreen if layout allows. |
| Servo Pad / Joystick Pad | 2D or movement control surfaces mapping touch to servos or wheel speeds. |
Accounts & Profiles
Profile Types
- Guest Profile: Available by default, requires no setup, cannot save programs or track completion, and cannot use cloud features that require authentication.
- Named Profile (Local): Created with a custom name and avatar. Saves Blockly programs, activity progress, and lesson history locally per device and per robot.
- Synthiam Cloud Account (Optional): Can be linked to a named profile to enable "My files only" filters and access cloud-only features. Account creation and sign-in are available inside the app. Signing out removes only the authentication token; local data remains.
Educational Activities System
Activities are structured learning sequences embedded in robot project files that guide users step by step.
Structure
Robot Project
└── Activity Groups (e.g., "Getting Started", "Intermediate Challenges")
└── Lessons (e.g., "Make the Robot Move Forward")
└── Short description
└── Full instructions (HTML, shown in the Lesson Instructions dialog)
└── Hints (ordered, each with title, description, optional image)
Progress Tracking
For each lesson, ARC-Lite records completion, last opened date, and the saved Blockly program. Progress is stored per profile and per robot so multiple users on the same device have independent records.
Gold Stars & Hints
Completed lessons display a gold star on their thumbnails and contribute to an overall progress bar. Hints are incremental: earlier hints are gentler, later hints provide more detail. There is no penalty for viewing hints.
Blockly Programming Reference
Blockly is a visual programming system where blocks represent actions or logic. The Code tab shows the JavaScript generated from your blocks in real time.
Toolbox Categories & Common Blocks
Logic & Loops
- If / else: Conditional branching.
- Compare / Boolean: Tests and true/false values.
- Repeat / While / Forever: Repetition with options for break and range-based for loops.
Movement & Servo
- Forward / Reverse / Left / Right / Stop: Drive and stop commands; timed variants are available.
- Set servo / Auto position / Servo speed: Control individual servos or play predefined animations.
Audio & Camera
- Play sound / Say: Play audio or speak text, with wait or non-wait variants.
- Start color/face/glyph tracking: Start computer vision tracking and expose tracking variables.
Math, Text & Variables
- Arithmetic / Random / Constrain: Numeric operations and helpers.
- String / Print / Join: Text manipulation and logging to the Log panel.
- Create / Get / Set / Change variable: Manage program state and observe it in the Variables tab.
Ports & Sensors
- Digital read/write, ADC read, PWM: Low-level hardware I/O blocks for sensors and actuators.
- Ping / distance, Battery voltage, CPU temperature: Common sensor-reading blocks for robotics lessons.
Servo Auto-Position Editor
Selecting an Auto Position block opens a full-screen editor showing a robot image with servo sliders mapped to physical locations. Drag sliders to compose poses and visualize them in real time (when connected).
Remote Control Widgets Reference
Key widget behavior notes:
Joystick Pad
Maps touch position to motor speed: center = stop, top = full forward. X axis controls turning through differential wheel speeds with smooth interpolation for gradual speed changes.
Servo Pad
A 2D surface mapping X and Y axes to two servos (e.g., pan/tilt). Useful for camera gimbals or head control with one finger.
Script Label & Camera Widget
Script Label displays values written to named variables by running scripts. The Camera widget shows the live MJPEG stream and supports fullscreen where supported by the layout.
Robot Connectivity
ARC-Lite communicates with EZB robot controllers over a TCP connection after you join the robot’s WiFi access point. The app uses UDP discovery to auto-detect devices on the local network when permitted by the operating system.
Connection Steps
- Power on the robot and wait for its startup signals.
- Join the robot WiFi via your device’s system WiFi settings.
- Open the Robot Connection screen in ARC-Lite and select a discovered IP or enter the IP (default 192.168.1.1).
- Tap Connect to establish the TCP socket.
Auto-Discovery & Manual IP
Auto-discovery uses UDP broadcasts to list found EZB devices. If discovery fails (managed networks, custom firmware), use the Custom option to enter the robot’s IP manually.
Disconnecting
Tap Disconnect in the Robot card at the top of the Activity Hub to end the connection at any time.
Installation & Required Permissions
Platform-specific installation steps and permission notes are summarized below. For detailed instructions follow the links or platform store pages.
Android
Available on Google Play. ARC-Lite requests the following permissions to function correctly:
- Internet: Download projects and check for updates.
- WiFi State / Change WiFi State: Read current network for connection assistance.
- Access Fine Location: Required by Android for WiFi scans used in device discovery.
- Camera: Display live video from the robot.
- Microphone: Speech-to-text for scripts.
- Vibrate: Optional haptic feedback.
On Android 12+, ARC-Lite may also request Nearby Devices permissions for Bluetooth-related features when applicable.
iOS
Available on the App Store. Required permissions include:
- Local Network Access: UDP discovery of EZB controllers.
- Camera: Live robot video.
- Microphone: Speech-to-text used by robot scripts.
Allow Local Network access when prompted to enable automatic device discovery. Manual IP entry remains available if denied.
Windows
Distributed from Synthiam.com (not the Microsoft Store). Installer is a standard .exe. Required permissions include:
- Private / Public Network Access: For discovery and TCP connections.
- Microphone: Speech-to-text.
Allow both Private and Public network access in the Windows Firewall prompt to ensure UDP auto-discovery works across network types. Firewall settings can be adjusted later via Windows Security if needed.
macOS
Available on the Mac App Store. Permissions include:
- Local Network Access: UDP discovery of EZB controllers.
- Camera & Microphone: For video and speech-to-text.
- Incoming Connections: You may be prompted to allow incoming network connections for discovery.
If you deny incoming connections or local network access, auto-discovery may fall back to manual IP entry only.
Offline Use
ARC-Lite is designed to work without internet once the initial setup is complete. After the first-launch downloads are finished, the following features do not require internet:
- Working with the four default robots (AdventureBot, JD, Roli, Six).
- Blockly programming and saving locally.
- Connecting and controlling a physical robot over local WiFi.
- Remote Control and activity lessons whose content is already downloaded.
Features that do require internet include browsing/downloading new cloud projects, Synthiam account sign-in, and app update checks.
Privacy & Data
ARC-Lite collects no telemetry, analytics, crash reports, or usage tracking. All user data is stored locally on the device in the app’s private directory and is never uploaded automatically.
Synthiam Cloud account credentials (email and authentication token) are stored locally and transmitted only when you sign in or sign out. You can read the full Terms of Service and Privacy Policy at any time via the Privacy & Legal button on the Profile Selection screen.