shimeta-py IDE
shimeta-py IDE is the Python code editor built into Workbench. Paired with the on-board shimeta-py v1.0.4 runtime, it lets you write Python code in the IDE and run it directly on the board.
What it does
shimeta-py IDE integrates a Python editor and the on-board runtime into the IDE:
- Top buttons Run / Stop / Samples, center editor with line numbers, live output at the bottom
- Code is pushed to the Pico-G1 over SSH and executed by the on-board
shimeta-py v1.0.4 - shimeta-py can directly access on-board hardware such as the NPU / GPIO / I2C
- Multi-file management — create/save/switch files all inside the IDE
Best for complex script development; for quick debugging use the ch09 Agent or the ch08 Terminal.
Where to find it
Top tab → "shimeta-py IDE"

Interface layout
| Area | Contents |
|---|---|
| Top buttons | Run / shimeta-py v1.0.4 / Stop / Clear output / Samples |
| Upper-right buttons | + New file / Save |
| Center editor | Python code (with line numbers) |
| Bottom output area | sh output (download/extract/install process + code run results) |
shimeta-py v1.0.4 (on-board runtime)
shimeta-py v1.0.4 is preinstalled on the board — the Python runtime of the Pico-G1.
Code edited in the IDE is pushed to the board over SSH and executed by shimeta-py.
shimeta-py v1.0.4 comes preinstalled with the board firmware; no manual download needed.
Editor features
Top buttons
| Button | Purpose |
|---|---|
| Run | Execute the current code on the board |
| shimeta-py v1.0.4 | Shows the on-board Python runtime version |
| Stop | Terminate the current run |
| Clear output | Clear the output area below |
| Samples | Load sample code |
Upper-right buttons
| Button | Purpose |
|---|---|
| + New file | Create a new Python script |
| Save | Save the current script |
Code editing
Standard Python editing features are supported:
- Line numbers
- Syntax highlighting
- Auto-indent
- Copy / paste / undo / redo
Running code
Steps
- Write Python code in the editor
- Click the top "Run" button
- The IDE automatically sends the code to the board over SSH
- The on-board shimeta-py v1.0.4 executes it
- Output appears in the bottom sh output area
Sample code
Click the "Samples" button to load a sample:
# ShiMetaPi IDE — GK7206 Python
import time
for i in range(5):
print(f"step {i}")
time.sleep(1)
print("Done!")Output example
python-gk7206.tar.gz 99% |***********************| 19.6M 0:00:00 ETA
python-gk7206.tar.gz 99% |***********************| 19.1M 0:00:00 ETA
python-gk7206.tar.gz 100% |***********************| 19.2M 0:00:00 ETA
'/mnt/python-gk7206.tar.gz' saved
[2/2] Extracting to /mnt...
sh: write error: No space left on device
Done. Python 3.11 installed.
Run: . /mnt/python/setup.sh
python3 -c 'print(1+1)'The sh output area shows the whole flow: on-board Python package download → extract → install → run results.
Multi-file management
Creating a file
- Click "+ New file" in the upper-right corner
- Enter a file name (e.g.
test.py) - Write code in the editor
- Click "Save"
Files are saved under the default project of the current workspace (WORKSPACE).
Switching files
The WORKSPACE area on the left of the workspace lists all .py files of the current project; click to switch.
On-board hardware example
shimeta-py runs on the board and can access hardware directly:
# Check the NPU device file
import os
print(os.path.exists('/dev/npu.0'))
# Run a system command
import subprocess
result = subprocess.run(['uname', '-a'], capture_output=True, text=True)
print(result.stdout)
# Read the temperature (if a sensor is present)
with open('/sys/class/thermal/thermal_zone0/temp') as f:
temp = int(f.read()) / 1000
print(f"CPU temperature: {temp}°C")shimeta-py vs. standard Python 3
| Item | shimeta-py | Standard Python 3 |
|---|---|---|
| Source | Preinstalled with the board firmware | Generic Python |
| Purpose | Runs code pushed from the IDE | Local execution |
| Board access | Direct access to NPU / GPIO / I2C on-board hardware | Generic features |
Performance reference
- Startup latency: about 1-3 seconds (code push to the board + shimeta-py startup)
- Run output: streamed back to the IDE output area in real time
- Timeout: no output for 60 seconds is treated as a timeout by default
Troubleshooting
| Symptom | Fix |
|---|---|
| Clicking "Run" does nothing | Board not connected; go back to ch02 |
| Output shows "shimeta-py: not found" | On-board firmware incomplete; contact technical support |
| Output shows "No space left on device" | On-board disk full; clean up old files |
| Code runs but no output | Check the print statements in your code |
| Garbled characters | Check the IDE encoding setting; use UTF-8 in the terminal |
Next
- ch08 Terminal: SSH to the board manually
- ch09 Agent: let Claude Code write code for you
- ch04 One-Click Deploy: run models instead of scripts
