售价: ¥514.70
免运费且可货到付款详情
前翻 后翻
正在播放... 已暂停   您正在聆听的 Audible 音频版本的样品。
了解更多信息
查看全部 3 张图片

Exploring BeagleBone: Tools and Techniques for Building with Embedded Linux (英语) 平装 – 2014年12月31日

平均4.7 星
5 星
98
4 星
12
3 星
1
2 星
2
1 星
2
平均4.7 星 115条亚马逊美国的评论 us-flag |
| 天天低价·正品质优
|
分享
| 自营
广告

显示所有 格式和版本 隐藏其他格式和版本
亚马逊价格
全新品最低价 非全新品最低价
平装
"请重试"
¥514.70
¥281.00
全新品3 售价从 ¥281.00
退换承诺: 此商品支持30天免费退换 详情

中文图书全场,满99元赠畅销书:
活动期间内,领取优惠券,购买全场自营中文图书(不含赠品专区图书、进口原版书、进口繁体中文书、电子书、第三方卖家商品、Z秒杀、Z实惠、海外购商品),单笔订单中参加本促销活动的商品满99元,赠畅销书。查看赠品专区。

click to open popover

经常一起购买的商品

  • Exploring BeagleBone: Tools and Techniques for Building with Embedded Linux
  • +
  • BeagleBone 机器人开发指南
  • +
  • Getting Started with Beaglebone: Linux-Powered Electronic Projects with Python and JavaScript
总价: ¥645.50
共同购买所选商品

无需Kindle设备,下载免费Kindle阅读软件,即可在您的手机、电脑及平板电脑上畅享阅读。

  • iPhone/iPad/Mac
  • Android手机或平板电脑

请输入您的手机号码,获取Kindle阅读软件的下载链接。



基本信息

  • 出版社: Wiley; 1 (2014年12月31日)
  • 平装: 600页
  • 语种: 英语
  • ISBN: 1118935128
  • 条形码: 9781118935125
  • 商品尺寸: 18.3 x 3 x 22.9 cm
  • 商品重量: 975 g
  • 品牌: Wiley
  • ASIN: 1118935128
  • 用户评分: 分享我的评价
  • 亚马逊热销商品排名: 图书商品里排第588,946名 (查看图书商品销售排行榜)
  • 您想告诉我们您发现了更低的价格?
    如果您是该商品的卖家,是否希望通过卖家支持建议更新

商品描述

作者简介

Dr. Derek Molloy is a Senior Lecturer in the School of Electronic Engineering at Dublin City University, Ireland. Derek produces a popular YouTube series on the BeagleBone platform and a wide variety of embedded Linux topics. His videos and personal blog have introduced millions of people to the BeagleBone, embedded Linux, and digital electronics.

目录

Introduction xxv

Part I BeagleBone Basics 1

Chapter 1 The BeagleBone Hardware 3

Introduction to the Platform 3

Who Should Use the BeagleBone 5

When to Use the BeagleBone 6

When You Should Not Use the BeagleBone 6

BeagleBone Documentation 7

The BeagleBone Hardware 8

BeagleBone Versions 9

The BeagleBone Black Hardware 11

BeagleBone Accessories 14

Highly Recommended Accessories 14

Micro?]SD Card (for Flashing the BBB) 14

External 5V Power Supply (for Flashing and Peripherals) 15

Ethernet Cable (for Network Connection) 15

HDMI Cable (for Connection to Monitors/Televisions) 15

USB to Serial UART TTL 3.3 V (for Finding Problems) 16

Optional Accessories 17

USB Hub (to Connect Several USB Devices to a USB Host) 17

Micro-HDMI to VGA adapters (for VGA Video and Sound) 17

Wi-Fi Adapters (for Wireless Networking) 18

USB Webcam (for Capturing Images and Streaming Video) 18

USB Keyboard and Mouse (for General-Purpose Computing) 18

Capes 19

How to Destroy Your BeagleBone! 20

Summary 22

Support 22

Chapter 2 The BeagleBone Black Software 23

Linux on the BeagleBone 24

Linux Distributions 24

Communicating with the BBB 25

Installing Drivers 26

Network Connections 26

Internet?]over?]USB 26

Regular Ethernet 29

Ethernet Crossover Cable 30

Communicating with the BBB 31

Serial Connection over USB 31

Serial Connection with the USB?]to?]TTL 3.3 V Cable 33

