Introduction: A Comprehensive Intel Edison Getting Started Guide
I have recently acquired an Intel IoT Developer Kit as part of an Instructable Campaign. I am familiar with some embedded processing models and microcontroller environments such as the Arduino, but I found getting up and running with the Intel Edison to be a bit chaotic. I wanted to consolidate the information that I found to help fellow makers ease into this cool device.
Parts I got in the mail from Instructables:
Intel Edison and the Arduino Compatible Expansion Board
Seeedstudio's GROVE Starter Kit Plus
microSD Card with accompanying adapter
To work with this device, I'm afraid it's not quite as user friendly as the Arduino. You have to be relatively competent in regards to getting your hands dirty with code and configurations. It would help if you know some Linux and some basic network stuff.
Step 1: Intel's "Getting Started" Guide - Flashing
As I'm sure my fellow makers have discovered, Intel's site is a little lackluster in describing in detail the workings of setting up this device. You can follow my guide or theirs, it's pretty much the same, but I provided mine in case you wanted a different perspective.
For windows at least, they provide these links:
https://communities.intel.com/docs/DOC-23193
https://communities.intel.com/docs/DOC-23148
You can find Linux and Mac instructions there too
First they have you mount the Edison and attach the posts (I don't think this step will be a problem).
Once you download all of their files, we can get started flashing the device. The download speed from Intel was horrid as it took over five hours for me to get the IDE files, so I will provide mirrors at the end of this Instructable.
Windows users have to install the drivers, both the FTDI and Edison-specific ones.
Make sure the micro switch is flipped towards the microUSB ports and plug two USB cables into those ports and into your computer.
Intel wants to make sure the microSD card is empty before we copy over the new OS files, so they describe a verbose command prompt way of erasing the files, but you could just as easily delete them from Explorer.
Then, you copy over all the files from the "Latest Image" to the root of the microSD card which should show up under the name EDISON
Now for the fun stuff
Intel's site has a picture of their device manager to show how to pick which COM port to use in your SSH client of choice, but there are multiple Edison ports, which is pretty confusing. Make sure to remember which one is the USB Serial Port
Now open up PuTTY or your SSH client of choice, set it to connect to Serial over the COM port you found and set the baud rate to 115200
You might need to hit enter two times to get a login screen, but once you do, type
rootand hit Enter
Once you get past the login screen, type
reboot otaand hit Enter
Screens will whir by and it will finish the process sooner or later
Step 2: Intel's "Getting Started" Guide - Working With Their IDE and WiFi
The next step is to get their modified version of the Arduino IDE working. After the gruesome download from Intel or a less so awful download from my mirror, open up the Arduino exe.
Open up Device Manager again and find the COM port that is the Edison Virtural COM Port and set that in the IDE
Load up the Blink example and hit it.
If everything so far has went as planned, the on-board LED should start blinking. Yay!
To connect up with WiFi and to clean up some configuration stuff, open up an SSH again (if you closed it from last time)
*It is important to note that the Serial connection times out, so if you hit a character and nothing shows up, just hit it again as the first key "wakes" it.
Once you login, type
configure_edison --setup
Work through their process and use their nice guide to connect to your WiFi network.
**Another note, I couldn't for the life of me figure out how to connect to my network as I was still on WEP (I know), so I had to change the security settings in my router to WPA2 Personal to get a key which the Edison accepted.
If everything went well, you should be able to login with the IP Address they give you on any browser in the network.
Step 3: Fun Stuff - IoTKit
While Intel does a good job with those steps (to some degree) this is where things get hairy. I was following 10DotMatrix's guide for setting up the Analytics Panel. This also should serve as an introduction to working with IoTKit.
https://www.instructables.com/id/Intel-IoT-Analytic...
Although their instructable does a great job detailing the process, I found an easier way to set up new devices and register them with the Panel. Make sure you follow it though creating an account and registering the device. The next bit will Activate the device.
Once you have the IoTKit library installed in your IDE, open up the IoTkitRegisterExample. I only wanted to add a Temperature sensor so I commented out the humidity sensor. Follow the instructions in the comments and the device should be registered.
Just as in the other instructable, use the observation command to send some fake data to verify everything works.
This is also where I went in a different direction. I wanted to utilize the sensors from the GROVE starter kit, so I hooked up the shield and the Temperature Sensor into A0.
This is where I ran into a problem. The temperature sensor, and a few other parts in the Grove Starter Kit, require at least a 4V signal to operate. The Intel Edison is all on 1.8V logic and a few 3.3V parts. So at this point, I had to ditch the idea of using this particular temperature sensor. I tried several other analog sensors with no luck.
I will update this once I get things up and working, but at least the frontend is talking to the Edison
I encourage you to utilize the other instructable to fiddle around with this, but also check out the github for the project at https://github.com/enableiot/iotkit-agent
Step 4: Updating and Extra Software
No matter how disappointing the previous step's adventure was, we can still fill in a couple gaps in making sure everything on the Edison is ship-shape. Part of that is adding Intel's software repository to the package manager on the device. To do that, open up an SSH connection and log in
Also I hate working with vi, so I moved to install nano. If you are like me, hit up the following commands
wget http://www.nano-editor.org/dist/v2.2/nano-2.2.6.tar.gz && tar xvf nano-2.2.6.tar.gz && cd nano-2.2.6 && ./configure && make
make install DESTDIR=/home/root
export PATH=$PATH:/home/root/usr/local/bin
Using our newly installed beautiful nano, we are going to edit the package manager's repositories like so
nano /etc/opkg/intel-iotdk.conf
And add these to this file
src intel-iotdk http://iotdk.intel.com/repos/1.1/intelgalactic src all http://iotdk.intel.com/repos/1.1/iotdk/all src i586 http://iotdk.intel.com/repos/1.1/iotdk/i586 src x86 http://iotdk.intel.com/repos/1.1/iotdk/x86
Finally hit Control-X, hit Y to save, and hit enter
Now that that's all said and done, we will run
opkg update
opkg upgrade
That will whir away for a while, butt you now have a more comprehensive list of programs to work with
I installed git also, so if you need that, or any other program of the sort, use the command
opkg install git
Step 5: Mirrors and Finishing Notes
As I promised, here are the mirrors to the Linux image, the IDE, and the drivers
Like I said, my attempts to incorporate the sensors with the analytics panel didn't really turn out, but hopefully I answered some questions about setup. Comment if you have any questions or any ideas how I can get those Grove sensors to work.
Thank you Instructables for the opportunity to play around with this as well as the community.