Wednesday, December 30, 2015

C/C++ on Intel Edison/Galileo – part2: Buttons

In this post, we will be looking at using mraa library on C for interfacing with a button. For this example, the button will be used to turn on and off an LED connected to the Edison/Galileo. This example is going to be very similar to the previous one. The only difference being that the state of the LED is controlled by a button instead of the program running on Edison/Galileo itself.

Saturday, December 12, 2015

Intel Edison v/s Linkit smart 7688

Thanks to Seeed studio, I recently came in possession of their latest Linkit modules, Linkit smart 7688 and Linkit smart 7688 duo.

As soon as I saw these modules, the first question that came to my mind was how they hold up against Intel's Edison. Since both of these modules are advertised as IoT modules with lot of features packed into a single tiny module the comparison was obvious.

Friday, November 13, 2015

C on Intel Edison/Galileo - part1

In this series of blog posts, I’ll be posting on writing 'C' code on Intel Edison/Galileo platform. I’ll be using the Grove kit. You can also use a bread board instead of Grove kit.

There are two libraries available on the Intel Edison/Galileo for developing applications written in C that need to use sensors, actuators, LEDs etc…

  • MRAA: Provides API for interfacing with the GPIOs, ADCs, PWM, SPI, etc… It is basically for interfacing the low level peripherals. It is kind of bare bones, you can use the functions provided by MRAA to drive more complicated peripherals like sensors or you can use…

  • UPM: Provides higher levels of abstractions via objects for controlling things like LCDs, temperature sensors etc… It is a level above the MRAA and most of the functions that you might need while interfacing a sensor or LCD are already implemented in UPM.


Wednesday, November 11, 2015

Effects processor on Intel Edison

I've been working on an effects processor on Edison with intention of entering this project into the "Intel IoT invitational" contest on Instructables.

[embed]https://www.youtube.com/watch?v=qJF1BddpQ30[/embed]

Tuesday, October 13, 2015

Guitar tuner on Edison

A quick post on what I have been working on. It is a guitar tuner using the Edison.

This application is written mainly in C (and little of C++). This application is built using the port audio library.

Thursday, September 3, 2015

Python on Intel Galileo/Edison - Part6: Light sensor

In this post, we will be using the upm library to interface the Grove Light sensor with the Galileo/Edison using python.

The light sensor is made up of primarily of LDR and opamp:

[caption id="attachment_382" align="aligncenter" width="319"]The Grove light sensor (photo: seeed studio) The Grove light sensor (image: seeed studio)[/caption]

"LDR" stands for light dependent resistor (in above schematic, it is marked as "LIGHT") as the name suggests, it is made up of a material that changes it resistance depending on the intensity of the ambient light.

Monday, August 31, 2015

Blockly on and for Edison/Galileo - work in progress

Just a quick post to give you guys a heads up on what I have been working on.

I've been working on bringing Blockly onto Edison/Galileo. The plan is to have blockly server being hosted by Edison from within the blockly interface, one should be able to upload and execute the generated Arduino sketches.

Blockly is visual programming tool using which you can whip out functional code with great ease. It consists of predefined blocks. Combining them you can create executable code targeting a number of platforms. I am basing this on the BlocklyDuino project.

If you are looking for something similar but better, have a look at wyliodrin.

In below video you can see Edison serving up the Blockly. Using the Blockly interface you can see me put together a simple LED (again connected to D5) blinking code.

[embed]https://www.youtube.com/watch?v=DtC7aBmB3nY[/embed]

Saturday, August 29, 2015

Trying out wordpress

I've decided to give wordpress a shot.
I like the overall theme selection and the way it displays the blogs.
Only gripe I've so far with wordpress is that it loses formatting in visual editing mode but I hope to find a solution for this.
I've already imported all of my posts from this blog I need to fix a few links in there.
  
You can find my blog posts here:  navinbhaskar.wordpress.com

Friday, August 28, 2015

Compiling Arduino sketchs on Galileo/Edison from command line

For some time I've been playing around the idea of compiling and executing Arduino sketches right from the Galileo and Edison. In this post I'll detail out the method that I used to accomplish this task and will also note down the investigation that I had to do in order to do this.

Compiling Arduino sketchs on Galileo/Edison from command line

For some time I've been playing around the idea of compiling and executing Arduino sketches right from the Galileo and Edison. In this post I'll detail out the method that I used to accomplish this task and will also note down the investigation that I had to do in order to do this.

Saturday, August 22, 2015

Cloud 9 IDE on Edison



One of the things I like about the BeagleBone(Black) is that it comes with Cloud 9 IDE off the shelf which means that you do not need to install any kind of software (other than a browser) on your host system to start developing something on the board.
In this post we are going to talk about bringing the cloud 9 IDE experience onto the Edison.

Cloud 9 IDE on Edison


One of the things I like about the BeagleBone(Black) is that it comes with Cloud 9 IDE off the shelf which means that you do not need to install any kind of software (other than a browser) on your host system to start developing something on the board.
In this post we are going to talk about bringing the cloud 9 IDE experience onto the Edison.

