A Practical Guide to AI, Python, and Hardware Projects
Welcome to your BeagleY-AI journey! This compact, powerful, and affordable single-board computer is perfect for developers and hobbyists. With its dedicated 4 TOPS AI co-processor and a 1.4 GHz Quad-core Cortex-A53 CPU, the BeagleY-AI is equipped to handle both AI applications and real-time I/O tasks. Powered by the Texas Instruments AM67A processor, it offers DSPs, a 3D graphics unit, and video accelerators.
Inside this handbook, you‘ll find over 50 hands-on projects that cover a wide range of topics—from basic circuits with LEDs and sensors to an AI-driven project. Each project is written in Python 3 and includes detailed explanations and full program listings to guide you. Whether you‘re a beginner or more advanced, you can follow these projects as they are or modify them to fit your own creative ideas.
Here’s a glimpse of some exciting projects included in this handbook:
Morse Code Exerciser with LED or BuzzerType a message and watch it come to life as an LED or buzzer translates your text into Morse code.
Ultrasonic Distance MeasurementUse an ultrasonic sensor to measure distances and display the result in real time.
Environmental Data Display & VisualizationCollect temperature, pressure, and humidity readings from the BME280 sensor, and display or plot them on a graphical interface.
SPI – Voltmeter with ADCLearn how to measure voltage using an external ADC and display the results on your BeagleY-AI.
GPS Coordinates DisplayTrack your location with a GPS module and view geographic coordinates on your screen.
BeagleY-AI and Raspberry Pi 4 CommunicationDiscover how to make your BeagleY-AI and Raspberry Pi communicate over a serial link and exchange data.
AI-Driven Object Detection with TensorFlow LiteSet up and run an object detection model using TensorFlow Lite on the BeagleY-AI platform, with complete hardware and software details provided.
A Practical Guide to AI, Python, and Hardware Projects
Welcome to your BeagleY-AI journey! This compact, powerful, and affordable single-board computer is perfect for developers and hobbyists. With its dedicated 4 TOPS AI co-processor and a 1.4 GHz Quad-core Cortex-A53 CPU, the BeagleY-AI is equipped to handle both AI applications and real-time I/O tasks. Powered by the Texas Instruments AM67A processor, it offers DSPs, a 3D graphics unit, and video accelerators.
Inside this handbook, you‘ll find over 50 hands-on projects that cover a wide range of topics—from basic circuits with LEDs and sensors to an AI-driven project. Each project is written in Python 3 and includes detailed explanations and full program listings to guide you. Whether you‘re a beginner or more advanced, you can follow these projects as they are or modify them to fit your own creative ideas.
Here’s a glimpse of some exciting projects included in this handbook:
Morse Code Exerciser with LED or BuzzerType a message and watch it come to life as an LED or buzzer translates your text into Morse code.
Ultrasonic Distance MeasurementUse an ultrasonic sensor to measure distances and display the result in real time.
Environmental Data Display & VisualizationCollect temperature, pressure, and humidity readings from the BME280 sensor, and display or plot them on a graphical interface.
SPI – Voltmeter with ADCLearn how to measure voltage using an external ADC and display the results on your BeagleY-AI.
GPS Coordinates DisplayTrack your location with a GPS module and view geographic coordinates on your screen.
BeagleY-AI and Raspberry Pi 4 CommunicationDiscover how to make your BeagleY-AI and Raspberry Pi communicate over a serial link and exchange data.
AI-Driven Object Detection with TensorFlow LiteSet up and run an object detection model using TensorFlow Lite on the BeagleY-AI platform, with complete hardware and software details provided.
Easy and Affordable Digital Signal ProcessingThe aim of this book is to teach the basic principles of Digital Signal Processing (DSP) and to introduce it from a practical point of view using the bare minimum of mathematics. Only the basic level of discrete-time systems theory is given, sufficient to implement DSP applications in real time. The practical implementations are described in real time using the highly popular ESP32 DevKitC microcontroller development board. With the low cost and extremely popular ESP32 microcontroller, you should be able to design elementary DSP projects with sampling frequencies within the audio range. All programming is done using the popular Arduino IDE in conjunction with the C language compiler.After laying a solid foundation of DSP theory and pertinent discussions on the main DSP software tools on the market, the book presents the following audio-based sound and DSP projects:
Using an I²S-based digital microphone to capture audio sound
Using an I²S-based class-D audio amplifier and speaker
Playing MP3 music stored on an SD card through an I²S-based amplifier and speaker
Playing MP3 music files stored in ESP32 flash memory through an I²S-based amplifier and speaker
Mono and stereo Internet radio with I²S-based amplifiers and speakers
Text-to-speech output with an I²S-based amplifier and speaker
Using the volume control in I²S-based amplifier and speaker systems
A speaking event counter with an I²S-based amplifier and speaker
An adjustable sinewave generator with I²S-based amplifier and speaker
Using the Pmod I²S2 24-bit fast ADC/DAC module
Digital low-pass and band-pass real-time FIR filter design with external and internal A/D and D/A conversion
Digital low-pass and band-pass real-time IIR filter design with external and internal A/D and D/A conversion
Fast Fourier Transforms (FFT)
This collection features the best of Elektor Magazine's articles on embedded systems and artificial intelligence. From hands-on programming guides to innovative AI experiments, these pieces offer valuable insights and practical knowledge for engineers, developers, and enthusiasts exploring the evolving intersection of hardware design, software innovation, and intelligent technology.
Contents
Programming PICs from the Ground UpAssembler routine to output a sine wave
Object-Oriented ProgrammingA Short Primer Using C++
Programming an FPGA
Tracking Down Microcontroller Buffer Overflows with 0xDEADBEEF
Too Quick to Code and Too Slow to Test?
Understanding the Neurons in Neural NetworksEmbedded Neurons
MAUI Programming for PC, Tablet, and SmartphoneThe New Framework in Theory and Practice
USB Killer DetectorBetter Safe Than Sorry
Understanding the Neurons in Neural NetworksArtificial Neurons
A Bare-Metal Programming Guide
Part 1: For STM32 and Other Controllers
Part 2: Accurate Timing, the UART, and Debugging
Part 3: CMSIS Headers, Automatic Testing, and a Web Server
Introduction to TinyMLBig Is Not Always Better
Microprocessors for Embedded SystemsPeculiar Parts, the Series
FPGAs for BeginnersThe Path From MCU to FPGA Programming
AI in Electronics DevelopmentAn Update After Only One Year
AI in the Electronics LabGoogle Bard and Flux Copilot Put to the Test
ESP32 and ChatGPTOn the Way to a Self-Programming System…
Audio DSP FX Processor Board
Part 1: Features and Design
Part 2: Creating Applications
Rust + EmbeddedA Development Power Duo
A Smart Object CounterImage Recognition Made Easy with Edge Impulse
Universal Garden LoggerA Step Towards AI Gardening
A VHDL ClockMade with ChatGPT
TensorFlow Lite on Small MicrocontrollersA (Very) Beginner’s Point of View
Mosquito DetectionUsing Open Datasets and Arduino Nicla Vision
Artificial Intelligence Timeline
Intro to AI AlgorithmsPrompt: Which Algorithms Implement Each AI Tool?
Bringing AI to the Edgewith ESP32-P4
The Growing Role of Edge AIA Trend Shaping the Future
A Beginner's Guide to AI and Edge Computing
Artificial Intelligence (AI) is now part of our daily lives. With companies developing low-cost AI-powered hardware into their products, it is now becoming a reality to purchase AI accelerator hardware at comparatively very low costs. One such hardware accelerator is the Hailo module which is fully compatible with the Raspberry Pi 5. The Raspberry Pi AI Kit is a cleverly designed hardware as it bundles an M.2-based Hailo-8L accelerator with the Raspberry Pi M.2 HAT+ to offer high speed inferencing on the Raspberry Pi 5. Using the Raspberry Pi AI Kit, you can build complex AI-based vision applications, running in real-time, such as object detection, pose estimation, instance segmentation, home automation, security, robotics, and many more neural network-based applications.
This book is an introduction to the Raspberry Pi AI Kit, and it is aimed to provide some help to readers who are new to the kit and wanting to run some simple AI-based visual models on their Raspberry Pi 5 computers. The book is not meant to cover the detailed process of model creation and compilation, which is done on an Ubuntu computer with massive disk space and 32 GB memory. Examples of pre-trained and custom object detection are given in the book.
Two fully tested and working projects are given in the book. The first project explains how a person can be detected and how an LED can be activated after the detection, and how the detection can be acknowledged by pressing an external button. The second project illustrates how a person can be detected, and how this information can be passed to a smart phone over a Wi-Fi link, as well as how the detection can be acknowledged by sending a message from the smartphone to your Raspberry Pi 5.
Elektor GREEN and GOLD members can download their digital edition here.
Not a member yet? Click here.
The AlertAlfred AI Security SystemPowered by a Raspberry Pi 5 and the Hailo 8L Module
AI in Electronics DevelopmentAn Update After Only One Year
Intro to AI AlgorithmsPrompt: Which Algorithms Implement Each AI Tool?
Single-Board Computers for Artificial Intelligence ProjectsBackground and Overview
From Sensor Data to Machine Learning ModelsGesture Detection with an Accelerometer and Edge Impulse
Build a Leaky Integrate-and-Fire Spiking NeuronArtificial Intelligence Without Software
ChatGPT for Electronic DesignDoes GPT-4o Do It Any Better?
Bringing AI to the Edge with ESP32-P4
Exploring Speech Functions on Raspberry Pi ZeroWhen Overclocking Gives Freedom of Speech
The Growing Role of Edge AIA Trend Shaping the Future
Unlocking the Power of Edge AIA Conversation with François de Rochebouët of STMicroelectronics
A VHDL Clock Made with ChatGPT
AI’s Real ImpactSayash Kapoor on “AI Snake Oil” and More
The Latest Stuff From BeagleBoardBeagleY-AI, BeagleV-Fire, BeagleMod, BeaglePlay and BeagleConnect Freedom
Mosquito Detection Using Open Datasets and Arduino Nicla Vision
AI Today and Tomorrow: Insights from Espressif, Arduino, and SparkFun
Artificial Intelligence Timeline
BeagleY-AIThe Latest SBC for AI Applications
AI in FocusPerspectives from the Elektor Community
Machine Vision with OpenMVCreate a Soda Can Detector
A Conversation with the Digital MindChatGPT vs Gemini
Skilling Me Softly with This Bot?Is the AI Revolution in the Electronic Field Failing Due to a Lack of Social Precision?
The reComputer J1020 v2 is a compact edge AI device powered by the NVIDIA Jetson Nano 4 GB production module, delivering 0.5 TFLOPs of AI performance. It features a robust aluminum case with a passive heatsink and comes pre-installed with JetPack 4.6.1. The device includes 16 GB of onboard eMMC storage and offers 2x SCI, 4x USB 3.0, M.2 Key M, HDMI, and DP.
Applications
Computer Vision
Machine Learning
Autonomous Mobile Robot (AMR)
Specifications
Jetson Nano 4 GB System-on-Module
AI Performance
Jetson Nano 4 GB (0.5 TOPS)
GPU
NVIDIA Maxwel architecture with 128 NVIDIA CUDA cores
CPU
Quad-core ARM Cortex-A57 MPCore processor
Memory
4 GB 64-bit LPDDR4 25.6 GB/s
Video Encoder
1x 4K30 | 2x 1080p60 | 4x 1080p30 | 4x 720p60 | 9x 720p30 (H.265 & H.264)
Video Decoder
1x 4K60 | 2x 4K30 | 4x 1080p60 | 8x 1080p30 | 9x 720p60 (H.265 & H.264)
Carrier Board
Storage
1x M.2 Key M PCIe
Networking
Ethernet
1x RJ-45 Gigabit Ethernet (10/100/1000M)
I/O
USB
4x USB 3.0 Type-A1x Micro-USB port for device mode
CSI Camera
2x CSI (2-lane 15-pin)
Display
1x HDMI Type A; 1x DP
Fan
1x 4-pin Fan Connector (5 V PWM)
CAN
1x CAN
Multifunctional Port
1x 40-Pin Expansion header
1x 12-Pin Control and UART header
Power Supply
DC 12 V/2 A
Mechanical
Dimensions
130 x 120 x 50 mm (with Case)
Installation
Desktop, wall-mounting
Operating Temperature
−10°C~60°C
Included
reComputer J1020 v2 (system installed)
12 V/2 A power adapter (with 5 interchangeable adapter plugs)
Downloads
reComputer J1020 v2 datasheet
reComputer J1020 v2 3D file
Seeed NVIDIA Jetson Product Catalog
NVIDIA Jetson Device and Carrier Boards Comparison
Learn programming for Alexa devices, extend it to smart home devices and control the Raspberry Pi
The book is split into two parts: the first part covers creating Alexa skills and the second part, designing Internet of Things and Smart Home devices using a Raspberry Pi.
The first chapters describe the process of Alexa communication, opening an Amazon account and creating a skill for free. The operation of an Alexa skill and terminology such as utterances, intents, slots, and conversations are explained. Debugging your code, saving user data between sessions, S3 data storage and Dynamo DB database are discussed.
In-skill purchasing, enabling users to buy items for your skill as well as certification and publication is outlined. Creating skills using AWS Lambda and ASK CLI is covered, along with the Visual Studio code editor and local debugging. Also covered is the process of designing skills for visual displays and interactive touch designs using Alexa Presentation Language.
The second half of the book starts by creating a Raspberry Pi IoT 'thing' to control a robot from your Alexa device. This covers security issues and methods of sending and receiving MQTT messages between an Alexa device and the Raspberry Pi.
Creating a smart home device is described including forming a security profile, linking with Amazon, and writing a Lambda function that gets triggered by an Alexa skill. Device discovery and on/off control is demonstrated.
Next, readers discover how to control a smart home Raspberry Pi display from an Alexa skill using Simple Queue Service (SQS) messaging to switch the display on and off or change the color.
A node-RED design is discussed from the basic user interface right up to configuring MQTT nodes. MQTT messages sent from a user are displayed on a Raspberry Pi.
A chapter discusses sending a proactive notification such as a weather alert from a Raspberry Pi to an Alexa device. The book concludes by explaining how to create Raspberry Pi as a stand-alone Alexa device.
ModbusRTU and ModbusTCP examples with the Arduino Uno and ESP8266
Introduction to PLC programming with OpenPLC, the first fully open source Programmable Logic Controller on the Raspberry Pi, and Modbus examples with Arduino Uno and ESP8266
PLC programming is very common in industry and home automation. This book describes how the Raspberry Pi 4 can be used as a Programmable Logic Controller. Before taking you into the programming, the author starts with the software installation on the Raspberry Pi and the PLC editor on the PC, followed by a description of the hardware.
You'll then find interesting examples in the different programming languages complying with the IEC 61131-3 standard. This manual also explains in detail how to use the PLC editor and how to load and execute the programs on the Raspberry Pi. All IEC languages are explained with examples, starting with LD (Ladder Diagram) over ST (Structured Control Language) to SFC (Special Function Chart). All examples can be downloaded from the author's website.
Networking gets thorough attention too. The Arduino Uno and the ESP8266 are programmed as ModbusRTU or ModbusTCP modules to get access to external peripherals, reading sensors and switching electrical loads. I/O circuits complying with the 24 V industry standard may also be of interest for the reader.
The book ends with an overview of commands for ST and LD. After reading the book, the reader will be able to create his own controllers with the Raspberry Pi.
Most people are increasingly confronted with the applications of Artificial Intelligence (AI). Music or video ratings, navigation systems, shopping advice, etc. are based on methods that can be attributed to this field.
The term Artificial Intelligence was coined in 1956 at an international conference known as the Dartmouth Summer Research Project. One basic approach was to model the functioning of the human brain and to construct advanced computer systems based on this. Soon it should be clear how the human mind works. Transferring it to a machine was considered only a small step. This notion proved to be a bit too optimistic. Nevertheless, the progress of modern AI, or rather its subspecialty called Machine Learning (ML), can no longer be denied.
In this book, several different systems will be used to get to know the methods of machine learning in more detail. In addition to the PC, both the Raspberry Pi and the Maixduino will demonstrate their capabilities in the individual projects. In addition to applications such as object and facial recognition, practical systems such as bottle detectors, person counters, or a “talking eye” will also be created.
The latter is capable of acoustically describing objects or faces that are detected automatically. For example, if a vehicle is in the field of view of the connected camera, the information 'I see a car!' is output via electronically generated speech. Such devices are highly interesting examples of how, for example, blind or severely visually impaired people can also benefit from AI systems.
The Arduino Uno is an open-source microcontroller development system encompassing hardware, an Integrated Development Environment (IDE), and a vast number of libraries. It is supported by an enormous community of programmers, electronic engineers, enthusiasts, and academics. The libraries in particular really smooth Arduino programming and reduce programming time. What’s more, the libraries greatly facilitate testing your programs since most come fully tested and working.
The Raspberry Pi 4 can be used in many applications such as audio and video media devices. It also works in industrial controllers, robotics, games, and in many domestic and commercial applications. The Raspberry Pi 4 also offers Wi-Fi and Bluetooth capability which makes it great for remote and Internet-based control and monitoring applications.
This book is about using both the Raspberry Pi 4 and the Arduino Uno in PID-based automatic control applications. The book starts with basic theory of the control systems and feedback control. Working and tested projects are given for controlling real-life systems using PID controllers. The open-loop step time response, tuning the PID parameters, and the closed-loop time response of the developed systems are discussed together with the block diagrams, circuit diagrams, PID controller algorithms, and the full program listings for both the Raspberry Pi and the Arduino Uno.
The projects given in the book aim to teach the theory and applications of PID controllers and can be modified easily as desired for other applications. The projects given for the Raspberry Pi 4 should work with all other models of Raspberry Pi family.
The book covers the following topics:
Open-loop and closed-loop control systems
Analog and digital sensors
Transfer functions and continuous-time systems
First-order and second-order system time responses
Discrete-time digital systems
Continuous-time PID controllers
Discrete-time PID controllers
ON-OFF temperature control with Raspberry Pi and Arduino Uno
PID-based temperature control with Raspberry Pi and Arduino Uno
PID-based DC motor control with Raspberry Pi and Arduino Uno
PID-based water level control with Raspberry Pi and Arduino Uno
PID-based LED-LDR brightness control with Raspberry Pi and Arduino Uno
This book details the use of the ARM Cortex-M family of processors and the Arduino Uno in practical CAN bus based projects. Inside, it gives a detailed introduction to the architecture of the Cortex-M family whilst providing examples of popular hardware and software development kits. Using these kits helps to simplify the embedded design cycle considerably and makes it easier to develop, debug, and test a CAN bus based project. The architecture of the highly popular ARM Cortex-M processor STM32F407VGT6 is described at a high level by considering its various modules. In addition, the use of the mikroC Pro for ARM and Arduino Uno CAN bus library of functions are described in detail.
This book is written for students, for practising engineers, for hobbyists, and for everyone else who may need to learn more about the CAN bus and its applications. The book assumes that the reader has some knowledge of basic electronics. Knowledge of the C programming language will be useful in later chapters of the book, and familiarity with at least one microcontroller will be an advantage, especially if the reader intends to develop microcontroller based projects using CAN bus.
The book should be useful source of reference to anyone interested in finding an answer to one or more of the following questions:
What bus systems are available for the automotive industry?
What are the principles of the CAN bus?
What types of frames (or data packets) are available in a CAN bus system?
How can errors be detected in a CAN bus system and how reliable is a CAN bus system?
What types of CAN bus controllers are there?
What are the advantages of the ARM Cortex-M microcontrollers?
How can one create a CAN bus project using an ARM microcontroller?
How can one create a CAN bus project using an Arduino microcontroller?
How can one monitor data on the CAN bus?