Front Panel: Designing Software for Embedded User InterfacesNiall Murphy  
More Details

Learn how to design software interfaces for embedded systems applications that are intuitive for your users and cost-effective for you. Front Panel shows you how to leverage object methods — even when you are using assembler or C. Take a look at these topics!: - Event handling patterns for graphical and non-graphical user interfaces - Using objects for graphical interfaces - The pros and cons of C & C++ in embedded systems - Using simulations and prototypes to test your design - Looking at the human side of the user interface interaction - Finite state machines & table driven software The enclosed disk contains C and C++ programming examples that show how to structure the data to be manipulated by the user, and how to queue and process user events. If you design and build embedded systems, Front Panel will make your applications more effective — and more successful. ;

Develop efficient and maintainable software that presents intuitive user interactions. You get C programming examples that show how to structure the data to be manipulated by the user, and learn how to queue and process user events. Includes a discussion of graphic interfaces, and usability issues.

0879305282
Programming Amazon Web Services: S3, EC2, SQS, FPS, and SimpleDBJames Murty  
More Details

Product Description
Building on the success of its storefront and fulfillment services, Amazon now allows businesses to "rent" computing power, data storage and bandwidth on its vast network platform. This book demonstrates how developers working with small- to mid-sized companies can take advantage of Amazon Web Services (AWS) such as the Simple Storage Service (S3), Elastic Compute Cloud (EC2), Simple Queue Service (SQS), Flexible Payments Service (FPS), and SimpleDB to build web-scale business applications. With AWS, Amazon offers a new paradigm for IT infrastructure: use what you need, as you need it, and pay as you go. Programming Web Services explains how you can access Amazon's open APIs to store and run applications, rather than spend precious time and resources building your own. With this book, you'll learn all the technical details you need to: Store and retrieve any amount of data using application servers, unlimited data storage, and bandwidth with the Amazon S3 service Buy computing time using Amazon EC2's interface to requisition machines, load them with an application environment, manage access permissions, and run your image using as many or few systems as needed Use Amazon's web-scale messaging infrastructure to store messages as they travel between computers with Amazon SQS Leverage the Amazon FPS service to structure payment instructions and allow the movement of money between any two entities, humans or computers Create and store multiple data sets, query your data easily, and return the results using Amazon SimpleDB. Scale up or down at a moment's notice, using these services to employ as much time and space as you need Whether you're starting a new online business, need to ramp upexisting services, or require an offsite backup for your home, Programming Web Services gives you the background and the practical knowledge you need to start using AWS. Other books explain how to build web services. This book teaches businesses how to take make use of existing services from an established technology leader.

Create HTML POST Forms That Allow Your Web Site Visitors to Upload Files Into Your S3 Account Using a Standard Web Browser
By James Murty, creator of the JetS3t Java S3 library and author of Programming Amazon Web Services

Amazon’s Simple Storage Service (S3) provides cheap and unlimited online data storage for anyone with a credit card and an Amazon Web Service (AWS) account. If you have an AWS account, you can interact with the S3 service using specialized tools to upload and manage your files. It is very convenient to have access to this online storage resource for yourself, but there may be situations where you would like to allow others to upload files into your account.

For this purpose, S3 accepts uploads via specially-crafted and pre-authorized HTML POST forms. You can include these forms in any web page to allow your web site visitors to send you files using nothing more than a standard web browser.

In this article, I will demonstrate how to build simple S3 POST forms. I will assume that you have already signed up for the S3 service, and that you have an S3 client program for creating buckets and viewing files in your account. Before you proceed, create your own bucket to store uploaded files — in the examples below I will use a bucket named s3-bucket. POST Form Web Page

Here is a web page with an S3 POST Form that you can use as a template for your own forms: File to upload to S3:

