-
Notifications
You must be signed in to change notification settings - Fork 5
/
about_book.qmd
75 lines (39 loc) · 7.78 KB
/
about_book.qmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# About this Book {.unnumbered}
## Audience
<br />
The primary audience for "XIAO: Big Power, Small Board" encompasses hobbyists, students, educators, and professionals in electronics and machine learning who want to explore and maximize the potential of compact hardware platforms. Typically, these readers might hold positions as electronics enthusiasts, DIY project creators, electronics educators, or even junior embedded system developers. As they advance in their careers, they might be eyeing roles such as electronics design engineers, IoT developers, or machine learning hardware integrators.
Our audience possesses a basic understanding of electronics concepts but may have yet to delve deep into Arduino programming or compact hardware design. They likely have encountered standard beginner books on Arduino or general electronics but might have yet to venture into specialized hardware or TinyML. As for skills, they have some hands-on experience with basic electronics or programming but haven't mastered the intricacies of TinyML or advanced microcontroller functionalities.
## What readers will learn
By the end of this book, the reader will understand:
- The fundamentals of open-source hardware, focusing on the capabilities of the Seeed Studio XIAO series.
- How to transition from basic to advanced electronic projects, starting with simple LED controls and advancing to complex applications like telemetry and voice keyword detection.
- The concepts behind prototype design and its practical implications in product development.
- The intricacies of integrating various modules like the infrared receiver, ultrasonic distance sensor, and RTC clock with the XIAO platform.
- The significance and application of Tiny Machine Learning (TinyML), emphasizing its transformative power in hardware like the XIAO nRF52840 Sense and ESP32S3 Sense.
- Techniques to utilize advanced tools such as Edge Impulse Studio for real-world applications like anomaly and object detection and video or sound classification.
The reader will be able to:
- Set up, program, and troubleshoot projects across all XIAO series boards, advancing from basic hardware interactions to intricate project designs.
- Convert abstract ideas into tangible electronic product prototypes, leveraging the insights from the course.
- Design and implement intermediate-level projects such as a Smart Watch and Air Piano using specialized sensors and modules.
- Harness the power of Wi-Fi and MQTT protocols with XIAO ESP32C3 for cloud communications and data exchange.
- Deploy TinyML on different XIAO boards, executing tasks like image, motion, and sound classification besides anomaly and object detection.
- Innovate and extend project ideas, drawing inspiration from a curated collection of XIAO projects and adapting them for custom needs.
## Software dependencies
- **Arduino IDE**: Major updates or changes to the Arduino IDE might affect content related to Arduino development and programming in the book.
- **Seeed Studio XIAO Libraries**: Updates to libraries specific to the XIAO series can influence the projects or example codes provided.
- **Edge Impulse Studio**: Significant updates or feature changes on this platform would necessitate adjustments in the TinyML chapters.
- **MQTT Libraries/Protocols**: Any changes related to MQTT libraries or the protocol itself could influence the content of telemetry and commands.
- **ESP32 Libraries**: Updates to libraries used by the XIAO ESP32C3 and ESP32S3 board may impact associated projects or examples.
## Book outline
- **Chapter 1: Introduction to Hardware and Programming**
In this chapter, readers start with basic programming on XIAO using Arduino IDE. Through simple example programs, they will learn to control LED lights, buttons, buzzers, and other electronic components, mastering core programming concepts like digital I/O, analog I/O, tone generation, and mapping values. By manually typing out code examples line-by-line, they will develop strong coding habits and grasp programming syntax.
- **Chapter 2: Project Practice for Beginners - Introduction to Prototype Design**
In this chapter, readers will learn the basics of designing prototypes with XIAO through beginner-friendly projects. They will start from an idea and quickly create a verification prototype, focusing more on the practical application of code rather than line-by-line analysis. By leveraging Arduino libraries, community resources, and example programs, they will learn how to find and adapt code snippets to achieve desired effects efficiently. Furthermore, they will explore how to design the physical appearance of prototypes by creatively combining electronic hardware with everyday items. The key outcomes are grasping a project-based approach and developing skills to build simple interactive prototypes.
- **Chapter 3: Intermediate Project Practice---Complex Projects**
In this chapter, readers will advance their prototyping skills by creating sophisticated IoT projects with XIAO. They will implement features like Wi-Fi connectivity, MQTT telemetry, and remote control commands using the XIAO ESP32C3. Through complex builds like an intelligent remote door, smartwatch, and air piano, you will hone programming techniques for wireless communication, cloud integration, and embedded control. Optional blueprints will be provided, but readers are encouraged to explore creative enclosure designs with alternative materials. The key outcomes are mastering intermediate IoT prototyping and preparing for advanced tinyML applications.
- **Chapter 4: Project Practice Advanced - tinyML Application**
Among the XIAO series products, the Seeed Studio XIAO nRF52840 Sense has Bluetooth 5.0 wireless connectivity, low power consumption, and comes with onboard 6-axis IMU and PDM microphone sensors. The XIAO ESP32S3 Sense further integrates a camera, digital microphone, and SD card support. Those features make them powerful tools for TinyML (Embedded Machine Learning) projects. TinyML solves problems in a completely different way from traditional programming methods. This chapter will introduce readers to this cutting-edge field by walking through the entire machine-learning workflow from data collection, training, and testing to deployment and inference using the Edge Impulse Studio tool.
- **Chapter 5: Creative Experiments**
Since its launch, the Seeed Studio XIAO series has been widely acclaimed for its compact size, powerful performance, and versatile product range. The maker community has produced a large number of projects created with XIAO. Due to space constraints, we have selected some outstanding projects made with XIAO by our makers. These projects fully demonstrate the powerful functions and wide applications of XIAO. Let us follow the makers' steps, stimulate creativity, and explore the endless possibilities of XIAO. Readers can draw inspiration from these projects, use imagination, and explore new territories with XIAO.
## Copyright Statement
This book, "XIAO: Big Power, Small Board," is published under the GNU General Public License version 3.0 (GPL-3.0), ensuring it remains free and open for all to use, modify, and distribute. The GPL-3.0 License is a widely respected and used free software license, guaranteeing users the freedom to run, study, share, and modify the software. The authors, Lei Feng and Marcelo Rovai, along with all contributors, embrace the principles of open knowledge and education, ensuring that this valuable resource remains accessible to those who seek to advance their skills in Arduino, TinyML, and beyond. By choosing this license, we commit to fostering a community-driven approach to learning and innovation. For more details on the rights and limitations under this license, please refer to the [official GPL-3.0 documentation](https://www.gnu.org/licenses/gpl-3.0.en.html).