Camemake
CameVision Ego Single Sensor · 1 IMU
Buy
This package

Software

Three ways to use the camera: USB Camemake UVC, the phone app in Standalone, or the phone app in Server mode. The PC flashes the board. The live page is a lab view, not a substitute for those three.

Three options

1 · Camemake UVC Plug USB. Windows Camera opens Camemake (2207:0016), MJPEG at full resolution. No phone. Mono / MIRA220 is 1400×1600 on every boot, any computer. Wi-Fi is not required.
2 · Standalone The CameVision app starts and stops a recording over Bluetooth. Full camera + IMU land on the microSD card. The phone copies the files and uploads them to the server you set in Setup. The card warns when it is nearly full. You can clear recordings from the app.
3 · Server Same app, same card files. The camera uploads over its own Wi-Fi to that server. The card is the buffer if the network drops. Setup holds the server URL. It starts as a template: https://server.example.com/camevision/v1.

Phone app: App and CameVision-App. Recorder: tools/camevision_agent.py. Server contract: android/server.template.json. Scan name contains CameVision + last 6 MAC hex digits.

Capture

ItemValue
SyncRV1126B direct sensor control. Maximum the RV1126B can handle.
Frame rateAll shop sensors 60 fps. This board can go higher than 60 fps.
AE / AWBrkaiq 3A. UVC auto-exposure and white-balance. MIRA220 AWB R×1.90 · G×1.38 · B×3.06, black −10.
IMULSM6DSVQTR ×1 · 480 Hz
TimestampCLOCK_MONOTONIC_ns. session.json time_base. imu0.csv t_unix_ns, t_mono_ns. RV-3028 sets the system clock.
Exposure · 50 / 60 HzUVC power-line 0 / 1 / 2. 50 Hz: N × 10 ms, 25 fps. 60 Hz: N × 8.333 ms, 30 fps.

Camemake UVC

After the camera is live, USB is a composite gadget: Camemake webcam plus the microSD as a drive. This binds on every reboot. Wi-Fi is only for Server mode.

Value
VID:PID2207:0016 · product Camemake
ClassComposite 0/0/0 · UVC IAD + mass-storage
FormatMJPEG
Sizes × fps1400×1600 · 1050×1200 · 700×800 · 350×400 at 60 / 30 / 15
ControlsExposure, brightness, contrast, gain, gamma, AE, power-line, white-balance
SD cardWindows / Linux mount the FAT volume (sessions in camevision/sessions/)
ImageOn-board AM ISP (MIRA220 LUT) or rkaiq (SC233). The gadget only sends JPEG.

Host: Windows Camera, or any UVC client. Do not open the card in the app while the computer has the drive mounted.

On the card

One camera, one IMU. This is not the Ego stereo My Recordings/<serial>_<boot>_<index>/episode/ take (two HEVC files + IMU JSONL on the PC).

<card>/camevision/sessions/20261023T160102Z/
  session.json
  imu0.csv
  cam0/video.mp4
  COMPLETE
FileContent
cam0/video.mp4Full-resolution H.264. SC233 1920×1200. MIRA220 1400×1600
imu0.csvt_unix_ns,t_mono_ns,ax,ay,az,gx,gy,gz — accel m/s², gyro deg/s
session.jsonFormat camevision-session-1, product CV-EGO01-SS

Position preview in the app is 10 seconds over Bluetooth at quarter resolution. It is not written to the card.

Where it runs

PlaceWhat sits there
This PCOffline tool, USB driver, flash, overlay push, ADB forwards, autostart, diagnostics
This phoneCameVision app — Standalone / Server, Bluetooth control, card send
Board /userdataLive page, IMU HUD, Wi-Fi + BLE, recorder, Camemake UVC lock, IQ, boot scripts
Board kernelDTB, CSI, IMU SPI, SDIO Wi-Fi/BLE, ADB then Camemake UVC

Sources: tools/. Overlay → /userdata/.

Drivers

BlockDriverLive nodes
MIPI sensorsc233hgsI2C 3-0030 · chip id 0xcb61 · /dev/v4l-subdev4
CSI / CIF / ISPdphy0 · mipi0-csi2 · rkcif · rkisp-vir0/dev/video13 NV12 1920×1200
3A / IQrkaiq_3A_serversc233hgs_efference-sc233hgs_default.json, 50 Hz AE
IMUst,lsm6dsvOne IIO pair on SPI1
Wi-Fi / BLEVS6621 SDIOwlan0
USB gadgetDWC3 peripheralADB 2207:0006, then Camemake UVC 2207:0016

Boot chain

S11hwclock
  → S99camevision-single
    → camevision-single.sh
      → kmpp, hw, LED, telnet :2323
      → camevision-wifi.sh + BLE name
      → camera rails / S10mira220
      → single_imu_hud.py (:8083)
      → camevision_agent.py (card + GATT + :8090)
      → single_live.py (:8081)
    → _lock_uvc_safe.sh after the live JPEG (Camemake UVC + SD, any host)

On the board

BlockFileRole
Live pagetools/single_live.pyOne MJPEG pane from /dev/video13, port 8081
IMU HUDtools/single_imu_hud.pyOne LSM6 JSON, port 8083
Boot starttools/camevision-single.shRails, 3A, HUD, live
Inittools/S99camevision-singleInstalls to /etc/init.d
IQtools/iqfiles/sc233hgs_efference-sc233hgs_default.json50 Hz anti-flicker, normal AE
Wi-Fi / BLEtools/camevision-wifi.shVS6621 STA + BLE name
Recordertools/camevision_agent.pyCard sessions, BLE GATT, HTTP :8090
Phone appandroid/Standalone / Server

Live page routes · 8081

One pane.

PathBody
/Mono HTML + IMU HUD
/ov0MJPEG from /dev/video13
/snap0One JPEG
/statFPS and format JSON
/imuProxy to :8083
/brand.pngCamemake mark

Flash

LBAImage
loader (db once)rv1126b_spl_loader_k4a8g.bin
0x0env.img
0x40idblock.img
0x440uboot.img
0x2440camevision_boot.img
0x7C40userdata.img
0x207C40oem_noko.img
0x607C40rootfs_bootstable.img

From the offline tool: USB / Maskrom · select CameVision Ego Single Sensor · Install. Overlay is pushed over ADB.

python tools/cv_single_flash.py --prebuilt
python tools/cv_single_overlay_deploy.py
python tools/cv_single_page.py

On this PC

BlockFileRole
Offline tooltools/cv_single_studio.pyLocal site :8765
Host first-runtools/cv_single_setup.pyPython, ADB, USB, autostart
USB drivertools/cv_single_driver.pyRockusb + ADB
Flashtools/cv_single_flash.pyMaskrom write
Overlaytools/cv_single_overlay_deploy.pyADB copy into /userdata
Open livetools/cv_single_page.pyForwards 8081 / 8083
Autostarttools/cv_single_autostart.pyPlug-in watcher
Pack offlinetools/cv_single_pack_offline.pyFolder + zip for a clean PC