This template demonstrates some important features of an S3 POST form, and the web page that contains it: The web page that contains the form has a meta tag in the head section that tells web browsers to use the UTF-8 unicode character encoding.The form’s action parameter specifies an S3 URL that includes the name of your destination bucket, in this case the bucket called s3-bucket.The form contains a number of input fields with parameter names and values that will be sent to the S3 service. If any required input fields are missing, or if a field has an incorrect value, the service will not accept uploads from the form.

The S3 service uses information from the form’s input fields to authorize uploads, and to set the properties of uploaded file objects. Here is a description of the most common input fields: Field NameDescription key A name for the S3 object that will store the uploaded file’s data. This name can be set in advance when you know what information the user will upload, for example: uploads/monthly_report.txt.

If you do not know the name of the file a user will upload, the key value can include the special variable ${filename} which will be replaced with the name of the uploaded file. For example, the key value uploads/${filename} will become the object name uploads/Birthday Cake.jpg if the user uploads a file called Birthday Cake.jpg. AWSAccessKeyId The Access Key Identifier credential for your Amazon Web Service account. acl The access control policy to apply to the uploaded file. If you do not want the uploaded file to be made available to the general public, you should use the value private. To make the uploaded file publicly available, use the value public-read. success_action_redirect The URL address to which the user’s web browser will be redirected after the file is uploaded. This URL should point to a “Successful Upload” page on your web site, so you can inform your users that their files have been accepted. S3 will add bucket, key and etag parameters to this URL value to inform your web application of the location and hash value of the uploaded file. policy A Base64-encoded policy document that applies rules to file uploads sent by the S3 POST form. This document is used to authorize the form, and to impose conditions on the files that can be uploaded. Policy documents will be described in more detail below. signature A signature value that authorizes the form and proves that only you could have created it. This value is calculated by signing the Base64-encoded policy document with your AWS Secret Key, a process that I will demonstrate below. Content-Type The content type (mime type) that will be applied to the uploaded file, for example image/jpeg for JPEG picture files. If you do not know what type of file a user will upload, you can either prompt the user to provide the appropriate content type, or write browser scripting code that will automatically set this value based on the file’s name.

If you do not set the content type with this field, S3 will use the default value application/octet-stream which may prevent some web browsers from being able to display the file properly. file The input field that allows a user to select a file to upload. This field must be the last one in the form, as any fields below it are ignored by S3.

This overview of the form’s input fields should help you to modify the template POST form to suit your own purposes. At a minimum, you will need to edit the form’s action parameter to point to your own S3 bucket, and set the value of the AWSAccessKeyId field to your AWS Access Key credential.

To complete the form and make it acceptable to the S3 service, you will also need to generate a policy document and signature value. Policy Document

S3 POST forms include a policy document that authorizes the form and imposes limits on the files that can be uploaded. When S3 receives a file via a POST form, it will check the policy document and signature to confirm that the form was created by someone who is allowed to store files in the target S3 account.

A policy document is a collection of properties expressed in JavaScript Object Notation, which simply means that the document’s structure and content must conform to a certain format. Every policy document contains two top-level items: expiration - A Greenwich Mean Time (GMT) timestamp that specifies when the policy document will expire. Once a policy document has expired, the upload form will no longer work.conditions - A set of rules to define the values that may be included in the form’s input fields, and to impose size limits for file uploads.

Here is a policy document corresponding to the POST form template above. This policy has an expiration date of January 1st 2009: {"expiration": "2009-01-01T00:00:00Z", "conditions": [ {"bucket": "s3-bucket"}, ["starts-with", "$key", "uploads/"], {"acl": "private"}, {"success_action_redirect": "http://localhost/"}, ["starts-with", "$Content-Type", ""], ["content-length-range", 0, 1048576] ] }

To create a valid S3 POST form, you must include a policy document whose conditions section contains a rule for almost every input field in the form. At a minimum, this document must include rules for the bucket and key values of the uploaded file object. In addition to these two rules, you will need to include a rule for every other input field in the form except for AWSAccessKeyId, signature, policy and file.

