Introduction to Arduino

Introduction to Arduino

Learn C++ programming with Arduino microcontrollers for neuroscience experiments, from sensors to efficient real-world code and version control.


Introduction to Arduino
Author
Dr. Nicholas Del Grosso

Arduino microcontrollers are commonly used in neuroscience experiments as sensors or input devices; for example, to record a subject’s decision via a button press. The easy-to-learn Arduino ecosystem offers a fantastic opportunity to sharpen your programming skills while electrifying the real world with your creations! In this three-day course, we will learn how to write clearly-structured and easily-understandable programs in C++ that run on Arduino microcontrollers. You will learn C++ program structure and concepts, process flow control and debugging. We will show you how to use Github version control to easily track changes made to your code and to collaborate seamlessly with others. On the last day of the course, we’ll invite you to join us in Bonn at our Makerspace to work with Arduino devices, exploring along the way how to write fast, efficient code in real-world situations, including an introduction to the techniques of multiprocessing and memory optimisation. By the end of this course, you will be able to build your own Arduino sensors, expanding your experimental data collection opportunities and connecting with the open-source maker world in science.

Credits

Dr. Nicholas Del Grosso
Dr. Benjamin Escribano
Dr. Ben Hastings

Installation

To run the course materials on your own machine, it is recommended that you:

Download the pixi.toml file and install the environment:

pixi install --manifest-path pixi.toml
pixi shell

Download the environment.yml file and install the environment:

conda env create -f environment.yml
conda activate arduino
Note that the C++ Kernel used for this course is not avaliable for Windows. If you are on a Windows device, you can still do the exercises in Jupyterlite by clicking on the respective button in the beginning of a lesson. Unfortunately, the Jupyterlite C++ kernel will not print out the results of operations in the notebook. You can also do the lessons that use the Wokwi Arduino simulator .