Libraries

The 86Duino environment can be extended through the use of libraries, just like most programming platforms. Libraries provide extra functionality for use in sketches, e.g. working with hardware or manipulating data. A number of libraries come installed with the IDE, and 86Duino supports most of the Arduino Standard Libraries as well as provides dedicated libraries to utilize the 86Duino-specific hardware functions.

You can also download or create your own libraries. See these instructions for details on installing libraries. There’s also a tutorial on writing your own libraries; and further, you may refer to Arduino’s API Style Guide for some guidelines on making a good Arduino-style API for your library.

To use a library in a sketch, select it from Sketch > Import Library.

Libraries Reference :

Supported Arduino Standard Libraries

  • EEPROM – reading and writing to “permanent” storage
  • Ethernet – for connecting to the internet using the on-board LAN connector
  • Firmata – for communicating with applications on the computer using a standard serial protocol
  • GSM – for connecting to a GSM/GRPS network with the GSM shield
  • LiquidCrystal – for controlling liquid crystal displays (LCDs)
  • SD – for reading and writing SD cards
  • Servo – for controlling servo motors
  • SPI – for communicating with devices using the Serial Peripheral Interface (SPI) Bus
  • SoftwareSerial – for software-implemented serial communication on digital pins
  • Stepper – for controlling stepper motors
  • TFT – for drawing text , images, and shapes on the Arduino TFT screen
  • WiFi – for connecting to the internet using the Arduino WiFi shield
  • Wire – Two Wire Interface (TWI/I2C) for sending and receiving data over a net of devices or sensors

86Duino Only Libraries

  • Encoder – reading and setting to the 32-bit hardware encoder interfaces
  • CANBus – for communicating with devices that use the Controller Area Network (CAN Bus)
  • ROSserial86 – for wrapping ROS (Robot Operating System) messages over a UART or network socket
  • Servo86 – an extended servo-motor library for controlling robot motion
  • AIServo86 – a serial-servo-motor library for controlling robot motion
  • TimerWDT – manipulating the watchdog function

Supported (Non-standard) Arduino Libraries

  • Audio – access the on-board HD Audio interface by the API of Arduino Due’s Audio library
  • USBHost – communicate with USB keyboards and mice by the API of Arduino Due’s USBHost library
  • TimerOne – access 86Duino’s 32-bit hardware timer by the API of the Arduino TimerOne library
  • MsTimer2 – access 86Duino’s second hardware timer by the API of the Arduino MsTimer2 library
  • Time86 – read the on-board RTC timer by the API of the Arduino Time library
  • RTCZero – manipulate the on-board RTC timer by the API of the Arduino Zero’s RTC library
  • FreeIMU1 – access the on-board 6-DOF IMU sensor of 86Duino One by the API of the FreeIMU library
  • OneWire – control devices that use Dallas Semiconductor’s 1-wire protocol
  • CapacitiveSensor – turn two or more pins into capacitive sensors
  • IRremote – send and receive IR remote codes in multiple protocols
  • Adafruit CC3000 – support for Adafruit CC3000 WiFi Shield
  • Adafruit Motor – support for Adafruit Motor Shield
  • RGBMatrix – support for Adafruit’s RGB matrix LED panels
  • UTFT/UTouch – support for color TFT LCD boards and touch screens
  • GLCD – graphics routines for LCD based on the KS0108 or equivalent chipset
  • LCD12864 – supports 12864 Graphic LCDs that use the ST7920 chip
  • TLC5940 – supports the TLC5940 16-channel LED driver
  • RF12 – a driver for the RFM12B wireless transceiver
  • RF24 – a driver for the nRF24L01 wireless transceiver
  • Mirf – another popular library for the nRF24L01 wireless transceiver
  • VirtualWire – supports a number of inexpensive radio modules
  • RadioHead – supports a number of radio modules such as RFM22B and RFM69
  • See also the list for other Arduino third-party libraries that are compatible to 86Duino.

Using the C/C++ Standard Library

Since the 86Duino IDE employs DJGPP as the compiler, it is possible to use the complete C/C++ Standard Library in your sketches. See the DJGPP C Library Reference for a detailed function list that you can use.


Corrections, suggestions, and new documentation should be posted to the Forum.

The text of the 86Duino reference is a modification of the Arduino reference, and is licensed under a Creative Commons Attribution-ShareAlike 3.0 License. Code samples in the reference are released into the public domain.