Because our template POST form includes the input fields acl, success_action_redirect, and Content-Type, our policy document includes rules corresponding to these fields. Our policy document also includes an extra content-length-range rule that limits the size of files that can be uploaded.

There are three kinds of rules you can apply in your policy document: Equality rule, which checks that an input field’s value is set to a given string. An equality rule is expressed as a name and value pair within brace characters, for example: {"acl": "private"}Starts-With rule, which checks that an input field’s value begins with a given string. If the given string is empty, S3 will check only that the field is present in the form and will not care what value it contains. A starts-with rule is expressed as a three-element array that contains the term starts-with, followed by the name of the input field preceded by a $ symbol, then the prefix string value for comparison.
In the policy document above, we use starts-with rules for the key and Content-Type fields because we do not know in advance the name of the file a user will upload, or what type of file it will be. The rule for the Content-Type field uses an empty string for comparison, which means it will permit any content type value. The rule for the object’s key name uses the prefix string “upload/”, which means that the key value must always start with the upload/ subdirectory path.Content length rule, which checks that the size of an uploaded file is between a given minimum and maximum value. If this rule is not included in a policy document, users will be able to upload files of any size up to the 5GB limit imposed by S3.
A content length rule is expressed as a three-element array that contains the term content-length-range, followed by integer values to set the minimum and maximum file size. The policy document above includes a content length rule that will prevent the form from uploading files larger than 1MB in size (1,048,576 bytes).

It is important to make sure that your policy document corresponds exactly to your S3 POST form. If there are any discrepancies between the input field values in your form and the rule values in your policy document, or if your form contains input fields that do not have corresponding rules in your policy, the S3 service will reject the form and return an incomprehensible XML error message to your users. Sign Your S3 POST Form

To complete your S3 POST form, you must sign it to prove to S3 that you actually created the form. If you do not sign the form properly, or if someone else tries to modify your form after it has been signed, the service will be unable to authorize it and will reject the upload.

To sign your form you need to perform two steps: Base64-encode the policy document, and include it in the form’s policy input field.Calculate a signature value (SHA-1 HMAC) from the encoded policy document using your AWS Secret Key credential as a password. Include this value in the form’s signature input field after Base64-encoding it.

Almost all programming languages include libraries for performing these two steps. Here are some example code fragments to do the job with different languages, assuming you have already defined the variables policy_document and aws_secret_key. Ruby require 'base64' require 'openssl' require 'digest/sha1' policy = Base64.encode64(policy_document).gsub("\n","") signature = Base64.encode64( OpenSSL::HMAC.digest( OpenSSL::Digest::Digest.new('sha1'), aws_secret_key, policy) ).gsub("\n","") Java import sun.misc.BASE64Encoder; import javax.crypto.Mac; import javax.crypto.spec.SecretKeySpec; String policy = (new BASE64Encoder()).encode( policy_document.getBytes("UTF-8")).replaceAll("\n",""); Mac hmac = Mac.getInstance("HmacSHA1"); hmac.init(new SecretKeySpec( aws_secret_key.getBytes("UTF-8"), "HmacSHA1")); String signature = (new BASE64Encoder()).encode( hmac.doFinal(policy.getBytes("UTF-8"))) .replaceAll("\n", ""); Python import base64 import hmac, sha policy = base64.b64encode(policy_document) signature = base64.b64encode( hmac.new(aws_secret_key, policy, sha).digest())

Once you have calculated the values for the policy and signature input fields and included these values in your form, the form should be complete. Save the web page and form document as an .html file, open it in your favorite web browser, and test it by uploading some files to your S3 bucket. Conclusion

The form web page and policy document templates in this article should give you a starting point for creating your own upload forms. With some minor modifications to the template documents and a little coding, you will be able to create authorized forms that make it easy for your web site visitors to upload files to your S3 account.

