Slashdot Mirror


Intel Launches 'Galileo,' an Arduino-Compatible Mini Computer

MojoKid writes "Although Intel is Chipzilla, the company can't help but extend its reach just a bit into the exciting and growing world of DIY makers and hobbyists. Intel announced its Galileo development board, a microcontroller that's compatible with Arduino software and uses the new Quark X1000 processor (400MHz, 32-bit, Pentium-class, single- core and thread) that Intel announced at the IDF 2013 keynote. The board makes use of Intel's architecture to make it easy to develop for Windows, Mac, and Linux, but it's also completely open hardware (PDF). Galileo is 10cm x 7cm (although ports protrude a bit beyond that), and there are four screw holes for secure mounting. Ports include 10/100 Ethernet, USB client/host ports, RS-232 UART and 3.5mm jack, mini PCIe slot (with USB 2.0 host support); other features include 8MB Legacy SPI Flash for firmware storage, 512KB embedded SRAM, 256MB DRAM, 11KB EEPROM programmed via the EEPROM library, and support for an additional 32GB of storage using a microSD card."

34 of 130 comments (clear)

  1. more the better by AlreadyStarted · · Score: 5, Interesting

    I know there will be haters, but the more corporate interest and entries in this category the better in my opinion. And if it happens to forward the interests of Intel, more power to them.

    1. Re: more the better by kelemvor4 · · Score: 2

      I generally stop reading anything when I encounter the word "hater" in it.

      It's just so stereotyping a term to use. I hope a lot of us will disregard comments that use that word to describe others, too.

      It's hateful and it shrieks cultishness. Just stop.

      I generally stop reading when anything when I encounter the word "hateful" in it. I hope a lot of us will disregard comments that use that word. It immediately identifies the author as a hater. The text that surrounds it is generally useless except to the author.

  2. pricing? by csumpi · · Score: 2

    "low cost" - how low exactly?

    1. Re:pricing? by pjrc · · Score: 5, Informative

      Several articles have appeared claiming "under $60".

      For for free if you're one of about 50000 students or apparently about 400 people who attended a talk at Maker Faire last weekend in Rome.

      However, if you check out Intel FAQ, there are a number of Arduino compatibility caveats. Probably the main on is the I/O pins are controlled by an I/O expander with approx 2ms latency. That's pretty slow compared to Arduino's slow digitalWrite() function, which run about 4us on 16 MHz AVR, or direct AVR register access, which takes 125ns.

      The processor runs Linux and Arduino sketches are compiled to native Linux userspace programs, so it probably will open up a lot of possibilities.

  3. Inigo Montoya... by charlieo88 · · Score: 5, Informative

    Mini Computer? Inigo Montoya says, "I don't think that word means what you think it means."

    1. Re:Inigo Montoya... by tepples · · Score: 3, Informative

      Yeah... I was wondering how to hook up the teletype and the terminal servers.

      Through the Ethernet port, using SSH protocol. Ultimately, anything with preemptive multitasking and virtual memory can fill the role of a minicomputer. An 8-bit MCU is a micro, but a VAX or i386-family PC is a mini.

    2. Re:Inigo Montoya... by Sqr(twg) · · Score: 3, Interesting

      From Wikipedia: "In a 1970 survey, the New York Times suggested a consensus definition of a minicomputer as a machine costing less than 25 000 USD, with an input-output device such as a teleprinter and at least 4K words of memory, that is capable of running programs in a higher level language, such as Fortran or Basic."
      It would seem this board meets the definition, as long as you connect it to some I/O device.

  4. Re:Lots of little boards by highfreq2 · · Score: 4, Interesting

    Linux is not inherently bloaty. The kernel and a busybox based user space run on hardware a good deal weaker than this. I love Linux for embedded systems. Its network stack is rock solid, and with the modern kernel it is pretty easy to get near realtime performance.

  5. The most important features by hammeraxe · · Score: 2

    Ummmm, what about the most important features of the arduino: digital I/O pins, analog input and PWM output? It looks like there might be some in the picture, but the specs don't mention anything at all...

    1. Re:The most important features by pjrc · · Score: 2

      The datasheet, linked from this Slashdot article, shows a full-page diagram on page 3. On the left side are the usual 6 analog inputs. On the right side are the usual 14 digital pins, with 6 clearly indicated as PWM capable.

      On page 4, it says:

        14 digital input/output pins, of which 6 can be used as Pulse Width Modulation (PWM) outputs;
                o Each of the 14 digital pins on Galileo can be used as an input or output, using pinMode(),
                      digitalWrite(), and digitalRead() functions.
                o The pins operate at 3.3 volts or 5 volts. Each pin can source a max of 10mA or sink a maximum of
                      25 mA and has an internal pull-up resistor (disconnected by default) of 5.6k to 10 kOhms.
        A0 A5 - 6 analog inputs, via an AD7298 analog-to-digital (A/D) converter (datasheet)
                o Each of the 6 analog inputs, labeled A0 through A5, provides 12 bits of resolution (i.e., 4096
                      different values). By default they measure from ground to 5 volts.
            2
        I C bus, TWI, with SDA and SCL pins that are near to the AREF pin.
                o TWI: A4 or SDA pin and A5 or SCL pin. Support TWI communication using the Wire library.
        SPI
                o Defaults to 4MHz to support Arduino Uno shields. Programmable up to 25MHz.

      On page 5, the list continues:

                o Note: While Galileo has a native SPI controller, it will act as a master and not as an SPI slave.
                        Therefore, Galileo cannot be a SPI slave to another SPI master. It can act, however, as a slave
                        device via the USB Client connector.
        UART (serial port) Programmable speed UART port (Pins 0 (RX) and 1 (TX))
        ICSP (SPI) - a 6 pin in-circuit serial programming (ICSP) header, located appropriately to plug into
          existing shields. These pins support SPI communication using the SPI library.
        VIN. When using an external power source you can supply 5V through this pin.
                o Note: When using this pin to supply power to the board, it must not be greater than 5V.
        5V output pin. This pin outputs 5V from the external source or the USB connector. Maximum current
          draw to the shield is 800 mA
        3.3V output pin. A 3.3 volt supply generated by the on-board regulator. Maximum current draw to the
          shield is 800 mA
        GND. Ground pins.
        IOREF. The IOREF pin on Galileo allows an attached shield with the proper configuration to adapt to the
          voltage provided by the board. The IOREF pin voltage is controlled by a jumper on the board, i.e., a
          selection jumper on the board is used to select between 3.3V and 5V shield operation.
        RESET button/pin
                o Bring this line LOW to reset the sketch. Typically used to add a reset button to shields that block
                        the one on the board.
        AREF is unused on Galileo. Providing an external reference voltage for the analog inputs is not
          supported.
                o For Galileo it is not possible to change the upper end of the analog input range using the AREF pin
                        and the analogReference() function.

  6. Re:Sounds.... Expencive by fuzzyfuzzyfungus · · Score: 5, Interesting

    I've heard ~$60 thrown around as a number, though not an authoritative one. Lousy by the standards of Arduino projects that really are 8-bit MCU work; but the world is infested with Arduino projects that have the MCU twiddling a few sensors and then a (surprisingly expensive) ethernet/wifi shield bodged on to report the results to the internet. If that's you, the cost gets a lot more competitive.

    Though, on the downside (similarly not-yet-confirmed) reports are that the arrangement Intel uses to support the GPIO is pretty limited, compared to much cheaper parts that do GPIO closer to the metal, in terms of the speeds at which it can bit-bang the assorted oddball peripherals (those cheapie LED strands for instance) that many arduino projects end up bit-banging to communicate with. Having a real ethernet and SD interface, not SPI hacks, is nice; but if those reports are to be believed, your project had better be doable without extensive bitbang interfacing.

  7. Re:Mini computer?? by Anonymous Coward · · Score: 5, Funny

    Hey, everybody! An old man is talking!

  8. because 1985 by raymorris · · Score: 3, Insightful

    The 1960s - 1970s minicomputer was gone by 1985. Thirty years later, there's no confusion and therefore no reason not to reuse the term.

  9. Possibilities by bugs2squash · · Score: 2

    Imagine what would happen if Atmel could develop a low cost solution that could emulate this in hardware.

    --
    Nullius in verba
  10. FreeDOS? by randomErr · · Score: 2

    Can it run FreeDOS? That would make certain development much easier for me.

    --
    You say things that offend me and I can deal with it. Can you?
  11. Re:Open? Hardly by ArcadeMan · · Score: 4, Insightful

    And try to make an Arduino without buying an Atmel microcontroller.

  12. 2-4 MB for Linux is bloated? by raymorris · · Score: 2

    I run a Linux appliance with 4MB of RAM as a VPN endpoint for my kvm, ipmi, pdu, etc. I don't consider 10 cents of RAM "bloated".

    Sure for some things you don't need an operating system, but if having Linux saves five minutes of development time it may be worth the extra $5 of hardware.

    Obviously if you plan to sell a million units of a particular design, omitting 10 cents worth of RAM from each saves you $100K. For hobbyists, 4MB of RAM to run Linux is very often worth it.

  13. Um... 1971 wants you to know Intel=Hobbist by coolmoose25 · · Score: 2

    "Although Intel is Chipzilla, the company can't help but extend its reach just a bit into the exciting and growing world of DIY makers and hobbyists."

    http://en.wikipedia.org/wiki/Intel_4004

    The 4004 gave rise to the z80, the 8008, 8080, and 8086 chips that before the IBM PC came along were mainstays in the hobbyist community. It was all hobbyist, all the time back then, and heady days. So wouldn't it be fairer to say that Intel is going back to its roots rather than "reaching just a bit" in the DIY and hobbyist arena?

    --
    Brawndo: It's what plants crave!
  14. Re:Sounds.... Expencive by viperidaenz · · Score: 2

    When they say single thread, they mean not hyper threading. It's an x86, it can context switch like any other x86.

  15. Re:Sounds.... Expencive by HeckRuler · · Score: 3, Interesting

    Intel didn’t announce pricing for Galileo,

    Aaaaand I'm instantly not interested.

    Seriously, you can throw as much hardware as you want at a problem, it's all just a matter of price. We could shove an iphone everywhere we want compact processing capabilities. (And god knows enough people actually do that).

    Also, it really helps if it's open. The raspberry pi is neat because it's specifically useful as a full-fledged computer that DAMN cheap. It runs Linux so there's a lot of leeway with what you want to do with it. (Quickly, without having to develop your own RTOS and windows manager) But it IS questionable about what sort of long-term legs it has because the broadcom chip on it is very much closed. I don't care how awesome the hardware is if I can't even blink an LED without asking mother-may-I from some corporate whore.

  16. OCD by tepples · · Score: 2

    Will projects like OpenOCD

    How many times do you have to wash your hands and open and close the door before you can use an Open On-Chip Debugger?

  17. Arduino Tre is a better board by jcdr · · Score: 4, Informative

    Sorry for Intel, but the just announced Arduino Tre is far better from any point of views.
    http://blog.arduino.cc/2013/10/03/a-sneak-preview-of-arduino-tre/?utm_source=Arduino+World&utm_campaign=9f14cc4ca3-MakerFaire_World_201310_2_2013&utm_medium=email&utm_term=0_69a7d1abe4-9f14cc4ca3-76843037

    * Run faster than the Intel solution: An Atom core yield the same code execution speed as an Cortex-A8 core at the same frequency, so 1GHz A8 will easily catch on a 0.4GHz ia32).
    * Cheaper and simpler to design on a custom board: just look at the chip package and at the PCB routing...
    * Simpler power supply design, again just look at the schematics and at the PCB.
    * HDMI output.
    * More I/O, and all are integrated directly into the two CPUs, not using peripheral chips with low bandwidth.
    * Already supported by larges communities, for the two processors.

    Intel is just trying to enter a new market with a big buzz, but there actual solution still far away from the concurrent solutions. There just don't understand that in the embedded market nobody is bounded to the ia32 instructions set. Integration is the key and there Quark X1000 don't bring anything new on the table.

    1. Re:Arduino Tre is a better board by AmiMoJo · · Score: 2

      Which all completely misses the point of the Arduino. It was never about performance, it was about making things easy, and having a community build around a common platform. The people who use it just want to write some logic that glues libraries and shields together.

      There are many, many better options if you need more power or flexibility. All these spin-off devices are fine but always need more knowledge to understand and use. Traditional Arduino users aren't at that level, and people who are don't need this kind of thing anyway.

      Still, good luck to them.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    2. Re:Arduino Tre is a better board by jcdr · · Score: 2

      Yes Arduino is about making things easy and the hug success of the project prove that it fit this goal very well. Now there is no reason to not bring this feature to more powerful platforms. Actually, this is still not as easy to code basic hardware interaction on Linux. There is no a standard and simple API to do on Linux what you can actually do on a Adruino. There is project like Comedi, but there are not focused on SoC. There is almost a different IO API for every SoC on Linux, even it there is ongoing work to fix that for the most basics operations. And maintaining a specific Linux driver is a resource consuming task on the long term because of the non-stable API nature of Linux.

      Think of a future when you can program a hardware focused Linux real-time application as easily as today with the Arduino IDE but on a more powerful chip where you can for example use a full database and a webserver to allow your user to interact with your device datas by using a nice Qooxdoo application from remote computers, phones and tablets. Ok I am biased, as a already do this kind of design since many years now, and the clients are really happy with it.

  18. Why did Intel made this Arduino compatible? by innot · · Score: 4, Interesting

    While I like the idea of having an Arduino compatible board running Linux to do some more advanced projects, I don't understand what drove Intel to force this board to be Arduino compatible. The Quark processor is not designed for this sort of stuff as it has neither a sufficient number of GPIO pins nor any ADCs. It sure has a lot of interfaces (SPI, I2C, PCI-E, SD-Card, Serial etc.), but it lacks the things that are useful for a hacker project.

    So they had to include a separate GPIO extender chip (over a slow I2C interconnect) as well as an separate ADC. The Quark SoC has some 15 GPIO Pins, the extender another 40. But of those 55 Pins only 20 GPIO pins are actually available on the Arduino shield pins -- the rest is used for all the Muxes to switch pins between the ADC, the GPIO Extender and the Quark SoC to emulate the flexibility of the Arduino AVR processor.

    While I haven't looked at the actual PCB schematic, I think the board layout is also strange. The ADC is on the opposite side from the analog input pins, meaning that all analog signals have to travel a long distance in the vicinity of some high speed digital signals. And the GPIO Extender Chip is on the opposite corner from all the digital output pins.

    This, together with the BGA devices (SoC, RAM), seem to indicate that this is at least an 6 layer board which will make it hard to clone this design -- something that IMHO has contributed to the success of the Arduino. The Schematic for this board has 27 pages compared to the single page of the Arduino Uno

    It seems that this Board is designed more as a competitor to the Raspberry Pi than to the Arduino, both in price and in features.The Arduino compatibility is just some marketing thing which makes the board overly complex and more expensive than it needs to be.

    But hey, it sure must be fun to employ a few million transistors and a full blown operating system to run the Arduino Blink demo :-)

    --
    X IMPRIMITE "SALVE TERRA!"
    XX ITE AD X
  19. Why not single chip? by unixisc · · Score: 2

    Looking at the picture of the PCB they used, first question that strikes me - why not simply make it a single chip ASIC? I counted at least 7 chips on board. It would seem that a single chip w/ all the functions, and connections running out to all the ports - PCIe, USB, Ethernet, SPI and so on would enable Intel to minimize on chip cost, and let the rest of the cost hinge on the peripheral interfaces.

    If that would be too expensive, Intel could make things cheaper by going as far back to a Pentium I core, or even something like an address/data multiplexed 486, but making sure that modern peripherals are supported. The main issue on older chips was that the CPU was really fast, but the peripherals pretty slow. Here, the peripherals could be as fast as the CPU, but since there's also a premium on battery life, the clock could be drawn back. Also, they could toss in some Centrino chip functionality so that Wi-Fi too got supported.

    Such a system could support just about every x86 OS out there - FreeDOS, Windows, Linux, Minix, and so on. In fact, on such a system, a 32-bit version of FreeDOS could also be made.

    1. Re:Why not single chip? by Blaskowicz · · Score: 2

      To me the CPU is meant to be used in embedded systems, where you don't necessarily need ethernet or USB or something else.
      What's announced here is a low cost general purpose and development board.
      The integrated 512K of special RAM means it can maybe be used without external memory chips. It's like having a PC that can boot DOS without memory DIMMs.

    2. Re:Why not single chip? by highfreq2 · · Score: 2

      It isn't because they didn't think of this. The PCIe and USB do look to be directly from the SOC. Ethernet PHY's are difficult or impossible to implement in the low voltage processes used for modern SOCs. DRAM and flash are sometimes mounted onto the top of the SOC, but that is more expensive, and typically used for mobile where space is at a premium. But if you were going to run a small embedded OS you can probably get by with the 512k or SRAM. Most the other chips are either power supply, or 3.3V I/O. These are again places where the SOC process doesn't allow for I/Os that handle the higher voltages safely.

  20. Re: Sounds.... Expencive by HeckRuler · · Score: 2

    Software types cling to their thick padding of abstraction. I like coding up from the reset vector.

    I like not having to re-invent quicksort, atoi, hexToDec, etc etc etc every god-damn time. Or having to whip out the scope to find out what quirk this SPI implementation is doing. I like libraries where I know how they work, I can plop them down, and instantly have known capabilities. And no, you don't need big engines for everything. But if you need an Ethernet connection, even though the speed constraints are so lax that even a 8051 could handle it, it doesn't mean that you should piss away weeks re-inventing the wheel just to save a couple bucks on a cheaper chip. Unless you're making millions of units. It's a business decision. Whatever is cheapest and gets the job done. Sometimes that means slapping an intel in there.

  21. Re:Sounds.... Expencive by pjrc · · Score: 4, Informative

    The "someone" mentioning 230 Hz is INTEL, in their Galileo FAQ.

    http://www.intel.com/support/galileo/faq.htm

    The question is near the end, specifically "What is the maximum rate at which GPIO output pins can be updated?"

    The answer, which you'll see if you click that link and expand the question to see the answer, is:

    The GPIO output pins on Intel® Galileo are provided by an I2C Port Expander that is running at standard mode (100 kHz). Each I2C request to update a GPIO requires approximately 2ms. In addition to software overhead, this restricts the frequency achievable on the GPIO outputs to approximately 230 Hz.

  22. Re:Sounds.... Expencive by hjf · · Score: 2

    Erm... an ENC28J60 module with RJ45 jack, magnetics, crystal, and all you need to connect an arduino (or any other MCU) is $3.50 on ebay. Less than the price of the ENC28J60 chip alone!.

  23. Re:Lots of little boards by jandrese · · Score: 2

    What about when you bring up a shell prompt on your phone for example? My phone has 32GB of storage, but Cyanogen still uses busybox for some reason. I've yet to find a full version of the shell utilities for Android. It's annoying, especially if you want to compile stuff on the phone directly but discover that the environment is too crippled to run most build scripts.

    --

    I read the internet for the articles.
  24. Re:Lots of little boards by pjrc · · Score: 3, Interesting

    Well, there is an Arduino with 84 MHz clock, called Arduino Due. It's 32 bit ARM, not 8 bit AVR. It sells for $49.

    My little company makes an Arduino compatible board called Teensy 3.0, which is technically spec'd 48 MHz but overclocks to 96 MHz without any trouble. It sells for $19.

    There are also other less compatible alternative boards, like ChipKit, Maple and Fubarino, with clocks speeds in the 50 to 80 MHz range, and attractive prices. Their compatibility isn't as good, which might be a factor if you're using libraries or code from websites. If you're wring all your project's code, that's less of a concern.

    These boards also tend to have more RAM and other built-in resources.

  25. analysis of the Quark and Galileo by lkcl · · Score: 3, Interesting

    i did an analysis of the Quark X1000 based on the Galileo schematics, and the assessment isn't good:
    http://lists.phcomp.co.uk/pipermail/arm-netbook/2013-October/008979.html

    the key failure is that there's absolutely no I/O multiplexing. given that intel actually designed the PXA series of ARM processors before selling them to marvell you have to wonder what was going through the minds of the engineers behind the Quark X1000.

    the main points of the above link which automatically and very unfortunately make the Quark X1000 a complete failure are:

    1) there's no video outputs, and the only options are USB2 (DisplayLink with no 3D capabilities and too slow to do video), SPI (for character-based LCDs) or PCIe. to match a 0.4 watt processor with a 20 watt 3D PCIe Graphics card is completely insane. there are therefore no good options for video display of *any* kind.

    2) there's no "industrial" or "embedded" style GPIO. no CAN bus, no PWM, no ADC, no DAC. there's also no audio. there's not even I2S and there's certainly no SPDIF. so to make up for that lack you'd have to add something like a Cortex M0, M3 or M4 embedded controller... and given that those usually come with built-in Power Management, NAND Flash and SDRAM, for the majority of purposes where you'd need to use an embedded controller with a Quark as a GPIO expander you'd be better off, cost-wise, with... just the embedded controller.

    overall then there really aren't *any* markets that this chip could be useful for. if i'm wrong about that, and anyone can actually think of good uses for it, please do speak up.