Connecting through Secure Shell (SSH) 33

Secure Shell Connections using PuTTY 34

Chrome Apps: Secure Shell Client 34

Transferring Files Using PuTTY/psftp over SSH 35

Controlling the BeagleBone 37

Basic Linux Commands 37

First Steps 37

Basic File System Commands 38

Environment Variables 40

Basic File Editing 41

What Time Is It? 42

Package Management 44

Interacting with the BBB On?]board LEDs 45

Shutdown 47

Node.js, Cloud9, and BoneScript 48

Introduction to Node.js 48

Introduction to the Cloud9 IDE 50

Introduction to BoneScript 51

Summary 52

Further Reading 53

Chapter 3 Exploring Embedded Linux Systems 55

Embedded Linux Basics 55

What Embedded Linux Offers 57

Is Linux Open Source and Free? 57

Booting the BeagleBone 58

The BeagleBone Bootloaders 58

Kernel Space and User Space 62

System V init (SysVinit) 63

Managing Linux Systems 67

The Super User 67

System Administration 68

The Linux File System 68

Linking to Files and Directories 69

Users and Groups 71

File System Permissions 74

Exploring the File System 75

Commands for File Systems 75

find and whereis 81

more or less 82

Linux Commands 82

Standard Input and Output Redirection (>, >>, and <) 82

Pipes (| and tee) 83

Filter Commands (from sort to xargs) 84

echo and cat 86

diff 87

tar 88

md5sum 88

Linux Processes 89

Controlling Linux Processes 89

Foreground and Background Processes 90

The BusyBox Multi?]call Binary 92

Other Linux Topics 93

Git 93

Getting Started with Git 94

Cloning a Repository (git clone) 95

Getting the Status (git status) 96

Adding to the Staging Area (git add) 96

Committing to the Local Repository (git commit) 97

Pushing to the Remote Repository (git push) 97

Advanced Git 98

Creating a Branch (git branch) 98

Merging the Branch (git merge) 100

Deleting a Branch (git branch ?]d) 100

Conclusions on Git 101

Desktop Virtualization 102

Code for This Book 103

Summary 104

Further Reading 104

Chapter 4 Interfacing Electronics 105

Recommended Equipment 105

Digital Multimeter 106

Oscilloscopes 106

Basic Circuit Principles 108

Voltage, Current, Resistance, and Ohm’s Law 109

Voltage Division 110

Current Division 112

Implementing Circuits on a Breadboard 113

Digital Multimeters (DMMs) and Breadboards 114

Example Circuit: Voltage Regulation 115

Discrete Components 117

Diodes 117

Light?]Emitting Diodes (LEDs) 118

Smoothing and Decoupling Capacitors 121

Transistors 123

Transistors as Switches 124

Field Effect Transistors (FETs) as Switches 127

Optocouplers/Opto?]isolators 128

Switches and Buttons 130

Hysteresis 132

Logic Gates 133

Floating Inputs 137

Pull?]Up and Pull?]Down Resistors 138

Open?]Collector and Open?]Drain Outputs 139

Interconnecting Gates 140

Analog?]to?]Digital Conversion 141

Sampling Rate 142

Quantization 142

Operational Amplifiers 143

Ideal Operational Amplifiers 143

Negative Feedback and Voltage Follower 146

Positive Feedback 146

Concluding Advice 147

Summary 147

Further Reading 148

Chapter 5 Practical BeagleBone Programming 149

Introduction 149

Performance of Different Languages 150

Setting the BBB CPU Frequency 153

Scripting Languages 153

Scripting Language Options 154

Bash 155

Perl 157

Python 158

JavaScript and Java 161

JavaScript and Node.js on the BBB 161

Java on the BBB 164

C and C++ on the BeagleBone 167

C and C++ Language Overview 169

Compiling and Linking 170

Writing the Shortest C/C++ Program 172

Variables and Operators in C/C++ 174

Pointers in C/C++ 177

C?]Style Strings 180

LED Flashing Application in C 181

The C of C++ 183

First Example and Strings in C++ 183

Passing by Value, Pointer, and Reference 185

Flashing the LEDs Using C++ (non?]OO) 186

Writing Your Own Multi?]Call Binary 186

C++ with Classes 187

Overview of Object?]Oriented Programming 188

Classes and Objects 188

Encapsulation 189

Inheritance 190

Object?]Oriented LED Flashing Code 191

/Proc—Process Information File System 195