The S3 service’s POST support is a powerful feature with many potential uses. You could create a single upload form to allow your friends and colleagues to send you files that are too large for email, or you could modify your web applications to generate forms on-demand so your users can store their data in S3 rather than on your own server. Just remember that you will be liable for any S3 data transfer and storage fees incurred by the people who use your forms.

0596515812
No Nonsense XML Web Development With PHPThomas Myer  
More Details

A practical and concise book that teaches XML from the ground up. This tutorial style presents various XML methodologies and techniques in an easy to understand way, building a basis for further exploration.

XML is essentially an enabling technology, dry and boring on its own. As a result, most books on the market are dry, and academic in nature teaching theory rather than practice. This book actually teaches practical, real-world applications of XML, using the very latest version of PHP (PHP 5) as the base language .

No Nonsense XML Web Development with PHP explains how XML can be put to use in real-world projects. The book also covers buzz topics such as RSS and Web Services.

From the Publisher

If ever there were a candidate for "Most Hyped Technology' it would be Extensible Markup Language (XML). 'No Nonsense XML Web Development With PHP' cuts through the hype and shows you how to get the most of this powerful, multifaceted technology. No Nonsense XML Web Development With PHP dispenses with the theoretical possibilities of XML and presents real, practical uses of XML that you can apply to your existing Websites today. The book will teach you, step-by-step, exactly how to:Create a full-blown Content Management System (CMS) based on XML.Create a dynamic site map using XSLT.Generate XML feeds (including RSS) for your Website.Facilitate transfer of important information between disparate systems using XML-RPCUse the Document Object Model (DOM) to manipulate documents.Rapidly process XML using PHP 5.0's built-in SimpleXML functionality.Unlike other dry, boring, theoretical writing on XML, this book doesn't cover the entire spectrum of XML technologies; it covers practical uses of XML that are useful to Web developers right now.

This book is designed to help you to get your feet (and perhaps your ankles, shins, and knees) wet with the topic of XML. You can instantly test out and apply the code examples provided in the book (and available for free download) to get a hands-on feel for the technology, and you'll gain the confidence to go out and build more.

The XML-powered content management system (CMS) that you'll build will be a complete, ready-to-use application. It draws on the author's experience of building XML-powered

Who Should Read This Book?

No-Nonsense XML Web Development With PHP is ideal for Web developers who want to discover what can be done using XML, whether they be experienced with PHP or relative newcomers. All that's needed to get started is a good understanding of HTML and some experience with PHP.

The book is written in the usual SitePoint style: it's clear and fun to read, with plenty of blocks of example code that you can apply immediately to your own Websites.

There's no need to re-type any of the code from the book. As always, all customers will receive instant download access to all the code and files used in the book so you can apply them immediately to your own projects.

What Slashdot.org Says...

"Kudos to the author for writing chapters on XML without sounding boring, redundant or too academic. I would highly recommend this book to anyone interested in developing PHP-driven Web sites that provide or consume Web services, work with XML data or generate XML for others to use."

097524020X
Introduction to MATLAB for Engineers and Scientists: Solutions for Numerical Computation and ModelingSandeep Nagar  
More Details

Familiarize yourself with MATLAB using this concise, practical tutorial that is focused on writing code to learn concepts. Starting from the basics, this book covers array-based computing, plotting and working with files, numerical computation formalism, and the primary concepts of approximations. Introduction to MATLAB is useful for industry engineers, researchers, and students who are looking for open-source solutions for numerical computation.
In this book you will learn by doing, avoiding technical jargon, which makes the concepts easy to learn. First you’ll see how to run basic calculations, absorbing technical complexities incrementally as you progress toward advanced topics. Throughout, the language is kept simple to ensure that readers at all levels can grasp the concepts. 

What You'll LearnApply sample code to your engineering or science problems
Work with MATLAB arrays, functions, and loops 
Use MATLAB’s plotting functions for data visualization
Solve numerical computing and computational engineering problems with a MATLAB case study