Wednesday, August 5, 2015

TwitterPlotBot on Galileo/Edison

As you might have guessed from the title of this post, we are going to build yet another Twitter bot on Galileo. So what does it do differently then? It tweets the picture of the plot of the temperature(or any other parameter that you wish to see) right to your Twitter feed.

TwitterPlotBot on Galileo/Edison

As you might have guessed from the title of this post, we are going to build yet another Twitter bot on Galileo. So what does it do differently then? It tweets the picture of the plot of the temperature(or any other parameter that you wish to see) right to your Twitter feed.

Thursday, June 25, 2015

SpeakingAssistant on Edison

So here it is, the Instructable for speaking assistant on Edison. It is similar to the version on Galileo except for 2 things:
  1. I could not find Python setuptools in the repo and had to boot strap the setup tools.
  2. You can specify the sound card that you want to use in the config file.
 I've done away with the buzzer because it was very noisy in the demo. 

SpeakingAssistant on Edison

So here it is, the Instructable for speaking assistant on Edison. It is similar to the version on Galileo except for 2 things:
  1. I could not find Python setuptools in the repo and had to boot strap the setup tools.
  2. You can specify the sound card that you want to use in the config file.
 I've done away with the buzzer because it was very noise in the demo. 

Saturday, June 20, 2015

Getting started with Edison



This post is going to be little quick start guide for the Intel Edison. Intel Edison is tiny compute module which packs lots of features in that package. It features a dual core Atom processor along with a Quark (for I/O) and also packs in bluetooth, wifi and eMMC.

Getting started with Edison

This post is going to be little quick start guide for the Intel Edison. Intel Edison is tiny compute module which packs lots of features in that package. It features a dual core Atom processor along with a Quark (for I/O) and also packs in bluetooth, wifi and eMMC. 

Thursday, June 4, 2015

Speaking assistant

Writing this post to share a project that I did for one of the Intel IoT roadshows. It is called "Speaking Assistant" I have put together an Instructable for it. The project is based on Intel Galileo Gen2. It uses Text to speech software(TTS), eSpeak to speak out information that it fetches from the Internet and yes it is entirely written in Python ;)

Speaking assistant

Writing this post to share a project that I did for one of the Intel IoT roadshows. It is called "Speaking Assistant" I have put together an Instructable for it. The project is based on Intel Galileo Gen2. It uses Text to speech software(TTS), eSpeak to speak out information that it fetches from the Internet and yes it is entirely written in Python ;)

Wednesday, June 3, 2015

Sharing files between your host system and Linux boards using SSH

While working on Linux SBCs, I find myself transferring lot of files to and from my host dev PC and the dev boards. In this post, I'll be talking about using SSH to mount your device as storage drive onto your host.



Sharing files between your host system and Linux boards using SSH

While working on Linux SBCs, I find myself transferring lot of files to and from my host dev PC and the dev boards. In this post, I'll be talking about using SSH to mount your device as storage drive onto your host.

Wednesday, April 8, 2015

Python on Intel Galileo/Edison - Part 5:Temperature sensor with mraa and upm

The temperature sensor that we are gong to use for this post is from Grove. This sensor outputs the voltage that represents the temperature hence we will need the ADC module on the Intel Galileo/Edison to interface with this peripheral.

Python on Intel Galileo/Edison - Part 5:Temperature sensor with mraa and upm

The temperature sensor that we are gong to use for this post is from Grove. This sensor outputs the voltage that represents the temperature hence we will need the ADC module on the Intel Galileo/Edison to interface with this peripheral.

Python on Intel Galileo/Edison - Part 4: ADC

ADC is a peripheral that lets you input an analog signal and gives the digital representation of that analog signal.
The world in which we live in is surrounded by the analog signals. The temperature, sound that hear, the light that we see are all analog signals. If you want to interact or measure these signal in a digital system like Galileo/Edison, you'll have to use ADC a.k.a Analog to Digital Converter.

Python on Intel Galileo/Edison - Part 4: ADC

ADC is a peripheral that lets you input an analog signal and gives the digital representation of that analog signal.
The world in which we live in is surrounded by the analog signals. The temperature, sound that hear, the light that we see are all analog signals. If you want to interact or measure these signal in a digital system like Galileo/Edison, you'll have to use ADC a.k.a Analog to Digital Converter.

Tuesday, April 7, 2015

Python on Intel Galileo/Edison - Part 3: PWM



In this blog post, we are going to look into the process of using mraa methods for controlling the PWM module available on the Galileo/Edison.

What is PWM?
 PWM stands for pulse width modulation. As the name suggests, there is a "pulse" and with "width", we mess("modulation"). The idea here is to change the width of the pulse, resulting in another pulse that meets our needs.

Python on Intel Galileo/Edison - Part 3: PWM

In this blog post, we are going to look into the process of using mraa methods for controlling the PWM module available on the Galileo/Edison.

