Article by:
Date Published:
Last Modified:

Child Pages

  • Shields And Hardware
  • The Arduino Lineup
  • Overview

    The Arduino is a low-cost, easy-to-use, microcontroller development environment. It consists of a range of hardware PCBs, and the Arduino software and supporting libraries.

    A photo of the Arduino Uno (revision r3). Image from

    A photo of the Arduino Uno (revision r3). Image from

    The Arduino platform was used in the Luxcity Tonic UV Control System project that I designed.

    The Arduino logo.

    The Arduino logo.

    Windows 8

    The Arduino drivers do not currently work on Windows 8, because they have not been digitally signed. However “Louis Davis” on the Arduino forum created a signed cat file (signed with a test certificate) so that you can install the driver (INF) file on Windows 8 (see forum). Tested and it works!

    The Windows 8 start screen.

    The Windows 8 start screen.


    An embedded platform that runs the .NET Micro framework.

    The Netduino, an embedded platform that runs the .NET Micro framework. Image from

    The Netduino, an embedded platform that runs the .NET Micro framework. Image from


    Website: An embedded platform that run the .NET Micro framework.

    The IDE And Extensions

    The Arduino IDE

    Most importantly, the Arduino IDE is free and open-source. The complete tool-chain (compilers/linkers/assemblers/programmers e.t.c) is free to use.


    MariaMole is an IDE that runs over the Arduino install. I think it’s main benefit is that it allows you to write code in a proper file/library structure (which is a serious downside to the native Arduino IDE). It provides the Workspace/project/file window that is a default to any good IDE.

    Screenshot of the MariaMole IDE. Image from

    Screenshot of the MariaMole IDE. Image from

    As of Mar 2013, MariaMole does not support Arduino v1.5.2, which is required to run the Due.

    Visual Studio Plugin

    There is a Visual Studio plugin called Visual Micro (downloadable from this website), for the Arduino.

    Visual Studio Code

    Visual Studio Code has good support for Arduino platforms via the Arduino plugin.

    The Arduino HAL (wiring)

    The base SPI class is HardwareSPI.


    There are a few RTOSs which can be run on Arduinos, including NilRTOS, ChibiOS/RT and FreeRTOS. NilRTOS runs on the AVR Arduinos (everything but the Due and Teensy 3.0), while both ChibiOS/RT and FreeRTOS run on both the AVR and ARM-based Arduinos. The best place for more information and to download these RTOS systems (which are pre-configured to run on the Arduino systems) is the Google group rtoslibs (

    Command-line Interface

    Ino: “Ino is a command line toolkit for working with Arduino hardware” Website: Ino allows you to create, build, program, and serial monitor with the Arduino platform, doing away the need to use the Arduino GUI (although you still have to have it installed so it can use it’s libraries). It currently works on Linux or MacOS systems. Great when wanting to automate the programming method (for example, if you want to program multiple Arduinos all at the same time.

    Board Packages

    Board packages are installed by the Board Manager to the following locations:

    • MacOS: /Users/<username>/Library/Arduino15/packages
    • Windows: C:\Users\<username>\AppData\Local\Arduino15


    A variant is Arduino lingo for a board support package (BSP).

    Consist of:



    Linker script for the microcontroller. Contains the flash and RAM sizes, minimum heap and stack sizes, start and stop locations for specific memory areas and order specific memory sections (like .text, .data, .rodata) into the physical memory address space.


    This source code file contains the pin map structures.


    The .cpp file contains the system clock config (SystemClock_Config()).

    The official Arduino website is here. A good article on the history of the Arduino can be found here.


    Geoffrey Hunter

    Dude making stuff.

    Creative Commons License
    This work is licensed under a Creative Commons Attribution 4.0 International License .

    Related Content:


    comments powered by Disqus