Who This Book Is For
Engineers, scientists, researchers, and students who are new to MATLAB. Some prior programming experience would be helpful but not required.

1484231880
Regex Quick Syntax Reference: Understanding and Using Regular ExpressionsZsolt Nagy  
More Details

This quick guide to regular expressions is a condensed code and syntax reference for an important programming technique. It demonstrates regex syntax in a well-organized format that can be used as a handy reference, showing you how to execute regexes in many languages, including JavaScript, Python, Java, and C#.
The Regex Quick Syntax Reference features short, focused code examples that show you how to use regular expressions to validate user input, split strings, parse input, and match patterns. Utilizing regular expressions to deal with search/replace and filtering data for backend coding is also covered. 
You won’t find any bloated samples, drawn out history lessons, or witty stories in this book. What you will find is a language reference that is concise and highly accessible. The book is packed with useful information and is a must-have for any programmer.
What You Will LearnFormulate an expression
Work with arbitrary char classes, disjunctions, and operator precedence
Execute regular expressions and visualize using finite state machines
Deal with modifiers, including greedy and lazy loops 
Handle substring extraction from regex using Perl 6 capture groups, capture substrings, and reuse substrings 
Who This Book Is For
If you have dealt with at least one programming language, chances are you know enough to understand regular expressions, and the examples in this book will help you develop proficiency.

1484238753
Packet Analysis with WiresharkAnish Nath  
More Details

Leverage the power of Wireshark to troubleshoot your networking issues by using effective packet analysis techniques and performing improved protocol analysisAbout This Book Gain hands-on experience of troubleshooting errors in TCP/IP and SSL protocols through practical use casesIdentify and overcome security flaws in your network to get a deeper insight into security analysisThis is a fast-paced book that focuses on quick and effective packet captures through practical examples and exercisesWho This Book Is For

If you are a network or system administrator who wants to effectively capture packets, a security consultant who wants to audit packet flows, or a white hat hacker who wants to view sensitive information and remediate it, this book is for you. This book requires decoding skills and a basic understanding of networking. What You Will Learn Utilize Wireshark's advanced features to analyze packet capturesLocate the vulnerabilities in an application serverGet to know more about protocols such as DHCPv6, DHCP, DNS, SNMP, and HTTP with WiresharkCapture network packets with tcpdump and snoop with examplesFind out about security aspects such as OS-level ARP scanningSet up 802.11 WLAN captures and discover more about the WAN protocolEnhance your troubleshooting skills by understanding practical TCP/IP handshake and state diagramsIn Detail

Wireshark provides a very useful way to decode an RFC and examine it. The packet captures displayed in Wireshark give you an insight into the security and flaws of different protocols, which will help you perform the security research and protocol debugging.

The book starts by introducing you to various packet analyzers and helping you find out which one best suits your needs. You will learn how to use the command line and the Wireshark GUI to capture packets by employing filters. Moving on, you will acquire knowledge about TCP/IP communication and its use cases. You will then get an understanding of the SSL/TLS flow with Wireshark and tackle the associated problems with it. Next, you will perform analysis on application-related protocols. We follow this with some best practices to analyze wireless traffic. By the end of the book, you will have developed the skills needed for you to identify packets for malicious attacks, intrusions, and other malware attacks. Style and approach

This is an easy-to-follow guide packed with illustrations and equipped with lab exercises to help you reproduce scenarios using a sample program and command lines.

1785887815
The 46 Rules of Genius: An Innovator's Guide to CreativityMarty Neumeier  
More Details

Not since Strunk and White’s ELEMENTS OF STYLE has a book compressed so many insights into so few pages. With his trademark simplicity and wit, Marty Neumeier has written and illustrated a concise guide that can be read quickly over a lunch break or savored slowly over a lifetime.

Part 1, “How can I innovate?” offers insightful guidance such as “Feel before you think,” “See what’s not there,” and “Ask a bigger question.” Rule #1 gives the paradoxical advice: “Break the rules.”

