📜 ⬆️ ⬇️

My experience with Intel Edison. Part I (preparatory)

Finally, he gathered his will into a fist, pushed all the urgent matters aside and sat down to write about his impressions about the thing that last year was presented to the world by Intel. I will try in several articles to tell about the Edison platform. More precisely, about my attempts to work with this platform. I am a learned physicist, so everything related to the subject of this series of publications is my hobby. I ask for indulgence in advance if something is wrong ...

Since November last year, I got my Edison. This happened after the hackathon, which Intel conducted as part of promoting its vision of the “Internet of Things” (IoT) concept and the Galileo and Edison platforms. Here is an overview of this event. I note immediately that working with Edison gives me much more pleasure than, for example, with Galileo, and here's why. In order for the board to come to life, you need to perform several simple manipulations that are intelligibly described on the Intel website (there the sufferers will find a lot of interesting information, including how to run Edison). For advice, you can also refer to this publication on Habré. Following the instructions in the “do-so-like” style, I managed to run Edison the first time. But many of those who tried to use the Galileo board on the aforementioned hackathon in November, without the outside help of expert Mathias Khan (one of the developers of the Intel IoT Dev Kit), did not succeed in launching it, following only the instructions. Around Galileo you have to dance with a tambourine (although, now the situation may have changed).

So, after the hackathon (which I worked with Galileo) I tried to do the simplest things already with Edison. I tried it and left it for several months due to the appearance of more important cases. But this year I decided to resume the experiments and occasionally sit down to tinker with the board. So, I was playing with Edison, I was playing, until after a couple of weeks he took it, and “break it” ...

First, the libmraa library, necessary for using ports, has stopped working. I decided to reflash the board and upload the latest version of the Yocto operating system (standard OS for Edison). But it was not there! The second attack turned out to be more serious - the desktop computer refused to accept Edison as an external USB drive, which had never happened before. It already seemed so serious that I was ready to throw out the old board and buy a new one.
')
The thing is that when Edison is connected to a computer via USB, the computer should automatically recognize Edison as an external USB drive. Files from the archive are uploaded to this drive to install / update the operating system, and then through the Edison console it is rebooted with a tricky command that starts the OS installation process from the partition into which the files were copied from the archive. In fact, it is possible to install via USB cable from the directory with files located on the stationary computer to which Edison is connected. The whole process, again, is described in detail on the Intel website . However, none of the suggestions worked for me.

Here I droop. With the help of the fsck command, we managed to find out that on its flash memory, which Edison uses under the OS, there is a FAT32 partition, into which, obviously, the OS image is thrown.

What the fsck command gives
root @ edison: ~ # fsck
fsck from util-linux 2.24.1
dosfsck 2.11, 12 Mar 2005, FAT32, LFN
/ dev / mmcblk0p7: 5 files, 2700/2931 clusters
e2fsck 1.42.9 (28-Dec-2013)
/ dev / mmcblk0p10 is mounted.
e2fsck: Cannot continue, aborting.

Since Edison works under a Linux system, you simply cannot get to the partition, you need to mount it first, after which you will get access to this partition as a simple folder. Since Edison is a new platform, there is not so much information on the Internet, and the team did not issue a specific pointer to the FAT32 section. It was necessary to search until on this page I saw the cherished lines, from which it followed that the FAT32 partition lies at / dev / disk / by-partlabel / update . Next, the technology case: we mount the partition (for this, I first created the directory fat in / mnt, to which I will be mounted)

root @ edison: ~ # mkdir / mnt / fat
root @ edison: ~ # mount / dev / disk / by-partlabel / update / mnt / fat

If you look at the mounted partitions now, it turns out that the cherished target was located at / dev / mmcblk0p9 , and / dev / disk / by-partlabel / update , apparently, its associated folder. If I had known this before, I could, instead of the folder ( mount / dev / disk / by-partlabel / update / mnt / fat ), directly mount the partition file ( mount / dev / mmcblk0p9 / mnt / fat ).
Now we are overloading Edison in install mode.

root @ edison: ~ # reboot ota

It worked! After updating the system, Edison again became recognized by the stationary computer as an external USB-drive. Only now, since the system has been reflashed, it needs to be reconfigured (root password, wifi, etc.) with the configure_edison --setup command (at this stage, you can safely return to the manuals on the official Intel website).

In the next article I will describe my ordeal when creating a web-access to the ports of Edison.

Source: https://habr.com/ru/post/257547/


All Articles