GLIBC and Syscall 195

Summary 197

Further Reading 197

Part II Interfacing, Controlling, and Communicating 199

Chapter 6 Interfacing to the BeagleBone Input/Outputs 201

General?]Purpose Input/Outputs 201

Introduction to GPIO Interfacing 202

GPIO Digital Output 204

GPIO Digital Input 207

GPIO Confi guration 208

Internal Pull?]up and Pull?]down Resistors 208

GPIO Pin Configuration Settings 209

C++ Control of GPIOs 214

The Linux Device Tree 219

The Flattened Device Tree (FDT) 219

Device Tree Overlays (DTOs) 221

Writing an Overlay 221

Compiling and Deploying an Overlay 222

The BBB Cape Manager 222

Loading a Device Tree Overlay 223

Removing an Overlay 225

Loading an Overlay on Boot 226

Analog Inputs and Outputs 226

Analog Inputs 226

Enabling the Analog Inputs 227

Input Application—A Simple Light Meter 228

Analog Outputs (PWM) 231

Output Application—Controlling a Servo Motor 233

Advanced GPIO Topics 235

More C++ Programming 235

Callback Functions 235

POSIX Threads 236

Linux poll (sys/poll.h) 238

Enhanced GPIO Class 239

GPIO?]KEYS 243

Using GPIOs without Using sudo 247

Summary 248

Further Reading 249

Chapter 7 Cross?]Compilation and the Eclipse IDE 251

Setting Up a Cross?]Compilation Toolchain 251

A Toolchain for Debian 252

Testing the Toolchain 254

Cross?]Compilation with Third?]Party Libraries (Multiarch) 255

Installing a Change Root 257

Installing an armhf Change Root 257

Emulating the armhf Architecture 258

Cross?]Compilation Using Eclipse 260

Installing Eclipse on Desktop Linux 260

Configuring Eclipse for Cross?]Compilation 261

Remote System Explorer 263

Integrating GitHub into Eclipse 265

Remote Debugging 266

Automatic Documentation (Doxygen) 269

Adding Doxygen Support in Eclipse 270

Building Debian for the BBB 271

Summary 273

Further Reading 274

Chapter 8 Interfacing to the BeagleBone Buses 275

Introduction to Bus Communication 276

I2C 276

I2C Hardware 277

The ADXL345 Accelerometer 279

Using Linux I2C?]Tools 280

i2cdetect 280

i2cdump 281

i2cget 283

i2cset 285

I2C Communication in C 286

Wrapping I2C Devices with C++ Classes 288

SPI 291

SPI Hardware 291

SPI on the BBB 293

Enabling the First SPI Bus (SPI0) 294

Testing the SPI Bus 295

A First SPI Application (74HC595) 296

Wiring the 74HC595 Circuit 296

SPI Communication Using C 297

Bidirectional SPI Communication in C++ 300

The Second SPI Bus (SPI1) 301

The ADXL345 SPI Interface 301

Connecting the ADXL345 to the BBB 302

Wrapping SPI Devices with C++ Classes 303

Three?]Wire SPI Communication 307

Multiple SPI Slave Devices on the BBB 308

UART 309

UARTs on the BBB 310

The Arduino UART Example 312

BeagleBone to Arduino Serial Communication 314

Echoing the Minicom Program 314

UART Echo Example in C 316

UART Command Control of an Arduino 318

Logic?]Level Translation 321

Summary 324

Further Reading 324

Chapter 9 Interacting with the Physical Environment 325

Interfacing to Actuators 326

DC Motors 327

A BBB DC Motor Driver Circuit 329

Controlling a DC Motor Using sysfs 330

Controlling a DC Motor Using C++ 331

Stepper Motors 333

The EasyDriver Stepper Motor Driver 334

A BBB Stepper Motor Driver Circuit 335

Controlling a Stepper Motor Using C++ 336

Relays 338

Interfacing to Analog Sensors 340

Protecting the BBB ADC Inputs 342

Diode Clamping 342

Op?]Amp Clamping 343

Analog Sensor Signal Conditioning 345

Scaling Using Voltage Division 345

Signal Offsetting and Scaling 346

Analog Interfacing Examples 349

Infrared Distance Sensing 349

ADXL335 Conditioning Example 353

Interfacing to Display Modules 354

Seven?]Segment Displays 354

Character LCD Modules 359

Remote Control BeagleBone 363

Managing Services with Systemd 364

