Introduction: LinkIt ONE Getting Started Guide

Recently in the Mediatek Linkit ONE giveaway, i was one of those 250 people who got this versatile, little thing. With amazing features like built in Bluetooth, Wifi, GSM, GPS, Sd card slot, Audio jack, the Linkit one board is just the perfect thing for all the makers throughout the world including me. There is nothing which you can't build with this board!

But, before starting to prototype and play with this board, you need to make some neccesary software arrangements to upload codes to it. Linkit one uses the same C language used by arduino and the same sofware that is IDE with an additional plugin called the linkit one SDK. This instructable with guide you to set up everything before starting your first project with it. At the end, there are three projects to help beginners get started with the board if they've never used arduino or any other microcontroller before.

If you're finding the contents of this instructable confusing or are not able to upload a code, I recommend you to first try basic arduino projects and learn the elementary concepts of arduino programming before attempting any project with linkit one.

Step 1: Introduction and Specifications

The Linkit ONE is a microcontroller developed and released by Mediatek and SeeedStudio. This was made for all the makers in this world for their wearables and IOT projects. The special thing about this chip is that it has Bluetooth, Wifi, GPS and GSM already present in a small package. It uses the same programming language as arduino making it easier to build and prototype projects. The pinout is somewhat similar to arduino so that all arduino sheilds are compatible with it. It also has an SD card slot, audio jack and separate sockets for I2c and UART. The following are the specifications of this board:

Microcontroller:

  • Chipset: MT2502
  • Core: ARM7 EJ-S

Power:

  • 3.7-4.2v Lithium battery OR
  • 5v USB

Digital I/O pins:

  • Nos: 16 (D0-D13, SDA, SCL)
  • Voltage: 3.3v max.

Analog input pins:

  • Nos: 3 (A0, A1, A2)
  • Voltage: 0-5v

PWM output pins:

  • Nos: 2 (D3, D9)
  • Voltage: 0-3.3v

I2C:

  • Nos: 1 (SDA, SCL)

SPI:

  • Nos: 1 (D11, D12, D13)

UART:

  • Nos: 1 (D0, D1)

User Storage:

  • 10MB + SD card expandable upto 32GB

Step 2: About the Accesories

Apart from the linkit one board, the package also contains a lithium-ion battery and three antennas- one each for wifi, GSM and GPS.

The big square shaped white antenna is for GPS. The bigger black one is for GSM while the small black one is for Wifi and bluetooth.

The battery provided is a 3.7v, 1050 mah li-ion which can be used to power the board making it portable. It has a female connector at the other end which has to be plugged in to the male connecter at the bottom left corner of the board. The on board power LED should light up if you plug in the battery and slide the switch to battery mode.

Step 3: Setting Up: Install Arduino IDE

Now the first step to setup everything to upload the first code to your board is to install arduino IDE. For this, first go to the official arduino website. You should have version 1.5.6 or newer in order to install the SDK later. If you already have it, you can skip this step. On the website, go to the previous releases page and download version 1.5.6 or newer.

Finally install it to your computer. Note the drive and folder in which you installed it as it will be needed later.

The following instructions in steps 3-5 are for windows user only. Jump to step 6 if you're a Mac user.

Step 4: Install the Linkit ONE SDK

Arduino IDE is not enough to upload a code to linkit one. You will need an additional plugin for IDE called the Linkit one software development kit (SDK) which makes this board compatible with IDE. Without the SDK, it would not work with the board selected as arduino uno.

First you need to register to the official Mediatek website in order to download the latest version of SDK. After that, go to the dowloads page and download version 1.1.17 at the top of the page.

Now open the setup and select the destination folder in which you installed your IDE earlier. After the installation process, at the last pop-up screen make sure you select to install the linkit one USB drivers. Finally click finish and you would be done.

Step 5: Connect the Board and Check Your Drivers

When you're done installing the SDK, finally plug in your Linkit one board through a micro USB cable. The drivers for it would automatically be installed. Make sure that the small switch beside the battery connector should be set to UART while another switch near the SPI connector is set to SPI.

To check the COM port of your board, go to control panel (windows only) and select 'devices and printers.' Then under COM ports, you will see all your devices. Search for your board. It would have two COM ports. Note both of them.

Now open IDE. Go to tools>boards and select Linkit one. Then in tools>port select the COM port that you noted earlier. There are two of them. You have to select the debug port and not the modem port.

Jump to step 7 if you are a windows user.

Step 6: Setup for Mac OS

If you are a Mac user, follow the instructions given in the instructable given below by Cavedu.

https://www.instructables.com/id/Install-LinkIt-ONE...


Or you can follow the instructions given in the Linkit one developer's guide.

Step 7: Test Project 1: Blink

Now after setting up everything, it's time to upload the first code to your Linkit one board. We will start with the very basic blink sketch. You don't need any external hardware for the project as there is already an LED present on the board connected to pin 13. For opening it, go to files>examples>basics>blink.

Before uploading make sure you've selected the correct board and COM port. After checking, finally hit the upload button. Wait for the code to upload.

After uploading, the on board LED should start blinking. If not, then check if all the switches are in the correct position as you did in step 5.

Step 8: Test Project 2: Button

The next project concentrates on taking input from one of the digital pins and printing the status of a button on the serial monitor.

First you need to connect a button to the board as per the following:



• Pin 1 of button ---- Linkit 5v
• Pin 2 of button ---- Linkit digital pin 2
• Pin 2 of button through a 10K resistor ---- Linkit gnd



Then upload the following code to your board.void setup()
{
pinMode(2, INPUT);
Serial.begin(9600);
}
void loop()
{
if(digitalRead(2) == HIGH)
{
Serial.println("Pressed");
}
else
Serial.println("Unpressed");
delay(500);
}

Finally open the serial monitor in tools. Initially, it will display 'unpressed' while on pressing the button it should show 'pressed.' If nothing is displayed, change the serial port to the second one and try again.

Step 9: Test Project 3: Temperature Sensor

The last sample project takes an analog input from one of the three analog pins. The input is a value between 0 and 1023. A temperature sensor is connected to the board. The output given by sensor is read by the analog pin and is converted to a unit of temperature (C or F). The output given by the sensor varies according to its temperature.

First connect the sensor as per the following:



• Pin 1 (vcc) ---- Linkit 5v
• Pin 2 (vout) ---- Linkit analog pin 0
• Pin 3 (gnd) ---- Linkit gnd


Then upload the code given below:

float temp = 0;
void setup()
{
Serial.begin(9600);
}
void loop()
{
temp = analogRead(A0);
temp = temp * 0.48828125;
Serial.print("Analog input: ");
Serial.print(analogRead(A0));
Serial.println();
Serial.print("Temperature = ");
Serial.print(temp);
Serial.print("*C");
Serial.println();
delay(1000);
}

Now open the serial monitor and it would display the temperature along with the analog input read by the board. If it doesn't, check all the connections and try again.

Step 10: This Was Just the Beginning!

This brings this instructable to an end. But for you, this is just the beginning! The possibilities with this board are endless. So the more you learn, the better projects you will be able to make. With it's spectacular features, the cycle of making projects with this thing would never end.

To learn more about this board, you can download the Linkit developer's guide from the official mediatek website.

Hope that this guide was useful and informative.

Happy building!

Thanks for watching :)