Internet of Things with Intel Edison Presentation Paul Guermonprez www.Intel-Software-Academic-Program.com paul.guermonprez@intel.com Intel Software 2014-11-14 Problems IoT is fun … IoT is fun, as long as it’s just for fun There’s a lot of good prototyping platforms on the market. But it’s usually hell to go in production with such platforms. Embedded is complex … Embedded is complex, and should be simpler Embedded development is often too complex. Specific OSes, procedures, hardware and software availability. It’s a world of heavily customized, hard to maintain projects. Solution : Intel Edison Smart IoT IoT Edison is an intel based platform for IoT and embedded projects. It’s very compact (a little more than a SD card) and very low power (imagine a USB port). Perfect for mos IoT projects, but not small enough for some wearable projects. Smart You get a lot of processing power/storage/connectivity, so it’s perfect for smart highly connected IoT projects where you need local processing. Embedded made easy Easy embedded It’s easy to work with Edison because it’s an Intel PC (with an Atom processor) running linux. You’re “at home” with Edison. Your linux32 binaries will work out of the box, you can even compile with gcc on the board itself. It’s has excellent embedded features, but as easy as a PC. Scalability You can start developing your project on Edison, and deploy on bigger platforms like Intel Baytrail (mobile) if you think you need more power or a graphics chip. You can even switch to Core or Xeon ! The architecture, features and software tools are mostly the same. Edison is embedded made simple. Prototyping to Production 70 pins of magic There’s a lot of good prototyping platforms on the market. But it’s usually hell to go in production with such platforms. A great feature is Edison’s 70 pins connector : o You start developing with the Edison module connected to a big daughter card with all the connectors. o When you know exactly what you want, you replace the board with a smaller board exposing the connectivity you need and nothing else. o When you are ready to go into production, all you need is to build a simple daughter card adapted to your needs and connect it to Edison with the 70 pins connector. o No need to build a new motherboard with a processor, memory, storage, connectivity. Two processors : RT and non RT Atom for general purpose Linux The first processor you’ll see on Edison is the Atom dual core processor. It’s powerful enough to easily boot a full linux distribution. You can compute advanced artificial intelligence, image analysis, data crunching, run complex frameworks, … It’s a small, low energy PC (imagine USB power). Quark Microcontroller for Real Time There’s a second processor, very low voltage, booting a real-time OS. With this one, you can analyze in real time sensitive sensor data. The full linux on atom can be put to sleep to save energy while the RT linux continues to analyze data from the sensors. Need to crunch a LOT of data ? Internet access ? Use Atom. Need to crunch data in Real Time ? Very low power ? Use Quark. Key specifications o 22nm Intel® SoC that includes a Intel® Atom™ CPU at 500MHz Dual core, dual threaded o 32-bit Intel® Quark™ microcontroller at 100 MHz. o 40 GPIOs o 1GB LPDDR3 o 4 GB EMMC o Dual-band WiFi and BTLE http://www.intel.com/content/www/us/en/do-it-yourself/edison.html The Course Linux based IoT/Embedded Arduino vs GUI vs Linux Edison can emulate the behavior of an Arduino board. You can also use a complex middleware to program Edison remotely from a GUI on your PC. But most linux developers will want to access the OS booted on Edison directly with ssh and use it a PC server for IoT and embedded projects. That’s what we’ll cover in this course. Only show the differences We suppose you’re a developer with a little Linux experience, but not an IoT or embedded expert. We plan to focus only on the differences between a regular Linux PC and IoT/embedded development on Intel Edison. License Creative Commons – By 3.0 You are free: • to Share — to copy, distribute and transmit the work • to Remix — to adapt the work • to make commercial use of the work Under the following conditions: • Attribution — You must attribute the work in the manner specified by the author or licensor (but not in any way that suggests that they endorse you or your use of the work). With the understanding that: • Waiver — Any of the above conditions can be waived if you get permission from the copyright holder. • Public Domain — Where the work or any of its elements is in the public domain under applicable law, that status is in no way affected by the license. • Other Rights — In no way are any of the following rights affected by the license: – – – • Your fair dealing or fair use rights, or other applicable copyright exceptions and limitations; The author's moral rights; Rights other persons may have either in the work itself or in how the work is used, such as publicity or privacy rights. Notice — For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to this web page. http://creativecommons.org/licenses/by/3.0/