arduino / EduIntro

Arduino library aimed at making super-fast introductory workshops to Arduino. Based on the idea of having components as objects in the code.
GNU General Public License v3.0
36 stars 14 forks source link

Education Introduction Library - a.k.a. EduIntro

Description

Arduino library for short introduction training workshops run by Arduino Education. This library is originally made for TinkerKit. It simplifies the use of sensors and actuators when connected to an Arduino board. The goal is to plan and conduct a simple one or two hours of training workshop where users will still have the opportunity to model meaningful interactions using discrete electronic components. It consists of already implemented basic functions for electronic components. In order to use its functions, it only requires to import this library and then call its functions.

Installation

First Method

  1. In the Arduino IDE, navigate to Sketch > Include Library > Manage Libraries
  2. Then the Library Manager will open and you will find a list of libraries that are already installed or ready for installation.
  3. Then search for EduIntro using the search bar.
  4. Click on the text area and then select the specific version and install it.

Second Method

  1. Navigate to the Releases page.
  2. Download the latest release.
  3. Extract the zip file
  4. In the Arduino IDE, navigate to Sketch > Include Library > Add .ZIP Library

Features

Components and functions

Examples

There are many examples implemented in this library. Below are shown some of the examples.

#include <EduIntro.h>

Led led(D10);

void loop()
{
  led.on();
  delay(1000);
  led.off();
  delay(1000);
}
#include <EduIntro.h>

Button button(D7);
Led led(D10);

void loop()
{
  if (button.readSwitch() == LOW) {
    led.on();
  }
  else {
    led.off();
  }
}

Versions

v0.0.16 (Current stable version)

November, 2021

v0.0.13

April, 2021

v0.0.12

December 16, 2019

v0.0.11

December 9, 2019

v0.0.10

August 28, 2019

The previous release included a non-functional WiFiComm file. It has been revised and made beautification in some of the code. It has been made sure that the Classic boards work fine as it got broken in the previous release.

v0.0.9

August 27, 2019

Added support for the WiFi REV2 board and fixed the incompatibilities with servo and piezo.

v0.0.8

May 01, 2019

All classes were separated to allow adding new classes by simply copy-pasting and modifying template examples.

v0.0.7

April 17, 2019

General bug fixing: servo library not-two-servos fixed, added a new two-melodies example, fixed the button-pressed-by-default bug. Thanks to D. Spikol for bug catching and S. Mistry for reminding me that C++ inheritance is not always doing the things you expect.

v0.0.6

February 10, 2019

For a course at Aalborg University, CPH, we added the humidity and temperature sensor DHT11, the LM35 temperature sensor, a PIR sensor, and a couple more examples to the courseware.

v0.0.5

January 27, 2019

Sabas came all the way from Mexico to Malmo and made a fresh pull request. Now the library works with MKR boards!

v0.0.4

January 25, 2019

See possible results of the workshop here

Contributing

If you want to contribute to this project:

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Credits

The Library created and maintained by D. Cuartielles, Malmo, 2018 - 2019 WiFi REV2 compatibility by C. Rodriguez (IMU + WiFi), and D. Cuartielles (servo), Malmo, 2019 MKR compatibility by A. Sabas, Malmo, 2019

Based on previous work by:

Current stable version

number: v0.0.16

codename: ananas

License

This library is licensed under GPLv3.