BBB Serial Connection to Desktop 366

Starting a Custom Service on Boot 369

Bluetooth 370

Installing an Adapter 370

Loadable Kernel Modules 371

Configuring a Bluetooth Adapter 372

Making the BBB Discoverable 373

Android Application Development with Bluetooth 374

Building Dynamic Linked Libraries 376

Summary 376

Further Reading 377

Part III Advanced BeagleBone Systems 379

Chapter 10 The Internet of Things 381

The Internet of Things (IoT) 382

More Sensors (Things!) 384

A Room Temperature Sensor 384

Texas Instruments SensorTag 385

Connecting to Bluetooth Smart Devices 385

Building a Linux Package 386

Controlling a Bluetooth Smart Device 387

The BeagleBone as a Web Server 388

Installing a Web Server 389

Configuring an Apache Web Server 389

Creating Web Pages and Web Scripts 390

PHP on the BeagleBone 392

Replacing Bone101 with the Custom Web Server 393

A C/C++ Web Client 394

Network Communications Primer 395

A C/C++ Web Client 396

Secure Communication Using OpenSSL 398

The BeagleBone as a Web Sensor 399

ThingSpeak 400

The Linux Cron Scheduler 402

System crontab 402

User crontab 404

Xively 405

Getting Started with Xively's PaaS 406

The Xively C Library 407

Sending E-mail from the BBB 409

If This Then That (IFTTT) 411

The C++ Client/Server 412

Managing Remote IoT Devices 415

BeagleBone Remote Monitoring 416

Linux Watchdog Timer 416

IoT Physical Networking 418

The BeagleBone and Wi-Fi 418

Wireless Network Adapters 419

Static IP Addresses 422

Power over Ethernet (PoE) 423

PoE Power Extraction Modules (PEMs) (Advanced Topic) 424

Summary 425

Further Reading 426

Note 426

Chapter 11 BeagleBone with a Rich User Interface 427

Rich UI BBB Architectures 428

The BBB as a General?]Purpose Computer 428

Connecting a Bluetooth Input Peripheral 430

BBB with a LCD Touch Screen Cape 431

Virtual Network Computing (VNC) 432

VNC Using VNC Viewer 433

VNC with Xming and PuTTY 433

VNC with a Linux Desktop Computer 434

Fat?]Client Applications 435

Rich UI Application Development 435

Introduction to GTK+ on the BBB 436

The “Hello World” GTK+ Application 436

The Event?]Driven Programming Model 437

The GTK+ Temperature Application 438

Introduction to Qt on the BBB 441

Installing Qt Development Tools on the BBB 442

The “Hello World” Qt Application 442

Qt Primer 444

Qt Concepts 444

The QObject Class 445

Signals and Slots 446

Qt Development Tools 447

A Qt Temperature Sensor GUI Application 448

Simple Qt Cross?]Platform Development 453

Remote UI Application Development 455

Fat?]Client Qt GUI Application 455

Multi?]Threaded Server Applications 458

A Multi?]Threaded Temperature Service 461

The Fat?]Client as a Server 463

Parsing Stream Data 465

The BBB Client Application 467

Cross?]Compiling Qt Applications 468

Building the Qt Libraries from Source 470

Remote Deploying a Test Application 470

Summary 471

Further Reading 472

Chapter 12 Images, Video, and Audio 473

Capturing Images and Video 474

USB Webcams 474

Video4Linux2 (V4L2) 476

Image Capture Utility 477

Video4Linux2 Utilities 479

Writing Video4Linux2 Programs 480

Streaming Video 482

Image Processing and Computer Vision 483

Image Processing with OpenCV 484

Computer Vision with OpenCV 486

Boost 489

BeagleBone Audio 489

Core Audio Software Tools 490

Audio Devices for the BBB 491

HDMI and USB Audio Playback Devices 491

Internet Radio Playback 493

Recording Audio 494

Audio Network Streaming 496

Bluetooth A2DP Audio 496

Text?]to?]Speech 499

Online Text-to-Speech 499

Offline Text-to-Speech 500

A Bluetooth Speaking Clock and Temperature Sensor 500

Summary 502

Further Reading 502

Chapter 13 Real?]Time BeagleBone Interfacing 503

Real?]Time BeagleBone 504

Real?]Time Kernels 504

Real?]Time Hardware Solutions 505

The PRU?]ICSS Architecture 506

Important Documents 508

