DEV Community

Daniel Ioni
Daniel Ioni

Posted on

๐Ÿ›ด Urban Lab: Building an Open-Source Smart Scooter with 3D

๐Ÿ›ด Urban Lab: Building an Open-Source Smart Scooter

What happens when you combine 3D printing, open-source hardware, AI, IoT and sustainable mobility?

That's the idea behind Urban Lab โ€” an experimental project based in Rimini, Italy, developed in connection with the MyZubster ecosystem.

The goal is simple:

Build, test and document a smart electric scooter using accessible technologies and open-source development.


๐ŸŽฏ The Project

Urban Lab explores how modern maker technologies can be used to prototype a new generation of connected personal mobility devices.

The project combines:

  • ๐Ÿ–จ๏ธ 3D-printed components
  • โšก Electric drivetrain
  • ๐Ÿง  AI-assisted diagnostics
  • ๐Ÿ“ก IoT sensors
  • ๐Ÿ“ฑ Mobile and web interfaces
  • ๐Ÿ”ง ESP32-based electronics
  • ๐ŸŒ Open-source software
  • โ™ป๏ธ Sustainable design principles

The entire project is documented so that other makers and developers can study, improve and contribute to it.


๐Ÿ—๏ธ Hardware Concept

The current prototype concept includes:

Component Target Specification
Frame Carbon-fiber structure
Motor Brushless 800W / 48V
Battery LiFePO4 48V / 20Ah
Controller VESC
Wheels 10" pneumatic
Brakes Hydraulic
Suspension Front suspension
Controller ESP32
Sensors GPS, IMU, proximity, NFC
Display OLED

These specifications represent the current development concept and may change during prototyping and testing.


๐Ÿ–จ๏ธ 3D Printing

One of the main objectives of Urban Lab is to explore how additive manufacturing can simplify prototyping.

Potential printed components include:

  • Battery enclosure
  • ESP32 mounting brackets
  • Electronics covers
  • Wheel accessories
  • Mudguards
  • Grips
  • Cable management components
  • Structural prototypes

Different materials can be evaluated depending on the mechanical requirements.

Example PETG profile


text
Nozzle: 245ยฐC
Bed: 75ยฐC
Speed: 50 mm/s
Infill: 40%
The final material and print parameters must be validated for each component and its intended load.

๐Ÿง  AI Integration

AI is one of the most interesting parts of the Urban Lab concept.

Pytho AI

The MyZubster ecosystem includes Pytho, an AI assistant that can potentially be used for:

๐Ÿ”ง Technical diagnostics
๐Ÿ“Š Sensor-data analysis
โš™๏ธ Maintenance assistance
๐Ÿง  Troubleshooting
๐Ÿ“š Technical documentation

The long-term goal is to make the vehicle capable of collecting data and using that information to help identify potential problems.

๐Ÿ“ก IoT & Sensors

The prototype architecture includes several sensors:

Sensor  Example Model   Purpose
GPS NEO-6M  Position
IMU MPU6050 Motion and orientation
Proximity   HC-SR04 Obstacle detection
NFC RC522   Authentication
OLED    1.3"    Local information

The ESP32 acts as the main controller for the connected electronics.

๐Ÿ”ง ESP32 Firmware

A simplified firmware architecture looks like this:

#include <Arduino.h>

struct ScooterState {
    float speed = 0;
    float battery = 100;
    float temperature = 25;
    bool isMoving = false;
    bool isLocked = false;
};

ScooterState scooterState;

void setup() {
    Serial.begin(115200);

    setupSensors();
    setupWiFi();
    setupBLE();
}

void loop() {
    readSensors();
    displayStatus();
    updateBLE();
    checkErrors();

    delay(100);
}

The firmware is designed around a simple principle:

collect โ†’ process โ†’ communicate โ†’ monitor

๐Ÿ“ฑ Mobile Interface

A future mobile application can provide a centralized interface for the vehicle.

Potential features include:

Battery monitoring
Vehicle status
Sensor information
BLE connectivity
Lock/unlock functionality
GPS information
Maintenance notifications
AI-assisted diagnostics

