CoolFace
Datasetpublic

pbelevich/lego42176_garage_parking

LEGO 42176 Garage Parking Dataset Imitation learning dataset for driving a LEGO Technic 42176 car into a garage. Recorded with LeRobot v3.0 format. A human operator drives the car via keyboard over Bluetooth while an IP camera records the scene. The policy learns to map camera observations to speed/steering commands. Dataset summary Episodes 100 Total frames 12,037 Duration 13.4 minutes FPS 15 Resolution 640 x 480 Robot type lego42176 Task… See the full description on the dataset page: https://huggingface.co/datasets/pbelevich/lego42176_garage_parking.

sourceHugging Faceupdated 5mo agoView on Hugging Face
0likes190downloads
Dataset Card

LEGO 42176 Garage Parking Dataset

Imitation learning dataset for driving a LEGO Technic 42176 car into a garage. Recorded with LeRobot v3.0 format.

A human operator drives the car via keyboard over Bluetooth while an IP camera records the scene. The policy learns to map camera observations to speed/steering commands.

Dataset summary

Episodes100
Total frames12,037
Duration13.4 minutes
FPS15
Resolution640 x 480
Robot typelego42176
TaskDrive the LEGO car into the garage

Episode statistics

MinMedianMeanMax
Frames48113120260
Duration (s)3.27.58.017.3

Features

FeatureTypeShapeDescription
observation.imagevideo (h264)[480, 640, 3]Camera view of the car and garage
observation.statefloat32[2]Current [speed, steering] normalized to [-1, 1]
actionfloat32[2]Commanded [speed, steering] normalized to [-1, 1]

Action space

Actions are continuous values in [-0.8, 0.8] (normalized from the LEGO hub's [-80, 80] range):

  • speed: positive = forward, negative = reverse
  • steering: positive = right, negative = left

How it was recorded

  1. 1.LEGO 42176 car connected via Bluetooth Low Energy (BLE)
  2. 2.IP camera streaming RTSP at 640x480
  3. 3.Human drives the car from a starting position into a garage using keyboard (arrow keys)
  4. 4.Each episode = one parking attempt (press R to start, drive, press R to save)
  5. 5.Dataset finalized after each episode to prevent data loss

Usage

python
from lerobot.datasets.lerobot_dataset import LeRobotDataset

dataset = LeRobotDataset("pbelevich/lego42176_garage_parking")

sample = dataset[0]
print(sample["observation.image"].shape)  # torch.Size([3, 480, 640])
print(sample["action"].shape)             # torch.Size([2])

Training

This dataset was used to train an ACT (Action Chunking with Transformers) policy on Apple Silicon (MPS backend). See the project repository for training and inference scripts.

Hardware

  • Car: LEGO Technic 42176 Porsche GT4 e-Performance
  • Camera: Dahua IP camera, 640x480 via RTSP (substream)
  • Compute: MacBook Pro M1 Pro