Getting Started with the PRU?]ICSS 508

PRU?]ICSS Enhanced GPIOs 509

PRU?]ICSS Device Tree Overlay 509

The PRU?]ICSS Package 511

A First PRU Program 512

The PRU?]ICSS in Detail 516

Registers 516

Local and Global Memory 517

PRU Assembly Instruction Set 519

Applications of the PRU?]ICSS 521

PRU?]ICSS Performance Tests 522

Utilizing Regular Linux GPIOs 522

A PRU PWM Generator 525

A PRU Sine Wave Generator 527

An Ultrasonic Sensor Application 530

Additional PRU?]ICSS Tools 535

The PRU Debugger 535

The TI PRU C Compiler 536

Summary 538

Further Reading 539

Index 541


看过此商品后顾客买的其它商品?

商品评论

在亚马逊中国上尚未有买家评论。
5 星
4 星
3 星
2 星
1 星

此商品在美国亚马逊上最有用的商品评论 (beta)

美国亚马逊: 平均4.7 星 115 条评论
42/43 人认为此评论有用
平均5.0 星 One of the best all-around learning books I've ever seen on an embedded system. 2014年12月26日
评论者 Tom Betka - 已在美国亚马逊上发表
版本: Kindle电子书 已确认购买
Wow. Where to begin with this book? So much to say...

Here's my first thought: If you are looking for a simplified, superficial and less-than-complete review of all-things Beaglebone, then do not buy this book. For everyone else, this book is a MUST HAVE!

Seriously.

I got the Kindle version of this book almost two weeks ago, and have spent 6-8 hours per day reading it and working on the examples--and I am still only in Chapter 8. There are a LOT of examples, and they are generally very thorough. Dr. Molloy has also created a companion website for this book (who else does that, btw?), and I've regularly been posting any little errata that I find to the page for the appropriate chapter. There have been very minor errata found thus far, which is incredible enough given the complexity of the subject matter. Therefore you really are only limited by your own effort, in terms of what you can learn from this book. I could write an extremely lengthy review about this book and go on and on and on about how it really IS the definitive "How-To" book on all-things Beaglebone because, well, it is. But until you get the thing and start working through it for yourself, you wouldn't appreciate half of what I could say. However I think there are two very important points that I should discuss in this review.

First, this is not just a book about using the Beaglebone platform. Sure, that's what the title says it's about--and that's indeed the theme to the book. However this book is about so much more than *just* using the BBB: It's about how to work efficiently with an embedded Linux device, and how to master said device. Dr. Molloy's teaching style is easily one of the best I've ever seen in the field of Computer Science, and the order and flow of this book is very intuitive. This will readily allow you to build on previous chapters and enhance your learning as you move through the book. In addition he teaches you some basic electronics, so that you can work with the BBB device safely and not damage the hardware (or the underlying Linux operating system). When you consider the breadth of material necessary to work with such a platform as the BBB device, it really is a huge undertaking to cover in just one book--but at no time did I feel lost or overwhelmed by the material.

The other thing that must be said about this book is that is is NOT just a book about programming. Yeah sure, that stuff is covered. But a monkey could write C/C++ code, given enough time and the proper incentive. It wouldn't necessarily be *good* code--but I've met some humans who can't write good C/C++ code either, and they profess to be well above the monkey in the grand scheme of things. Rather this book really is about how to be a Computer Scientist in the area of Embedded Systems. It's about how to take a well-engineered and very capable embedded hardware platform and use it with an unbelievably powerful (and immensely configurable) operating system, and master their combined use. In other words--it's about thinking like an actual Computer Scientist is expected to think in the real world. Also, the book is not about just loading some code examples into your text editor or IDE, running them...and then telling yourself: "Yup, I got it...that's easy. I can do that, no problem!" Certainly you could do that, but you'd only be cheating yourself. There are way too many of those types of programmers out there that do just that, but then don't even know how to log in to a device remotely, set up a proper tool-chain or (God forbid) have to debug a non-working system. But with this book you are exposed to all of those things--all in the first few chapters!

So in conclusion, I'll say one last thing: There are several other books on the market about the Beaglebone/Beaglebone Black devices, and they are generally very good. I believe that I have them all for the most part. However those books are NOT this book. This book is like those books, on steroids...times 10. If those books are the mathematical equivalent of Trigonometry and College Algebra, then this book is Calculus 3 *and* Differential Equations...all rolled into one. Yes, it really is that good. But hey, don't believe me. Instead, just have a look inside the book and judge for yourself. Better yet, buy the Kindle version and go through Part 1. The knowledge you will gain in just those five chapters alone will easily be worth the $23 you spend on the Kindle version of this book.