Example React Native connection:

const connectDevice = async (device) => {
    const connectedDevice = await device.connect();

    await connectedDevice
        .discoverAllServicesAndCharacteristics();

    const data = await readCharacteristic();

    setScooterData(parseData(data));
    setConnected(true);
};
๐ŸŒ Web Dashboard

The project can also expose a web dashboard for real-time monitoring.

For example:

<div class="card">
    <div class="card-icon">โšก</div>
    <div class="card-label">Speed</div>
    <div class="card-value" id="speed">
        0.0 km/h
    </div>
</div>

<div class="card">
    <div class="card-icon">๐Ÿ”‹</div>
    <div class="card-label">Battery</div>
    <div class="card-value" id="battery">
        100%
    </div>
</div>

This architecture could later be connected to the IoT infrastructure used by MyZubster.

๐Ÿญ From Prototype to Real-World Testing

Urban Lab is not just about writing software.

The project requires several development stages:

1. CAD Design
       โ†“
2. Prototype
       โ†“
3. 3D Printing
       โ†“
4. Mechanical Assembly
       โ†“
5. Electronics
       โ†“
6. Firmware
       โ†“
7. Software
       โ†“
8. Testing
       โ†“
9. Safety Validation
       โ†“
10. Regulatory / Road Compliance

Safety and regulatory compliance are essential before any road use.

๐Ÿ“ Project Structure
urban-lab-scooter/
โ”‚
โ”œโ”€โ”€ 3d-printing/
โ”‚   โ”œโ”€โ”€ stl-files/
โ”‚   โ”œโ”€โ”€ slicer-profiles/
โ”‚   โ””โ”€โ”€ assembly-guide.md
โ”‚
โ”œโ”€โ”€ firmware/
โ”‚
โ”œโ”€โ”€ app/
โ”‚
โ”œโ”€โ”€ docs/
โ”‚
โ””โ”€โ”€ issues/

The objective is to keep hardware, firmware, software and documentation organized in one open development environment.

๐Ÿš€ Development Roadmap
โœ… Current Work
Design research
Hardware architecture
3D-printing experiments
ESP32 firmware development
IoT architecture
AI integration research
๐Ÿ”„ Next Steps
Mechanical prototype
Electronics integration
Sensor calibration
Firmware testing
Mobile interface
Web dashboard
Battery and drivetrain testing
Safety validation
๐ŸŒฑ Long-Term Vision

The long-term objective is to create a reproducible open-source platform that can be adapted, improved and studied by other makers.

๐Ÿค Open Source

Urban Lab is designed as an open development project.

Contributors can help with:

๐Ÿ–จ๏ธ 3D design
โšก Electronics
๐Ÿ’ป Firmware
๐Ÿง  AI
๐Ÿ“ฑ Mobile development
๐ŸŒ Web development
๐Ÿ“š Documentation
๐Ÿงช Testing

Pull requests, issues and technical discussions are welcome.

๐Ÿ”— Project Repository

The Urban Lab source code and documentation are available on GitHub:

Urban Lab Scooter

https://github.com/DanielIoni-creator/urban-lab

The project is also connected conceptually to the wider MyZubster ecosystem.

MyZubster

https://github.com/myzubster/myzubster

๐ŸŒฟ Why Open Source?

Mobility technology doesn't have to be a black box.

By publishing designs, firmware, documentation and experiments, we can create a space where makers can:

learn from each other,
reproduce experiments,
identify problems,
improve designs,
reduce unnecessary duplication,
and build new ideas on top of existing work.

Urban Lab is an experiment in exactly that philosophy.

๐Ÿ Conclusion

Urban Lab is an attempt to bring together maker culture, sustainable mobility, artificial intelligence and open-source hardware.

It starts with a scooter.

But the bigger idea is a laboratory where hardware and software can evolve together.

Build it. Test it. Document it. Improve it. Share it.

๐Ÿ›ด๐Ÿญ๐ŸŒฑ๐Ÿค–

Urban Lab โ€” Open-source mobility from Rimini.
Enter fullscreen mode Exit fullscreen mode

Top comments (0)