Part 2, “How should I work?” offers down-to-earth tips on craft: “Use a linear process for static elements,” and “Express related elements in a similar manner.” The reader is also reminded: “Don’t be boring!”

In Part 3, “How can I learn?” contains practical advice including “Do your own projects,” “Invest in your originality,” and “Develop an authentic style.”

Finally, Part 4, “How can I matter?” deals with the deeper questions of a career in creativity, such as “Overcommit to a mission,” “Build support methodically,” and “Become who you are.”

THE 46 RULES OF GENIUS is a reassuring lighthouse against the swirling tides of innovation. Geniuses from every discipline will want to keep it in sight.

(Educators: Those who recommend this book to students may also be interested its deeply researched precursor, METASKILLS, from which the rules were drawn.)

From the back cover:

There’s no such thing as an accidental genius. Anyone who’s reached that exalted state has arrived there by design. But simply wanting to get there is not enough. A would-be genius also needs a theoretical framework, a basic compass, a set of principles to guide the way forward.

Marty Neumeier, acclaimed author of The Brand Gap and Metaskills, has compressed the wisdom of the ages into the first “quick start guide” for genius—46 glittering gems that will light your path to creative brilliance. This is THE essential handbook for designers, entrepreneurs, marketers, educators, artists, scientists, innovators, and future leaders in every field.

0133900061
Photoshop 7.0 für Windows und Macintosh.Heico Neumeyer  
More Details

Heico Neumeyers Name entwickelt sich zunehmend ebenso zur Marke für professionelle Photoshop-Fachliteratur, wie etwa der Name Kofler für Linux steht. Die Jubiläumsausgabe von Photoshop 7.0 Kompendium ist ein Rundum-zufrieden-Preisleistungsverhältnis, mit dem der Leser nicht nur das Standardprogramm Photoshop sowie Image Ready zu beherrschen lernt, sondern auch die Grundlagen der digitalen Bildbearbeitung in optimaler Aufbereitung erlesen kann.

Wie in jedem guten Kompendium beginnt Neumeyer auch hier ganz am Anfang: Installation, Konfiguration, erste Schritte mit der Oberfläche. Und dann geht es auch schon los mit der ersten Bild-Datei — Neumeyer hangelt sich an den Hauptfunktionen des Programms wie Ausschnitt, Größe und Auflösung entlang und zeigt was möglich ist, was man vermeiden sollte und wie man optimal zum Ziel kommt. Natürlich gehört auch die Gestaltung fürs Internet dazu und, zentral, die Bildkorrektur mit den Werkzeugen vom Stempel bis zum Reparatur-Pinsel. Nach und nach hakt er alles, von Bildteilen erfassen und montieren bis Filter ab. Dazu dann noch ein Fachwort-Lexikon und ein Index. Die Beispieldateien liegen auf der CD-ROM zum Buch.

Gut durchdacht, dicht mit Tipps und Tricks wie Tastatur-Shortcuts durchzogen und sehr beispielhaft, ganz in Farbe bebildert, zeigt Neumeyer anhand von Photoshop 7.0, wie ein Kompendium zum Durcharbeiten und Nachschlagen aussehen kann, wenn Thema und Buch harmonieren. Die Jubiläumsausgabe von Photoshop 7.0 Kompendium ist zweifellos ebenso Standard wie Photoshop selbst. —Wolfgang Treß

3827263514
Nise's Control Systems EngineeringNorman S. Nise  
More Details

Nise's Control Systems Engineering takes a practical approach, presenting clear and complete explanations. Real world examples demonstrate the analysis and design process, while helpful skill assessment exercises, numerous in-chapter examples, review questions and problems reinforce key concepts. A new progressive problem, a solar energy parabolic trough collector, is featured at the end of each chapter. Hardware Interface Laboratory experiments have been added to certain chapters. These experiments use National Instrument's myDAQ® to interface your computer to actual hardware to test control system principles in the real-world.

