Limit search to available items
Book Cover
E-book
Author Ramon, Manoel Carlos, author

Title Intel® Galileo and Intel® Galileo Gen 2 : API features and Arduino projects for Linux programmers / Manoel Carlos Ramon
Published Berkeley, CA : Apress Open, 2014
New York, NY : Distributed to the Book trade worldwide by Springer
©2014
Online access available from:
SpringerOpen books    View Resource Record  

Copies

Description 1 online resource (xxii, 680 pages) : illustrations
Series The expert's voice in Linux and Arduino programming
Expert's voice in Linux and Arduino programming
Contents The Beginnings -- About this Book -- Why Use Intel Galileo Boards? -- The Software Advantages -- The Hardware Advantages -- Hardware Overview -- The Processor: Intel Quark SoC X1000 -- Introducing Intel Galileo -- Introducing Intel Galileo Gen 2 -- Preparing Your Cables -- The Serial Cable for Intel Galileo -- The Serial Cable for Intel Galileo Gen 2 -- Testing the Serial Cables -- Exploring the Linux Console -- Testing the Data Cables -- Summary -- Introduction to the Yocto Build System -- Yocto and this Book -- Creating Your Own Intel Galileo Images -- Preparing Your Computer -- The SPI vs. SD Card Images -- Building Intel Galileo Images -- Building and Using the Cross-Compiler Toolchain -- Creating a Hello World! -- Debugging Native Applications -- Booting Intel Galileo with Your Own Images -- Booting from SD Card Images -- Booting from SPI Card Images -- What to Do If Intel Galileo Bricks -- Summary -- A Little Bit of History -- The Intel Makers Community -- Installing the Arduino IDE for Intel Galileo -- Connecting Intel Galileo -- Installing the Drivers and the Arduino IDE -- Installing the Arduino IDE -- Installing the IDE on Linux -- Installing the Drivers -- Understanding the Arduino IDE -- Checking the Port and Board Selected -- What Is a Sketch? -- Compiling and Running the Sketch -- Persisted and Not Persisted Sketches -- Persisted Sketches and Long Time to Start -- Debugging with Serial Console and Serial Communication -- Serial.begin(int speed) -- Serial.print(data) -- Serial.println(data) -- Serial.available() -- Serial.read() -- Printing Debug Messages and Using the Serial Console -- The Arduino Language Reference and APIs -- Structure -- Digital I/O -- Analog I/O -- Time -- Running Some Examples -- Fade Example -- Button Example -- ReadAnalogVoltage Example -- The Debounce Example -- Updating the Firmware Using the IDE -- Updating the Firmware with Different Firmware -- Troubleshooting the Drivers -- Serial Communication Issues with IDE on Windows -- IDE Problems with Virtual Machines and 64-Bit Linux -- Communicating Sketches with Linux Native Programs -- is.Additionalfuture Project Example: Unread Email Alarm with Python and POSIX Functions -- Summary -- Servo API -- The Theory versus Practice -- The Mistake with Intel Galileo and Servos -- What Is New in Servo API? -- Serial, Seriall, and Serial2 Objects -- Testing the Serial, Seriall, and Serial2 Objects -- Improving the I/O Speed -- The New APIs for I/O -- The Tone API -- What's New in the Tone API? -- The pulseln API -- unsigned long pulseln(uint8 _t pin, uint8_t state, unsigned long timeout = 1000000) -- What's New with pulselnO -- A Sample Running pulselnO -- Hacks -- Hacking the Servo Library -- Hacking the GPIO Expander for New PWM Frequencies -- Single Code for Intel Galileo and Intel Galileo Gen 2 -- Project: DHT Sensor Library with Fast I/O APIs -- Materials List -- The DHT Sensor -- A Workaround Using Tri-State Buffers -- Creating a New Library for DHT11 Sensor -- Summary -- WiFi Cards -- Setting Up the WiFi Mini-PCIe Card -- Checking if the WiFi Card Was Recognized -- Adding Support to a New WiFi Card -- The WiFi API -- Scanning the Wireless Networks -- Connecting to the WPA or WEB -- Hacking the WiFi Library -- Step 1: Setting Up the WiFi Connection -- Step 2: Restart the Wireless Connection -- Step 3: Hacking the WiFi Class -- Ethernet API -- What's New with Ethernet API and Intel Galileo -- Ethernet Example: Network Time Protocol (NTP) -- Dynamic and Static IP Using Ethernet -- Simplifying the Sketches by Removing the Ethernet Objects -- Transferring Files Between Intel Galileo and Computers -- Using ftp -- Using scp or pscp -- Using an SD Card -- Using a USB Pen Drive -- Hacking the IDE to Improve the Sketch Transfer -- How the Hacked IDE Works -- Hacking the Transfers -- Summary -- Project Details -- Material List -- System and Hardware Clock -- Assembling the Coin Battery -- Workaround with 1.5V Batteries -- Creating a Twitter Application Account -- Step 1: Creating Your Twitter Account -- Step 2: Creating the Twitter Application -- Creating a Script to Post Messages on Twitter -- Step 1: Identifying the API -- Step 2: Generating the OAuth Signature with the OAuth Tool -- Step 3: Creating a Script to Post on Twitter with Intel Galileo -- Step 4: Creating a Sketch that Tweets -- Ideas for Improving the Project -- Flowers and Plants Communicating with You on a Social Network -- Summary -- OpenCV Primer -- Project Details -- Materials List -- USB Video Class -- Preparing the BSP Software Image and Toolchain -- Using eGlibc for Video4Linux Image -- Increasing the rootfs Size -- Disabling GPU Support on OpenCV -- Building the SD Image and Toolchain -- Development Library Packages -- Connecting the Webcam -- Introduction to Video4Linux -- Exploring the Webcam Capabilities with V4L2-CTL -- Changing and Reading Camera Properties -- Pixel Formats and Resolution -- Capturing Videos and Images with Iibv4I2 -- A Program for Capturing Video -- A Program to Capture Images -- Working with OpenCV -- Building Programs with OpenCV -- Capturing an Image with OpenCV -- The Same Software Written in Python -- Processing Images -- Detecting Edges -- Face and Eyes Detection -- Emotions Classification -- Ideas for Improving the Project -- Integrating Your Emotions with a Robotic Head -- Expanding the Classifications -- Improving the Emotion Classification Using Large Databases -- Improving the Emotion Classification for Several Faces -- Summary -- Project Details -- Material List -- Assembling the Moisture Sensors -- Mechanical Assembly -- Electrical Assembly -- Assembling the Flower Face -- Testing the Flower Face with the Software -- Reviewing the Code -- Running the Project -- Calibration Procedure -- Ideas for Improving the Project -- Increasing the Number of Sensors -- Automatic Irrigation -- Using Appropriate Wires -- Using a Commercial Sensor -- Tweeting -- Summary -- Project Details -- The Software Architecture -- Materials List -- Integrating the Components Individually -- Testing the Keypad -- Testing the PIR Sensor -- The PIR Sensor Connection -- Testing the YwRobot Relay Module -- Testing the TMP36 Temperature Sensor -- Creating the Sketch -- Sending UDP Messages -- Receiving UDP Messages -- Joining All Code in a Single Sketch -- Creating Your Own Web Server with node.js -- Updating node.js -- About the npm -- Installing Cheerio -- Installing socket.io -- The Web Page -- Writing the Web Server Code -- Running the Home Automation System -- Ideas for Improving the Project -- Power of Ethernet (PoE) -- Using express and node.js -- Changing the Web Page and Web Server Without Experience with the Web -- Creating an Analogic Keypad and Having More I/0s Available -- Adding a Username and Password -- Using the DHT11 Sensor -- Summary -- Project Details -- Materials List -- Assembling the PoE Module -- Powering On with the PoE Injector -- How It Works -- Ideas for Improving the Project -- Summary -- An introduction to Robotic Arm Theory -- Using an Online Tool to Calculate Your Servos -- Considerations About This Project -- The Robotic Arm -- Assembling the Robotic Arm -- Step 1: Preparing the Servos -- Step 2: Assembling the Base -- Step 3: Assembling the Shoulder -- Step 4: Assembling the Elbow -- Step 5: Assembling the Wrist -- Step 6: Assembling the Mechanical Gripper -- Step 7: Assembling a Base -- Controlling the Robotic Arm -- Building a Servo Control Board -- The Hardware -- Assembling the Board -- The Software -- A Gripper Based on Coffee and a Balloon -- Preparing the Coffee Gripper -- A Sketch for the Coffee Gripper -- Ideas for Improving this Project -- Summary -- An Introduction to XMM716O and XMM7260 -- Project Details -- Materials List -- Considerations Related to Antennas -- Preparing the Hardware -- Step 1: Preparing the SIM Card -- Step 2: The NGFF/mPCle Adaptor -- Step 3: Adapting the Modem Card -- Step 4: Connecting the Antennas -- Step 5: Connecting the Modem to Intel Galileo -- Preparing the Software -- Step 1: Checking the Modem -- Step 2: Loading the CDC-ACM Driver -- Step 3: Checking if the Modem Responds to AT Commands -- Step 4: Checking the SIM Card Connection -- Step 5: Configuring the APN and Attaching it to the Network -- Step 6: Creating an IP Interface with pppd -- Step 7: Testing the Internet Connection -- Testing the Internet Bandwidth -- Why Aren't the Download/Upload Bandwidths Optimal? -- Ideas for Improving the Project -- Improving the Chat Script -- Loading the cdc-acm Driver Automatically -- Summary
Summary Intel Galileo and Intel Galileo Gen 2:API Features and Arduino Projects for Linux Programmers provides detailed information about Intel Galileo and Intel Galileo Gen 2 boards for all software developers interested in Arduino and the Linux platform. The book covers the new Arduino APIs and an introduction about how to develop natively using Linux. You?ll learn how to Linux libraries and applications are used and interact with sketches, configure Wi-Fi mPCIe, and much more. Currently there are no books or easily information available on how to use the special APIs created for Galileo, or how which mPCIe modules really works and how to use them, or any information on how to take advantages of Linux and cross-compilers developing different projects. Developers currently have very limited resources on how to really explore all capabilities of the Intel Galileo family board. This book tries to keep all projects in a low cost margin. Author Manoel Carlos Ramon is a member of the Intel Galileo development team; his text draw on his practical experience in working on the Galileo project as he shares the team?s findings, problems, fixes, workarounds and techniques with the open source community. His areas of expertise are wide-ranging, including Linux embedded kernel and device drivers, C/C++, Java, OpenGL, Assembler, Android NDK/SDK/ADK and 2G/3G/4G modem integration. He has more than 17 years of experience in research and development of mobile devices and embedded circuits. His personal blog about programming is www.bytesthink.com
Analysis Computer science
Notes Includes index
English
Online resource; title from PDF title page (SpringerLink, viewed January 16, 2015)
SUBJECT Linux. http://id.loc.gov/authorities/names/n94087892
Linux fast
Subject Application program interfaces (Computer software)
Arduino (Programmable controller)
Computer input-output equipment.
APIs (interfaces)
Computer science.
Computer input-output equipment
Application program interfaces (Computer software)
Arduino (Programmable controller)
Form Electronic book
ISBN 9781430268383
1430268387
1430268395
9781430268390