Intel Galileo

Back in October there were two new Arduino boards that were announced. The one that I am most interested in is the Arduino Tre as it is based on the BeagleBone Black plus an Atmega32u(2 or 4). As I already have a BBBk and like it, especially as they are changing their default to Debian, I will grab one as they come out.

But the Other one introduced (Intel Galileo) also looked somewhat intriguing and they are actually starting to show up. So on a whim I ordered one from amazon.com, which arrived yesterday. I would hate to lose the label of changing directions every week

So far I have not done much yet, other than to get it to work. Yesterday I could not talk to it on my main Dev machine (Windows 7 64bit), but later was able to get it to work on my Notebook. Finally figured out this morning that it does not like using a high com port number like COM65. I manually changed the device to COM6 and I can now talk to it and I have been able to program it with blink.

Things I noticed so far: little documentation, have to install a separate IDE based on 1.5.3.

I hope they are just being paranoid with how many places they write: You must connect it first to +5v, before you connect to USB, or you can damage the board…

It is like other Linux boards and takes a long time to boot up. I have not timed it yet but probably 30-45 seconds, maybe a bit shorter without linux installed on microsd. They have a really really small version of linux that is stored on the board itself. If I remember correctly the onboard linux is 8mb. This version does not support things like wifi. If you wish to use those features, you need to download an image to microsd card.

This card has a setup for debug terminal, that is already converted to RS232, which comes out at a speaker jack. They sell a cable that connects to this and comes out as a DB9. So then I have to use a USB adapter to it… Agree with Sparkfun review on this. I do have this and with it you can watch the system boot, where it goes into a grub menu and times out after 10 seconds…

Other reviews or posts that I have looked at:
sparkfun.com/news/1360
drdobbs.com/embedded-syst…ound/240165716
makezine.com/2013/10/03/10-gr…ileo-features/

What I am not sure about yet, is how I would/will use this board.

Example: It has the Arduino 1.0 shield connectors, which is nice and it does support some of the shields, but for me not sure about how well the IO would work.

For simple things like: looping setting an IO pin on and off, it is something like 500 times slower than an Arduino Leonardo (max of about 230hz). So I don’t think any of these IO pins would work with PS2 inputs or SoftwareSerial…

As far as I can tell they only have one USART available. There is the 2nd one setup for debug through the other cable. Not sure in their Arduino setup how things plugged into the usb host port are enumerated and accessed… I doubt they come in as Serial1, Serial2…

I know that they have added a System command: Example in the Sparkfun link:

system("python /media/realroot/pyMail.py > /media/realroot/emails");

Where he has stored a Python program on the SD card and this allows the Arduino side to call it… Also in his example there is code showing how the Arduino side can read stuff off of the SD card which again is nice.

Note: after programming the board with blink, I unplugged the board and later plugged it in. Unlike Arduinos, blink is not running when I start up. So assuming I use this for something, will need to figure out how with this board, to have the program start up at boot time.

Up on their forum, it looks like several people are replacing the software on the board with Debian.

I will need to do lots of reading up there to learn more. I will probably take my time with it as I do have a few other projects I want to get back to.

So that is probably all for now

Keep us posted.

Will do. I also have a thread over on Trossen, with other comments coming in: forums.trossenrobotics.com/showt … el-Galileo

I will also be jumping on the Tre’ when they are available.

If this is true, I’ll definitely not be getting a Galileo board. This is just plain ridiculous, and in my mind, points to a hurried and/or bad design.

This also (to me, at least) points to a hurried design. There are WiFi drivers IN THE LINUX KERNEL. All Intel needs to do is pick a WiFi module that is already supported in the kernel, and additional setup should take minimal storage space. They (Intel) probably wouldn’t pick a module they didn’t design though. It’s the NIH principle, IMO.

Is this Intel’s foray into the embedded Linux ecosystem? Really? I mean, REALLY, Intel??? They have GOT to be KIDDING here. Just put a pin header on the board and offer a cable for that. I’d like to meet whomever made this design decision, and who went along with it.

Personally, I’d box it up, send it back ASAP, and wait to see what Intel does next.

This is a first version board, but at least technical documentation on how to do everything and how everything is supposed to work, according to Intel, should be available now.

I’m pretty sure we can do better than this with a Raspberry Pi or BeagleBone Black. Are you using Intel’s on board Linux, or a real and complete Linux distribution?

This should all at least be available in technical documentation for the board, but it’s also pretty clear their user documentation sucks, if you can’t find this out. I know you know how to figure this stuff out, and I mark this a big minus against Intel and the Galileo.

We both know that adding a new command to Linux is EASY.