1119382971
Raspberry Pi BlueprintsDan Nixon  
More Details

Design and build your own hardware projects that interact with the real world using the Raspberry PiAbout This Book Interact with a wide range of additional sensors and devices via Raspberry PiCreate exciting, low-cost products ranging from radios to home security and weather systemsFull of simple, easy-to-understand instructions to create projects that even have professional-quality enclosuresWho This Book Is For

If you have already undertaken some simple projects with the Raspberry Pi and are looking to enter the exciting work of hardware interaction, then this book is ideal for you. What You Will Learn Install and configure an operating system on your Raspberry PiDesign electronics circuits using a range of standard componentsInteract with electronic circuits and hardware using software librariesWrite efficient Python applications to control hardware and process dataBuild professional-quality enclosures using a range of construction methodsImplement best practices to be able to power your projects while on the goConfigure Linux to run your applications at specific timesMake your applications interact with online data and communication servicesIn Detail

The Raspberry Pi is one of the cheapest and most popular single-board computers, as such it has become a platform for users to create their own interesting hardware and software projects. It's capable of doing everything you'd expect a desktop computer to do, from browsing the Internet and playing high-definition videos, to making spreadsheets, word processing, and playing games.

Filled with 10 interesting hardware projects, this book starts off by helping you get your Raspberry Pi set up with the popular Raspbian operating system, writing Python scripts, and interacting with some external hardware. As you progress through the next set of projects, you are introduced to additional pieces of software and will write scripts that bridge the gap between them and various sensors and hardware.

By the end of the book, you will be writing full Python applications that will both interface with a wide variety of hardware and be exposed to the Internet.

1784392901
Python for Microcontrollers: Getting Started with MicroPythonDonald Norris  
More Details

Program Your Own MicroPython projects with ease―no prior programming experience necessary! 

This DIY guide provides a practical introduction to microcontroller programming with MicroPython. Written by an experienced electronics hobbyist, Python for Microcontrollers: Getting Started with MicroPython features eight start-to-finish projects that clearly demonstrate each technique. You will learn how to use sensors, store data, control motors and other devices, and work with expansion boards. From there, you’ll discover how to design, build, and program all kinds of entertaining and practical projects of your own.

• Learn MicroPython and object-oriented programming basics
• Explore the powerful features of the Pyboard, ESP8266, and WiPy 
• Interface with a PC and load files, programs, and modules 
• Work with the LEDs, timers, and converters
• Control external devices using serial interfaces and PWM
• Build and program a let ball detector using the 3-axis accelerometer
• Install and program LCD and touchsensor expansion boards
• Record and play sounds using the AMP audio board

1259644537
Beginning Artificial Intelligence with the Raspberry PiDonald J. Norris  
More Details

Gain a gentle introduction to the world of Artificial Intelligence (AI) using the Raspberry Pi as the computing platform. Most of the major AI topics will be explored, including expert systems, machine learning both shallow and deep, fuzzy logic control, and more!
AI in action will be demonstrated using the Python language on the Raspberry Pi.  The Prolog language will also be introduced and used to demonstrate fundamental AI concepts.  In addition, the Wolfram language will be used as part of the deep machine learning demonstrations.
A series of projects will walk you through how to implement AI concepts with the Raspberry Pi. Minimal expense is needed for the projects as only a few sensors and actuators will be required. Beginners and hobbyists can jump right in to creating AI projects with the Raspberry PI using this book.
What You'll LearnWhat AI is and―as importantly―what it is not
Inference and expert systems
Machine learning both shallow and deep
Fuzzy logic and how to apply to an actual control system
When AI might be appropriate to include in a system
Constraints and limitations of the Raspberry Pi AI implementationWho This Book Is For
Hobbyists, makers, engineers involved in designing autonomous systems and wanting to gain an education in fundamental AI concepts, and non-technical readers who want to understand what AI is and how it might affect their lives.

1484227425