Start / Getting Started

Show everything. Require almost nothing.

Arduino IDE is the only development environment you need for Intro Labs. The advanced tools and rabbit holes are here when you want them.

BASIC

Three steps to Lab 1.

  1. 01

    Install Arduino IDE

    Use the official Arduino download, install and open the IDE.

    Official Arduino IDE download ↗
  2. 02

    Connect the Uno; select board and port

    Plug the Uno into the computer with a USB-A-to-USB-B data-capable cable.

    Choose Arduino Uno in the board selector; if prompted, install Arduino AVR Boards in the IDE Boards Manager.

    Choose the board’s COM/serial port; reconnect and compare the list if unsure.

  3. 03

    Start Lab 1

    Use the lab’s canonical core Blink sketch for your first verify and upload.

    Start Lab 1 →

Setup troubleshooting and optional diagnostics →

referenceactive

ELEGOO starter-kit reference

Manufacturer tutorials, code and extra exercises for the ELEGOO Mega 2560 starter kit.

Useful for identifying kit parts or exploring beyond the club labs; it is not the Engineering Club curriculum and is not required before Lab 1.

Setup and references →

ADVANCED

Useful as projects grow.

Optional tools for larger projects. Advanced does not mean expert only.

optionalactive

Visual Studio Code

A general-purpose code editor with extensions and integrated terminals.

Useful across C/C++, Python, web work, Raspberry Pi development and Git when projects outgrow a single sketch.

Setup and references →
optionalactive

Git

Local version control: snapshots and history of files in a repository.

Track firmware and documentation changes before sharing them. A commit is local; push sends commits to a remote such as GitHub.

Setup and references →
optionalactive

GitHub

Remote hosting and collaboration around Git repositories.

The club uses its repository to share code, technical files and revision history; Git makes local commits and GitHub stores the shared remote.

Setup and references →
optionalactive

GitHub Desktop

A graphical desktop app for common Git and GitHub operations.

Makes cloning, reviewing changes, committing, pulling, pushing and branch switching approachable.

Setup and references →
optionalactive

Arduino CLI

Command-line access to Arduino board packages, compilation, uploads and libraries.

Useful for repeatable build checks, automation and CI; a future pass could compile all 29 existing Uno lab sketches with the AVR core.

Setup and references →
optionalactive

Python

A general programming language with strong science and automation libraries.

Useful for Raspberry Pi scripts, data acquisition, serial logging, analysis, hardware tests and visualizations.

Setup and references →
project specificactive

Raspberry Pi Imager

Writes a Raspberry Pi operating-system image to microSD storage.

Prepares a Pi for Linux, networking and Python-based projects; this is different from uploading a small Arduino sketch.

Setup and references →
optionalactive

PowerShell and the terminal

A shell runs typed commands from a current directory; PATH helps locate installed commands.

Useful for quick diagnostics, tool versions, file navigation, Git and simple automation on Windows.

Setup and references →
project specificactive

Windows Subsystem for Linux

Runs Linux tools and distributions in a Windows development environment.

Can help with embedded Linux, Raspberry Pi, robotics and servers when a real project requires Linux workflows.

Setup and references →
project specificfuture

Docker

A container tool for reproducible isolated environments.

May help a later software or server project reproduce dependencies, but the club has no established Docker workflow yet.

Setup and references →

MORE

Follow an engineering rabbit hole.

Optional ways to explore mathematics, simulation, design, and fabrication.

optionalactive

Manim Community

Python framework for programmatic mathematical animation.

Can visualize mechanisms, physics and engineering explanations for presentations or project documentation.

Setup and references →
optionalactive

3Blue1Brown

Grant Sanderson’s visual mathematics explanations.

Useful for intuition in calculus, linear algebra, differential equations, Fourier ideas and neural networks.

Setup and references →
optionalactive

Blender

3D modeling and rendering software.

Useful for visualizing mechanisms, fabricated parts or engineering demonstrations.

Setup and references →
optionalactive

KiCad

Open-source schematic capture and PCB design.

Relevant when a breadboard prototype becomes a documented circuit or printed board.

Setup and references →
optionalactive

LTspice

Analog circuit simulator distributed by Analog Devices.

Explore voltages and waveforms before building suitable circuits; simulation still needs real-world checks.

Setup and references →
optionalactive

JupyterLab

Notebook interface for code, results and explanatory text.

Useful for instrument data, plots and reproducible analysis when a project uses Python.

Setup and references →