Any script (BASH, Python, Ruby, etc.) can become a new system command just by setting the first line of the script to tell the shell which language interpreter to call to execute the commands in the file. This is one of the FIRST things you should be taught when starting to learn Linux. The same goes for any compiled language such as C/C++, Go, etc.

Any Linux distribution requires extra work to get something to autostart at boot time, if it’s not a package that can normally be autostarted (it’s not Apache, BIND, or other package that’s part of the distribution). I’ve even autostarted Python scripts on a BeagleBone Black to run a Flask based web application. :slight_smile:

You first have to determine what flavor of init scripts the Linux distro is using. Is there a /etc/init.d directory with scripts in it, and companion rc0.d through rc6.d directories with symlinks to scripts in /etc/init.d (this is pretty standard in Linux)? It might use the SysV (UNIX style) inits instead though, which do the same basic thing, but are written differently. I’ve used both and don’t see any real advantage to either. Then again, it’s quite possible for a distro to use a completely different init system that isn’t compatible with anything else, but this would be a REAL MISTAKE, to say the least, because it would affect everything, right down to package management, format, and installation. This is one of those times when you should just follow what everyone else is doing.

It sounds to me like you should ditch Intel’s on board “linux,” and go with something (like Debian or Ubuntu) that boots off the SD card. I’m thinking seriously of going back to a Debian setup for everything, including my laptop. I’d like to be able to have the same distro on all the various platforms I use Linux on.

Yes, you’ve probably guessed by now, that I am not impressed with Intel’s Galileo board. That’s very true, because I would expect much better from a company like Intel when much smaller companies are coming out with what I believe is much better hardware (and firmware for it). I’m just going to pretend this board doesn’t exist, for now at least. I believe there is very probably much that Intel can fix with better firmware for it, and will wait and see what they and others do. I’m interested in seeing what folks do with Debian on it, for instance.

Right now, I just think this is just not a board I want to deal with. It looks like it would just cause me too much frustration at this point. I also believe this is not quite enough, as far as hardware goes, to make me want to get one. I believe the Tre’ has the potential to be a better board all the way around.

I reserve the right to eat crow later, if I turn out to be wrong. :slight_smile:

8-Dale

Hi Dale,

I am reserving judgement so far. As this is a different kind of beast.

As for speed of IO pins, much more discussion on the Trossen forum. The IO pins are handled through I2C chip and Analog I believe SPI. There is an exception, that IO pins 2 and 3 can be hooked up directly to the processor. More information in the link:
communities.intel.com/message/207904

As to comparing this to other Linux boxes, it is hard. Yes so far I prefer some of the other SBC setups like the BBBk and Odroid. Or for sure processing power, the Intel NUC blows these away. The territory that this processor is setup to handle, is to be a more powerful Arduino, where you can plug it in and enter a sketch like:

void setup() { pinMode(13, OUTPUT); } void loop() { digitalWrite(13, HIGH); delay(500); digitalWrite(13, LOW); delay(500); }
And when you press the upload, it blinks your led. Likewise you can plug in many of the shields like a wifi shield or the like and use the same code to access the appropriate Arduino libraries and your code should work on it…

But in addition to this, you have the capabilities of a Linux box underneath…

Again not sure what if anything I will want to use this board for, but will continue to play with it.

Kurt

Quick note: for now, I think I will add this board to my graveyard list. Maybe it will be resurrected later, but still not quite sure what I would use it for…

Yes you can run it sort-of like an Arduino. There are a few shields that it supports (mainly ones who use I2C and maybe SPI). Yes I can get programs like blink to work, right out of the box. But: you reboot the board, and your sketch is not persistent. If you want it to be persistent, you can write it to your USB card and probably update the startup files…

Not sure if with their Arduino USB host plug, which devices you can plug into it and how you gain access to them. Example if I plug in a USB XBee (FTDI), does it create a new Serial object? (So far I don’t think so). Also using debug terminal, did not create /dev/ttyUSBx device…

Then there are other minor things like, the release notes mentioning that the USARTS only support printable characters

I know that some of the people up on their forum are trying to use the card by building and running Debian. But they are so far having to go through hoops, like create a VM on their SD card, and use some Debstrap program to load it up… You have to use some older version of SSH or it faults the machine… Again I don’t think it is ready for prime time.

And if I am going through hoops to boot up linux, why not simply use another Linux SBC like RPI, BBK, Odroid. Or use one of the other boards with Intel processor.

Again not sure!

There were many reasons why Arduino became really popular really quickly, It sounds like the Galileo does not quite have those qualities, at least not yet. We’ll see how things progress. We should have it available shortly via RobotShop.com

I have a Mini2440 … lol

You guys should have a look at these theengineeringprojects.com/2016/10/embedded-system-projects.html, I think you will like them.