📜 ⬆️ ⬇️

Intel® Galileo Gen 2. Features of the beginning of operation



As I wrote in a previous post, the Internet of Things laboratory at St. Petersburg GUT them. Prof. M.A. Bonch-Bruevich provided me with the Intel Galileo Gen 2 motherboard. I managed to integrate it into my project, and I want to tell you about the experience of working with this board, gained in the course of this integration.
I will not touch on the programming of the Linux component of the board, but will only talk about the features of using its Arduino functionality.


')
The description of the board, where to download the documentation and software, is well described in this post. Therefore, I will not repeat.
So, the first inclusion. The port is located, we fill in the standard Blink, everything is perfectly flooded and earned. I tried a sketch with a conclusion to the comport, and then the first surprise awaited me. No matter what I did, a long number was put into the comport and that's it ... The digging in the docks began. As it turned out for Windows, you need to install the driver. The author of the above post worked on a Mac, and probably there, no additional drivers are required. The answer is found in this document. If there is no driver in the system, then such a device is installed.



The driver is located in the Arduino IDE folder along the path: hardware / arduino / x86 / tools
After installing the driver, this port will appear



It seems all is well. In the com - port appeared the expected data. But then another difficulty began. When you turn off the power, or press a general reset, the slap in the controller disappeared. Installing an SD card and connecting the battery resulted in nothing. On the Internet, I did not find the same answer to this question. The guys from the Internet of Things laboratory checked this situation on four more boards, the effect was repeated. So this is not a defect of my copy. As a last resort, I decided to repeat the installation of OC Yocto in this post. And immediately waiting for me the next difficulty. The downloaded flash drive image has the extension .direct. I did not find anything about how to transfer it to a USB flash drive under Windows. The author of the post works on a Mac, and wrote about the process on other OSs.
All the steps will be done on the Mac, for Windows and * nix-platforms, everything is the same (of course, with the appropriate "amendments" to the operating system)

Probably, for some it’s all simple, but I didn’t find a solution to this problem. It was necessary for this operation to put a Mac axis in a virtual machine, and carry out all operations according to the post. Well, okay - it worked out. But I would very much like knowledgeable people to explain how to do it under Windows.
But the difficulties did not end there. After installing the flash drive with the operating system, the com-port disappeared into the board. The system found an incorrectly installed device.



So, we are looking for firewood again. Found ... On the very flash drive we just made.



Install. And here it is happiness. Both the comport and the flash drive appeared as a plug-in drive, and most importantly, the sketches began to persist. And they are clearly stored on this very flash drive. Checked on standard Blink. When you remove the flash drive and restart the LED stops blinking. When you install the flash drive back - it starts flashing again without restarting the sketch.
Well, now about the results of testing libraries. In Galileo, pin operation as an output is provided by a special port expansion chip with an I2C interface from Cypress. Accordingly, libraries using direct access to registers and applying exact time calculations do not work. OneWare library did not work. Therefore, it is impossible to use such convenient temperature sensors as DS18B20. For the same reason, the DHT sensor library did not start.
Library does not work to decode the signal from the IR control receiver. It is based on interruptions with which Galileo has the same bad thing. The library of writing to the SD card also refused to work. The reason is unknown.
The sketch for controlling the stepper motor compiled without errors, but the engine refused to work. Servomotors operate only on outputs with PWM.
The BMP-085 sensor library did not start. Compile error. I have not figured out the cause yet.
What works.
The SPI and I2C bus works. Works library displays HD44780 and EEPROM. Works ultrasonic rangefinder. Well, the Ethernet library works fine.
All the features described, and of course all the basic logic is implemented in the FLProg program for this board. In the current version of the program, one common Arduino IDE version 1.5.3 is installed for programming both the Arduino boards and the Galileo board. Unfortunately, the environment for Galileo is combined only with this version. But for Arduino, the environment with version 1.6 has already been released, which is much more interesting and with a more optimized compiler. Therefore, in the next FLProg release, there will be three versions of the program. One for Arduino, the second for Galileo, and the third for both, but of a larger size, since there will be two versions of IDE in the distribution.
I hope this post will help someone easier to start your acquaintance with this interesting board.

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


All Articles