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 Processing
The 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)
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)
The Elektor Audio DSP FX Processor combines an ESP32 microcontroller and an ADAU1701 Audio DSP from Analog Devices. Besides a user-programmable DSP core, the ADAU1701 has high-quality analog-to-digital and digital-to-analog converters built-in and features an I²S port. This makes it suitable as a high-quality audio interface for the ESP32.
Programs for the ESP32 can be created with Arduino, Platform IO, CMake or by using the Espressif IDF in another way. Programs for the ADAU7101 audio DSPs are created with the free visual programming tool SigmaStudio by dragging and dropping pre-defined algorithm blocks on a canvas.
Applications
Bluetooth/Wi-Fi audio sink (e.g. loudspeaker) & source
Guitar effect pedal (stomp box)
Music synthesizer
Sound/function generator
Programmable cross-over filter for loudspeakers
Advanced audio effects processor (reverb, chorus, pitch shifting, etc.)
Internet-connected audio device
DSP experimentation platform
Wireless MIDI
MIDI to CV converter
and many more...
Specifications
ADAU1701 28-/56-bit, 50-MIPS digital audio processor supporting sampling rates of up to 192 kHz
ESP32 32-bit dual-core microcontroller with Wi-Fi 802.11b/g/n and Bluetooth 4.2 BR/EDR and BLE
2x 24-bit audio inputs (2 V RMS, 20 kΩ)
4x 24-bit audio outputs (0.9 V RMS, 600 Ω)
4x Control potentiometer
MIDI in- and output
I²C expansion port
Multi-mode operation
Power supply: 5 V DC USB or 7.5-12 V DC (barrel jack, center pin is GND)
Current consumption (average): 200 mA
Included
1x ESP32 Audio DSP FX Processor board (assembled)
1x ESP32-PICO-KIT
2x Jumpers
2x 18-pin headers (female)
4x 10 KB potentiometers
Downloads
Documentation
GitHub
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
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?
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.
The reComputer J3010 is a compact and powerful edge AI device powered by the NVIDIA Jetson Orin Nano SoM, delivering an impressive 20 TOPS AI performance – up to 40 times faster than the Jetson Nano. Pre-installed with Jetpack 5.1.1, it features a 128 GB SSD, 4x USB 3.2 ports, HDMI, Gigabit Ethernet, and a versatile carrier board with M.2 Key E for WiFi, M.2 Key M for SSD, RTC, CAN, and a 40-pin GPIO header.
Applications
AI Video Analytics
Machine Vision
Robotics
Specifications
Jetson Orin Nano System-on-Module
AI Performance
reComputer J3010, Orin Nano 4 GB (20 TOPS)
GPU
512-core NVIDIA Ampere architecture GPU with 16 Tensor Cores (Orin Nano 4 GB)
CPU
6-core Arm Cortex-A78AE v8.2 64-bit CPU 1.5 MB L2 + 4 MB L3
Memory
4 GB 64-bit LPDDR5 34 GB/s (Orin Nano 4 GB)
Video Encoder
1080p30 supported by 1-2 CPU cores
Video Decoder
1x 4K60 (H.265) | 2x 4K30 (H.265) | 5x 1080p60 (H.265) | 11x 1080p30 (H.265)
Carrier Board
Storage
M.2 Key M PCIe (M.2 NVMe 2280 SSD 128 GB included)
Networking
Ethernet
1x RJ-45 Gigabit Ethernet (10/100/1000M)
M.2 Key E
1x M.2 Key E (pre-installed 1x Wi-Fi/Bluetooth combo module)
I/O
USB
4x USB 3.2 Type-A (10 Gbps)1x USB 2.0 Type-C (Device Mode)
CSI Camera
2x CSI (2-lane 15-pin)
Display
1x HDMI 2.1
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
RTC
RTC 2-pin, supports CR1220 (not included)
Power Supply
9-19 V DC
Mechanical
Dimensions
130 x 120 x 58.5 mm (with Case)
Installation
Desktop, wall-mounting
Operating Temperature
−10°C~60°C
Included
1x reComputer J3010 (system installed)
1x Power adapter (12 V / 5 A)
Downloads
reComputer J301x Datasheet
NVIDIA Jetson Devices and carrier boards comparisions
reComputer J401 schematic design file
reComputer J3010 3D file
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.