Skip to Content
  • Writing Your Own UPM Module: Getting Started

    Writing Your Own UPM Module: Getting Started

    Image courtesy of Intel iot-devkit GitHub account UPM (Useful Packages and Modules) is a high-level library that relies on MRAA to talk to hardware peripherals over GPIO, SPI, UART, etc. Both libraries were created by Intel and come packaged with the Galileo and Edison boards. MRAA has support for other single board computers, like the Raspberry…

    Read more


  • Creating a Custom Linux Kernel for the Edison (release 2.1)

    Creating a Custom Linux Kernel for the Edison (release 2.1)

    In this post, I will go over how to create a custom Linux image for the Intel Edison using the Yocto Project Edison source code release 2.1. Apparently, it’s been almost exactly a year since I originally posted how to create a custom Linux kernel. Weird. Well, since that time, I’ve had some people ask about…

    Read more


  • Bluetooth Low Energy Peripherals with JavaScript

    Bluetooth Low Energy Peripherals with JavaScript

    Previously, I’ve shown how to enable Bluetooth Low Energy (BLE) connections using Python. In the past few months, I have been furiously learning JavaScript for an upcoming set of tutorials dealing with the Intel® Edison. Along the way, I needed to make a demo using BLE and JavaScript, which invariably led me to the bleno module.…

    Read more


  • Quick Tip: HTTP GET with the ESP8266 Thing

    Quick Tip: HTTP GET with the ESP8266 Thing

    The SparkFun ESP8266 “Thing” is one of the cheapest Internet of Things (IoT) platforms available. There are some great examples on how to post data to data.sparkfun.com, but we need to modify that code in order to pull data from a website. That is accomplished with the humble HTTP GET request. I put together a…

    Read more


  • Learning the Teensy LC: Input Capture

    Learning the Teensy LC: Input Capture

    As a third step to learning the Teensy LC, I decided to tackle input capture. I discovered that there is no separate interrupt vector for input capture; it is the same vector used by the timer interrupt. This means that if we are looking for a timer overflow event as well as a pin change…

    Read more