I have no affiliation with Texas Instruments or with Dr. Molloy. However I have been following his YouTube tutorials for over two years now and am very grateful that he has taken the time to develop this entire learning package (book, website, video demonstrations, etc). Using this book my knowledge of embedded Linux has grown by leaps and bounds, in just the past two weeks!
3/3 人认为此评论有用
平均5.0 星 Not your average Getting Started with X Board book 2016年6月17日
评论者 Raul Ocampo - 已在美国亚马逊上发表
版本: 平装 已确认购买
I came to this book the back way. I was looking for sample beaglebone code in C and I found the author's github with the example programs from the book along with revisions and supplemental programs. I noticed that the author was very responsive answering questions about the code. I know enough that between the files on github and the back and forth with questions I was able to work along each chapter but I wanted to support what the author is doing.

Now that I have the book I can tell it's a rare treat; the illustrations are beautiful the writing is clear. I look forward to the authors future work.
1/1 人认为此评论有用
平均5.0 星 Ambitious and successful - really useful. 2016年8月3日
评论者 Amazon Customer - 已在美国亚马逊上发表
版本: 平装 已确认购买
I've never taken a class from Prof. Molloy; that's my loss. I hope his students appreciate their exposure to a really great teacher.

After several weeks of floundering around, reading some other books on the BBB, and countless meandering wiki threads, I came to notice a pattern - this guy Molloy comes up a lot in my searches and he has a good S/N ratio. Oh, he's got a book? Worth a shot.

Wow. Molloy has the great teacher's gift of anticipating your questions and meeting them with explanations, not recipes. I learned as much in 3 days with this book as in the previous 4 weeks of full-time research. The book has plenty of what I needed: how to work with Linux to access the hardware. It's mercifully free of incantations without explanation. It just skips over the script-kiddy stuff that is all you can find in so many other resources.

This is an incrediblly ambitious, meaty book - it's actually 4 books in one. There are whirlwind courses on digital electronics, Linux for the user and sysadmin, and C/C++ programming, before getting down to the ostensible topic, the Beaglebone. I can see the point of the electronics and Linux material, and the presentation is solid and will be comprehensible to a motivated beginner, but C/C++ programming is such a large topic that no one book could do it justice, let alone a few pages. It's not that this topic is unimportant; on the contrary it is central to doing real projects with embedded computers. However my feeling is that it would have been better to state up-front to the reader that some competency is assumed and go on from there. The treatment in the book is simultaneously inadequate for a novice and superfluous for an experienced programmer. The reality is that if you don't have a reasonable grasp of C/C++, you are not going to get very far in embedded programming. (My guess is that Prof. Molloy knows this perfectly well but the editors did not feel entirely comfortable releasing a popular book that states this too directly. Nonetheless, kudos to Wiley too, for publishing a very solid, worthwhile book.)

That's pretty much my only criticism, and really it amounts to carping about a couple dozen pages in a 565 page book.

If what you want is a recipe for some JS to host a web page on your BBB, this isn't the book for you. If you want to know how to access the onboard peripherals, interface with outside devices, and make the computer actually do something in response to the physical world, you won't find a more thorough, yet efficient presentation. The material on dealing with device trees and .DTBO files alone is worth the price of the book. Nobody else talks about how to control it, including the BBB technical reference, yet it's crucial to understand. Thank you, Prof. Molloy.
11/12 人认为此评论有用
平均5.0 星 An engineering textbook masterpiece 2015年3月29日
评论者 Merlin - 已在美国亚马逊上发表
版本: 平装 已确认购买
This is one of the best technical books I have read in 30 years. It should be used as curriculum at school, and maybe it is at Derek's college. I have been using BeagleBone since 2012, often in real world applications. Therefore, I was very familiar with Derek's youtube videos that often got me started on specific topics about the board features.
But this book goes way beyond the mere usage of a product, it's a full multidisciplinary workshop on electronics, physical computing, networking, and process control. As efficacy, I put this guy at the same level as a W.Bolton or a S.Gibilisco, plus the monumental collateral (and free) material posted on his website and youtube channel.
Were I 20 years younger, I would spend a semester in Dublin just to go to Derek's classes...