woensdag 29 april 2015

How to enable Bluetooth in Yocto Linux.

First thing u need to do is install bluez, after that it is easy to configure your bluetooth in Yocto.

Enabling bluetooth

First try "hciconfig" with this command you can see the bluetooth device that you are using. If it is installed then it should return hci0 and some specs in default cases.


Then we need to tell the device to start scanning, for this we need to enter the "hciconfig hci0 up piscan" command.

Most likely this will an error because the soft blocking on the bluetooth is still enabled, this must be disabled. This can be done with the command: "rfkill unblock all && rfkill list".

After disabling the soft block you should tell the device again to start scanning with the "hciconfig hci0 up piscan" command.


To name your device you can enter "hciconfig hci0 name 'yourname'". To enable single pairing mode on your Galileo you can enter "hciconfig hci0 sspmode 1". Hcitool scan is used to scan the environment for active bluetooth devices.

Hcitool inq is used to get more information about the scanned devices when scanning the environment.

hcitool cc "<mac address>" is used to connect to a bluetooth device. If you want to see what the signal strenght is between the Galileo and the bluetooth device you are connected with you need to enter "hcitool rssi <mac address>".

vrijdag 3 april 2015

Installing Linux (Yocto), communicating to your Intel Galileo gen 2 and installing wifi.

Introduction

In this blogpost you will find a explanation of how to install a Operating system on your Intel Galileo gen 2 and how to install wifi on it using a PCIexpress card on the back of the Intel Galileo.

First of all why linux? We tried to install the windows stripped down version on the Intel Galileo, it was actually very easy to communicate to the Intel Galileo this way but after installing the drivers for the PCIexpress card on the windows we noticed that the stipped down version of windows didn't have a Bluetooth or Wifi stack. This makes it impossible to use the wifi and bluetooth from the PCIexpress card.

What hardware do you need?

U need an Intel Galileo Gen 2, SD card, ethernet cable, PCIexpress card preferable an Intel® Centrino® Advanced-N 6235 and a usb cable to connect the Galileo to your computer.

Installing Linux (Yocto)

To install the linux version for the Intel Galileo it is recommended that you take Yocto, but you can choose whatever you like.

Download:

https://software.intel.com/en-us/iot/downloads

After the download is completed you need to unpack this zip file and copy all the files from it to your micro SD card. This only takes around 5minutes.

You can now insert the card into the micro SD card slot on your Intel Galileo board. When you power up your board, the board automatically boots using the image on the card.

You can use a serial cable to usb, this is the easiest way to communicate to your Intel Galileo but you can also use an ethernet cable to do so.

Serial cable

Open a serial connection session with your board. Enter the following:

- cat /etc/version
- The Yocto image version is displayed in YYYYMMDDHHMM format. If your board is booting from its default image instead of the image you just downloaded, the version reflects an older date, such as201410101603 
You should see a more recent image version, such as 201502260041.

Type cat /etc/version to check the version of your Yocto image.Type cat /etc/version to check the version of your Yocto image.

Ethernet cable 

If you want to communicate with your Galileo through ethernet connection you should do the following steps:

- You can connect your Galileo to your own network, make sure you plug in your ethernet cable from your computer into the same network. And you need to disable your wifi connection.

- If you are on the same network as your Galileo then you need to find out what IP adress your Galileo has. You can find this by running a tracking software like Zenmap. You should look for the name "intel corporation" and it should have the same mac-adres as your Galileo has. Now you should now the IP adress of your Galileo.

- Next step is uploading a sketch to enable your SSH-connection, else you won't be able to communicate with your Galileo.To install the Arduino IDE for your Galileo you should follow the following steps on this link: https://software.intel.com/en-us/articles/install-arduino-ide-on-intel-iot-platforms.

- After that you need to upload the sketch below to your Galileo.

#include <Ethernet.h>

void setup() {
 // put your setup code here, to run once:
system("telnetd -l /bin/sh");
system("ifconfig eth0 10.31.133.234 netmask 255.255.0.0 up");
system("sudo service ssh start");
}
 
void loop() {
 // put your main code here, to run repeatedly: 
 
}

- Make sure to adjust the IP adress to your Galileo his IP adress.

- After you uploaded the sketch you could make connection with your Galileo through SSH. To make connection with your Galileo you need to have a program installed that can make that happen. Putty is a very good example of such a program. The Galileo will ask for a username or something like that, here you need to type root and no password.

- When you are connected through SSH you can start with configuring your PCIe card. 

Installing WIFI on your Galileo

Firstly you need to download the right driver for your PCIe card. All the different drivers can be found here: https://wireless.wiki.kernel.org/en/users/Drivers/iwlwifi.

After downloading you need to copy the zipped file to your SD card, you should make an TMP folder where you can paste the file into. 

After doing this you should follow this guide, http://www.malinov.com/Home/sergey-s-blog/intelgalileo-addingwifi this guide does give all the necessary steps you need to take to install wifi.