Raspberry Pi IoT In C Using Linux Drivers
Fairhead, Harry
New - Soft cover
Condition: New
Ships from Germany to U.S.A.
Quantity: Over 20 available
Add to basketCondition: New
Quantity: Over 20 available
Add to basketThe Raspberry Pi makes an ideal match for the Internet of Things. To put it to good use in IoT you need two areas of expertise, electronics and programming and this presents a barrier to getting started. However, there is an overlooked route that can provide a shortcut. Pi OS, the Raspberry Pi’s operating system is Linux based and Linux drivers are available for many off-the-shelf IoT devices. These provide a very easy-to-use, high-level way of working. The problem that this book solves is that there is very little documentation to help you get started. In it Harry Fairhead explains the principles so that you can tackle new devices and he also guides you through of using external hardware via standard Linux drivers. Throughout this book you will find a practical approach to understanding electronic circuits and datasheets and translating this to code, specifically using the C programming language. The main reason for choosing C is speed, a crucial factor when you are writing programs to communicate with the outside world and if you are familiar with another programming language, C shouldn't be hard to pick up.
After a quick tour of the Raspberry Pi ecosystem, Visual Studio Code (VS Code) and how it can be used to develop remotely, is introduced. The first IoT program anyone writes is “blinky” to flash an LED and this book is no exception, but it might not be quite what you expect. Instead of using a GPIO line it uses the Linux LED driver – no hardware and no fuss. The GPIO isn’t left out, however, as the next three chapters focus on its use via the new GPIO character driver, which replaces the old and very common sysfs GPIO driver. This is the way to do modern GPIO. A key component in any look at Linux and its relationship to hardware is the relatively new Device Tree. While most accounts of this resource are aimed at device driver writers, this one is aimed at device driver users and to this end we look at the DHT22 temperature and humidity driver. After a brief detour into some basic electronics, we look at Pulse Width Modulation supported via a driver rather than needing to be implemented using the GPIO. From here we tackle the two standard buses, I2C and SPI, first going through the basics and then looking at the two attempts to impose a higher organization, the hardware monitoring system, Hwmon, and Industrial I/O, IIO. The third standard bus, although generally not supported in hardware is the 1-Wire bus. This is covered in detail and even includes an introduction to using Netlink, which uses the sockets API to send messages to and from the kernel to access the driver. The final chapter takes things to the next level and considers creating your own custom overlays by writing fragments to the device tree.
Harry Fairhead has worked with microprocessors, and electronics in general, for many years and is an enthusiastic proponent of the IoT. He is the author of Raspberry Pi IoT in C, which has recently been republished in its second edition, updated for Raspberry Pi 4 and co-author of Raspberry Pi IoT in Python Using GPIO Zero. His other recent books include Micro:bit IoT in C, Fundamental C: Getting Closer To The Machine and Applying C For The IoT With Linux.
"About this title" may belong to another edition of this title.
Instructions for revocation/
Standard Business Terms and customer information/ data protection declaration
Revocation right for consumers
(A ?consumer? is any natural person who concludes a legal transaction which, to an overwhelming extent, cannot be attributed to either his commercial or independent professional activities.)
Instructions for revocation
Revocation right
You have the right to revoke this contract within one month without specifying any reasons.
The revocation period is one month...
II. Kundeninformationen
Moluna GmbH
Engberdingdamm 27
48268 Greven
Deutschland
Telefon: 02571/5698933
E-Mail: abe@moluna.de
Wir sind nicht bereit und nicht verpflichtet, an Streitbeilegungsverfahren vor Verbraucherschlichtungsstellen teilzunehmen.
Die technischen Schritte zum Vertragsschluss, der Vertragsschluss selbst und die Korrekturmöglichkeiten erfolgen nach Maßgabe der Regelungen "Zustandekommen des Vertrages" unserer Allgemeinen Geschäftsbedingungen (Teil I.).
3.1. Vertragssprache ist deutsch .
3.2. Der vollständige Vertragstext wird von uns nicht gespeichert. Vor Absenden der Bestellung können die Vertragsdaten über die Druckfunktion des Browsers ausgedruckt oder elektronisch gesichert werden. Nach Zugang der Bestellung bei uns werden die Bestelldaten, die gesetzlich vorgeschriebenen Informationen bei Fernabsatzverträgen und die Allgemeinen Geschäftsbedingungen nochmals per E-Mail an Sie übersandt.
Die wesentlichen Merkmale der Ware und/oder Dienstleistung finden sich im jeweiligen Angebot.
5.1. Die in den jeweiligen Angeboten angeführten Preise sowie die Versandkosten stellen Gesamtpreise dar. Sie beinhalten alle Preisbestandteile einschließlich aller anfallenden Steuern.
5.2. Die anfallenden Versandkosten sind nicht im Kaufpreis enthalten. Sie sind über eine entsprechend bezeichnete Schaltfläche auf unserer Internetpräsenz oder im jeweiligen Angebot aufrufbar, werden im Laufe des Bestellvorganges gesondert ausgewiesen und sind von Ihnen zusätzlich zu tragen, soweit nicht die versandkostenfreie Lieferung zugesagt ist.
5.3. Die Ihnen zur Verfügung stehenden Zahlungsarten sind unter einer entsprechend bezeichneten Schaltfläche auf unserer Internetpräsenz oder im jeweiligen Angebot ausgewiesen.
5.4. Soweit bei den einzelnen Zahlungsarten nicht anders angegeben, sind die Zahlungsansprüche aus dem geschlossenen Vertrag sofort zur Zahlung fällig.
6.1. Die Lieferbedingungen, der Liefertermin sowie gegebenenfalls bestehende Lieferbeschränkungen finden sich unter einer entsprechend bezeichneten Schaltfläche auf unserer Internetpräsenz oder im jeweiligen Angebot.
Soweit im jeweiligen Angebot oder unter der entsprechend bezeichneten Schaltfläche keine andere Frist angegeben ist, erfolgt die Lieferung der Ware innerhalb von 3-5 Tagen nach Vertragsschluss (bei vereinbarter Vorauszahlung jedoch erst nach dem Zeitpunkt Ihrer Zahlungsanweisung).
6.2. Soweit Sie Verbraucher sind ist gesetzlich geregelt, dass die Gefahr des zufälligen Untergangs und der zufälligen Verschlechterung der verkauften Sache während der Versendung erst mit der Übergabe der Ware an Sie übergeht, unabhängig davon, ob die Versendung versichert oder unversichert erfolgt. Dies gilt nicht, wenn Sie eigenständig ein nicht vom Unternehmer benanntes Transportunternehmen oder eine sonst zur Ausführung der Versendung bestimmte Person beauftragt haben.
Sind Sie Unternehmer, erfolgt die Lieferung und Versendung auf Ihre Gefahr.
Die Mängelhaftung richtet sich nach der Regelung "Gewährleistung" in unseren Allgemeinen Geschäftsbedingungen (Teil I).
letzte Aktualisierung: 23.10.2019
| Order quantity | 26 to 60 business days | 26 to 60 business days |
|---|---|---|
| First item | US$ 57.76 | US$ 57.76 |
Delivery times are set by sellers and vary by carrier and location. Orders passing through Customs may face delays and buyers are responsible for any associated duties or fees. Sellers may contact you regarding additional charges to cover any increased costs to ship your items.