What is PWM?
 PWM stands for pulse width modulation. As the name suggests, there is a "pulse" and with "width", we mess("modulation"). The idea here is to change the width of the pulse, resulting in another pulse that meets our needs.

Monday, April 6, 2015

Python on Intel Galileo/Edison - Part 2: Buttons

In this post, we will be writing a Python script to read button inputs.
As in previous post, mraa library is used for handling the GPIO. For this example, the button will be used to turn on and off an LED connected to the Galileo. This example is going to be very similar to the previous one. The only difference being that the state of the LED is controlled by a button instead of the program running on Galileo itself.

Python on Intel Galileo/Edison - Part 2: Buttons

In this post, we will be writing a Python script to read button inputs.
As in previous post, mraa library is used for handling the GPIO. For this example, the button will be used to turn on and off an LED connected to the Galileo. This example is going to be very similar to the previous one. The only difference being that the state of the LED is controlled by a button instead of the program running on Galileo itself.

Friday, March 20, 2015

Python on Intel Galileo/Edison - Part 1



In this series of blog posts, I'll be posting on writing Python code on Intel Galileo platform. I'll be using the Grove kit. You can also use a bread board instead of Grove kit.

There are two libraries available on the Intel Galileo for developing applications written in python that need to use sensors, actuators, LEDs etc...

  1. MRAA: Provides API for interfacing with the GPIOs, ADCs, PWM, SPI, etc... It is basically for interfacing the low level peripherals. It is kind of bare bones, you can use the functions provided by MRAA to drive more complicated peripherals like sensors or you can use...

  2. UPM: Provides higher levels of abstractions via objects for controlling things like LCDs, temperature sensors etc... It is a level above the MRAA and most of the functions that you might need while interfacing a sensor or LCD are already implemented in UPM.






Python on Intel Galileo/Edison - Part 1

In this series of blog posts, I'll be posting on writing Python code on Intel Galileo platform. I'll be using the Grove kit. You can also use a bread board instead of Grove kit.

There are two libraries available on the Intel Galileo for developing applications written in python that need to use sensors, actuators, LEDs etc...
  1. MRAA: Provides API for interfacing with the GPIOs, ADCs, PWM, SPI, etc... It is basically for interfacing the low level peripherals. It is kind of bare bones, you can use the functions provided by MRAA to drive more complicated peripherals like sensors or you can use...
  2. UPM: Provides higher levels of abstractions via objects for controlling things like LCDs, temperature sensors etc... It is a level above the MRAA and most of the functions that you might need while interfacing a sensor or LCD are already implemented in UPM. 

Monday, March 16, 2015

Circle OS tutorial: Menu


In this tutorial, we are going to learn how one can use menu GUI element available in the circle OS. For this tutorial,we are going to implement a simple game, wherein you are presented a random math question and the list of options(you guessed it right, the list of options are actually implemented using the menus) one among them is the right answer. Once an option is selected, you are notified whether the choice was right or wrong. As was the case with the previous tutorial, I am going to explain about the game logic and then move on to circle OS menu usage details.



Circle OS tutorial: Menu


In this tutorial, we are going to learn how one can use menu GUI element available in the circle OS. For this tutorial,we are going to implement a simple game, wherein you are presented a random math question and the list of options(you guessed it right, the list of options are actually implemented using the menus) one among them is the right answer. Once an option is selected, you are notified whether the choice was right or wrong. As was the case with the previous tutorial, I am going to explain about the game logic and then move on to circle OS menu usage details.

Thursday, March 12, 2015

Intel Galileo as a teaching aid

Below are some of my thoughts about the Intel Galileo as a teaching platform for engineering grads.

The Galileo is really an versatile board. The unique thing about Galileo is that not only it runs Linux, it also supports the Arduino environment. This helps the students to get into physical programming with more easier "Arduino language" and once comfortable with that, they can move into C/C++ programming with MRAA and UPM libraries.

Intel Galileo as a teaching aid

Below are some of my thoughts about the Intel Galileo as a teaching platform for engineering grads.

The Galileo is really an versatile board. The unique thing about Galileo is that not only it runs Linux, it also supports the Arduino environment. This helps the students to get into physical programming with more easier "Arduino language" and once comfortable with that, they can move into C/C++ programming with MRAA and UPM libraries.

Saturday, January 3, 2015

Getting started with Intel Galileo Gen 2 with the IoT Linux image

This post is going to be quick start guide for using the Intel Galileo with the "IoT Linux" image.
First you'll need to download the image from here.

Getting started with Intel Galileo Gen 2 with the IoT Linux image


This post is going to be quick start guide for using the Intel Galileo with the "IoT Linux" image.
First you'll need to download the image from here.
Note: Intel keeps changing their website layout. I try to keep up with these changes but I only update it in my new blog here: https://navinbhaskar.wordpress.com/2015/01/03/getting-started-with-intel-galileo-gen-2-with-the-iot-linux-image/