Projects with Thonny-IDE, uPyCraft-IDE, and ESP32
The 'Python' programming language has enjoyed an enormous upswing in recent years. Not least, various single-board systems such as the Raspberry Pi have contributed to its popularity. But Python has also found widespread use in other fields, such as artificial intelligence (AI) or machine learning (ML). It is obvious, therefore, to use Python or the 'MicroPython' variant for use in SoCs (Systems on Chip) as well.
Powerful controllers such as the ESP32 from Espressif Systems offer excellent performance as well as Wi-Fi and Bluetooth functionality at an affordable price. With these features, the Maker scene has been taken by storm. Compared to other controllers, the ESP32 has a significantly larger flash and SRAM memory, as well as a much higher CPU speed. Due to these characteristics, the chip is not only suitable for classic C applications, but also for programming with MicroPython.
This book introduces the application of modern one-chip systems. In addition to the technical background, the focus is on MicroPython itself. After the introduction to the language, the programming skills learned are immediately put into practice. The individual projects are suitable for use in the laboratory as well as for everyday applications. So, in addition to the actual learning effect, the focus is also on the joy of building complete and useful devices. By using laboratory breadboards, circuits of all kinds can be realized with little effort, turning the testing and debugging of the 100% homebrew projects into an instructive pleasure.
The various applications, such as weather stations, digital voltmeters, ultrasound range finders, RFID card readers or function generators, make the projects presented ideally suited for practical courses or subject and study work in the natural sciences, or in science and technology classes.
The Milk-V Duo 256M is an ultra-compact embedded development platform based on the SG2002 chip. It can run Linux and RTOS, providing a reliable, low-cost, and high-performance platform for professionals, industrial ODMs, AIoT enthusiasts, DIY hobbyists, and creators.
This board is an upgraded version of Duo with a memory boost to 256M, catering to applications demanding larger memory capacities. The SG2002 elevates computational power to 1.0 TOPS @ INT8. It enables seamless switching between RISC-V/ARM architectures and supports simultaneous operation of dual systems. Additionally, it includes an array of rich GPIO interfaces such as SPI, UART, suitable for a wide range of hardware development in edge intelligent monitoring, including IP cameras, smart peephole locks, visual doorbells, and more.
SG2002 is a high-performance, low-power chip designed for various product fields such as edge intelligent surveillance IP cameras, smart door locks, visual doorbells, and home intelligence. It integrates H.264 video compression and decoding, H.265 video compression encoding, and ISP capabilities. It supports multiple image enhancement and correction algorithms such as HDR wide dynamic range, 3D noise reduction, defogging, and lens distortion correction, providing customers with professional-grade video image quality.
The chip also incorporates a self-developed TPU, delivering 1.0 TOPS of computing power under 8-bit integer operations. The specially designed TPU scheduling engine efficiently provides high-bandwidth data flow for all tensor processing unit cores. Additionally, it offers users a powerful deep learning model compiler and software SDK development kit. Leading deep learning frameworks like Caffe and Tensorflow can be easily ported to its platform. Furthermore, it includes security boot, secure updates, and encryption, providing a series of security solutions from development, mass production, to product applications.
The chip integrates an 8-bit MCU subsystem, replacing the typical external MCU to achieve cost-saving and power efficiency goals.
Specifications
SoC
SG2002
RISC-V CPU
C906 @ 1 Ghz + C906 @ 700 MHz
Arm CPU
1x Cortex-A53 @ 1 GHz
MCU
8051 @ 6 KB SRAM
Memory
256 MB SIP DRAM
TPU
1.0 TOPS @ INT8
Storage
1x microSD connector or 1x SD NAND on board
USB
1x USB-C for power and data, USB Pads available
CSI
1x 16P FPC connector (MIPI CSI 2-lane)
Sensor Support
5 M @ 30 fps
Ethernet
100 Mbps Ethernet with PHY
Audio
Via GPIO Pads
GPIO
Up to 26x GPIO Pads
Power
5 V/1 A
OS Support
Linux, RTOS
Dimensions
21 x 51 mm
Downloads
Documentation
GitHub
Features
Synchronous mode: Auto, Normal, Single, None, Scan
Rising/Falling edge trigger
Modes of vertical precise, horizontal precise measurement and triggering threshold
Auto Measurement: frequency, cycle time, duty cycle, DC RMS voltage/Vpp /Vmax/Vmin/Vavg
Inbuilt signal generator/10 Hz-1 MHz square wave (duty adjustable) or 10 Hz-20 KHz
Sine/Square/Triangle/Sawtooth wave
Specifications
Analog bandwidth
1 MHz
Max sample rate
10 Msa/s
Max sample memory depth
8K
Analog input impedance
1 MΩ
Max input voltage
±40 V (X1)
Coupling
AC/DC
Vertical sensitivity
20 mv/Div~10 V/Div (1-2-5)
Horizontal sensitivity
1 uS/Div~2 S/Div (1-2-5)
Storage
Built-in 8 MB U disk storage for waveform data and images
Power supply
Internal 550 mAh Lithium battery, recharging through Micro USB port
Display
2.8' Full Color TFT LCD (320x240 pixels)
Dimensions
100 x 56.5 x 10.7 mm
Downloads
User Manual
Source Code
App
MDP-M01 is a display control module equipped with a 2.8-inch TFT display screen, the screen can be turned 90 degrees, which is convenient for users to view data and waveform. MDP-M01 can realize online display and control with MDP-P906 mini digital power supply modules and other modules of MDP system through 2.4 GHz wireless communication, and can control up to 6 sub-modules at the same time.
Specifications
Screen size
2.8" TFT
Screen resolution
240 x 320
Power
Micro USB power input, or taking power from sub-module via dedicated power cable
Input
DC 5 V/0.3 A
Other functions
Can control up to 6 sub-modulesUpgrade firmware through Micro USB
Dimensions
107 x 66 x 13.6 mm
Weight
133 g
Included
1x MDP-M01 Smart Digital Monitor
1x Cable (2.5 mm jack to Micro USB)
Downloads
User Manual v3.4
Firmware v1.32
50+ Android Apps with Raspberry Pi, ESP32 and Arduino
This book is about developing apps for Android compatible mobile devices using the MIT App Inventor online development environment. MIT App Inventor projects can be in either standalone mode or use an external processor. In standalone mode, the developed application runs only on the mobile device (e.g. Android). In external processor-based applications, the mobile device communicates with an external microcontroller-based processor, such as Raspberry Pi, Arduino, ESP8266, ESP32, etc.
In this book, many tested and fully working projects are given both in standalone mode and using an external processor. Full design steps, block programs, circuit diagrams, QR codes and full program listings are given for all projects.
The projects developed in this book include:
Using the text-to-speech component
Intonating a received SMS message
Sending SMS messages
Making telephone calls using a contacts list
Using the GPS and Pin-pointing our location on a map
Speech recognition and speech translation to another language
Controlling multiple relays by speech commands
Projects for the Raspberry Pi, ESP32 and Arduino using Bluetooth and Wi-Fi
MIT APP Inventor and Node-RED projects for the Raspberry Pi
The book is unique in that it is currently the only book that teaches how to develop projects using Wi-Fi and Node-RED with MIT App Inventor. The book is aimed at students, hobbyists, and anyone interested in developing apps for mobile devices.
All projects presented in this book have been developed using the MIT App Inventor visual programming language. There is no need to write any text-based programs. All projects are compatible with Android-based mobile devices. Full program listings for all projects as well as detailed program descriptions are given in the book. Users should be able to use the projects as they are presented, modifying them to suit their own needs.
The Mixer Geek Theremin+ is a fun and innovative electronic musical instrument inspired by the classic Theremin. Unlike traditional instruments, the Theremin+ is played without physical contact, using hand movements in the air to control pitch and volume.
The Theremin+ offers an exciting and hands-on way to explore music and sound experimentation.
Features
Ready to use out of the box
Equipped with a loudspeaker and full-color screen
Intuitive button-based navigation and confirmation
Choose from over 70 tones
Multiple customizable function settings
Displays waveform, time, frequency, volume, and corresponding piano pitch (display can be turned off)
Powered via USB-C port; compatible with power banks
Compact design with removable telescopic antenna for easy storage
Connects to headphones, external speakers, or recording devices
Dimensions: 98 x 70 x 18 mm
Included
1x Theremin+ Musical Instrument
2x Antennas
1x USB-C cable
Valve Amplifiers are regarded by many to be the ne plus ultra when it comes to processing audio signals. The combination of classical technology and modern components has resulted in a revival of the valve amplifier. The use of toraidal-core output transformers, developed by the author over the past 15 years, has contributed to this revival. The most remarkable features of these transformers are their extremely wide frequency ranges and their very low levels of linear and nonlinear distortion.
This book explains the whys and wherefores of toroidal output transformers at various technical levels, starting with elementary concepts and culminating in complete mathematical descriptions. In all of this, the interactions of the output valves, transformer and loudspeaker form the central theme.
Next come the practical aspects. The schematic diagram of a valve amplifier often appears to be very simple at first glance, but anyone who has built a modern valve amplifier knows that a lot of critical details are hidden behind this apparent simplicity. These are discussed extensively, in connection with designs for amplifiers with output powers ranging from 10 to 100 watts. Finally, the author gives some attention to a number of special valve amplifiers, and to the theory and practice of negative feedback.
In summary, this book offers innovative solutions for achieving perfect audio quality. Do-it-yourself builders, as well as persons who want to gain a deeper technical understanding of the complex world of audio transformers, valve amplifiers and audio signal processing, will find this book a rich and useful source of information.
The Speaker Kit for Raspberry Pi is a small amplified speaker designed for the Raspberry Pi. Included MonkMakes Amplified Speaker Set of 10 female to female header wires Short stereo audio lead Raspberry Leaf GPIO template Downloads Instructions Datasheet
This kit contains everything needed to start learning about connecting electronics to the micro:bit in an accessible and easy manner. Everything is connected using the supplied alligator clips, so no soldering required.
Included
MonkMakes Speaker for micro:bit
MonkMakes Switch for micro:bit
MonkMakes Sensor Board for micro:bit
Set of alligator clip leads (10 leads)
Small motor with fan
Single AA battery box (battery not included)
Light bulb and holder
Booklet (A5)
Downloads
Instructions
Datasheet
Lesson Plans
An adapter for connecting a servo meter with croc/alligator clips.
This is a handy little clip to connect a servo motor with 5.4 mm header socket using alligator clips. It is ideal for use with boards like the BBC micro:bit and Adafruit's Circuit Playground Express or Gemma.
Width: 27 mm
Height: 35 mm
Downloads
Datasheet
This book is about DC electric motors and their use in Arduino and Raspberry Pi Zero W based projects. The book includes many tested and working projects where each project has the following sub-headings:
Title of the project
Description of the project
Block diagram
Circuit diagram
Project assembly
Complete program listing of the project
Full description of the program
The projects in the book cover the standard DC motors, stepper motors, servo motors, and mobile robots. The book is aimed at students, hobbyists, and anyone else interested in developing microcontroller based projects using the Arduino Uno or the Raspberry Pi Zero W.
One of the nice features of this book is that it gives complete projects for remote control of a mobile robot from a mobile phone, using the Arduino Uno as well as the Raspberry Pi Zero W development boards. These projects are developed using Wi-Fi as well as the Bluetooth connectivity with the mobile phone. Readers should be able to move a robot forward, reverse, turn left, or turn right by sending simple commands from a mobile phone. Full program listings of all the projects as well as the detailed program descriptions are given in the book. Users should be able to use the projects as they are presented, or modify them to suit to their own needs.
The Mr. Pulsar Violent Turbo Fan X3 Pro delivers powerful airflow with its impressive 140,000 RPM motor, offering exceptional performance in a compact, portable design.
Featuring an 8,000 mAh battery for extended wireless operation, adjustable airflow speeds, and weighing just 277 grams, it's perfect for quick tasks like computer cleaning, drying pets, inflating air mattresses, removing dust, or even blowing snow from your car.
Specifications
Motor speed
140,000 RPM
Battery
8,000 mAh Lithium battery
Dimensions
160 x 60 x 90 mm
Weight
277 g
Included
1x Mr. Pulsar Violent Turbo Fan X3 Pro
1x Short nozzle
1x Storage bag
1x USB-C cable
Architecture, Programming and Applications
The MSP430 is a popular family of microcontrollers from Texas Instruments. In this book we will work with the smallest type, which is the powerful MSP430G2553. We will look at the capabilities of this microcontroller in detail, as it is well-suited for self-made projects because it is available in a P-DIP20 package.
We will take a closer look at the microcontroller and then build, step by step, some interesting applications, including a 'Hello World' blinking LED and a nice clock application, which can calculate the day of the week based on the date.
You also will learn how to create code for the MSP microcontroller in assembler. In addition to that, we will work with the MSP-Arduino IDE, which makes it quite easy to create fast applications without special in-depth knowledge of the microcontrollers.
All the code used in the book is available for download from the Elektor website.
Architecture, Programming and Applications
The MSP430 is a popular family of microcontrollers from Texas Instruments. In this book we will work with the smallest type, which is the powerful MSP430G2553. We will look at the capabilities of this microcontroller in detail, as it is well-suited for self-made projects because it is available in a P-DIP20 package.
We will take a closer look at the microcontroller and then build, step by step, some interesting applications, including a 'Hello World' blinking LED and a nice clock application, which can calculate the day of the week based on the date.
You also will learn how to create code for the MSP microcontroller in assembler. In addition to that, we will work with the MSP-Arduino IDE, which makes it quite easy to create fast applications without special in-depth knowledge of the microcontrollers.
All the code used in the book is available for download from the Elektor website.
Multitasking and multiprocessing have become a very important topic in microcontroller-based systems, namely in complex commercial, domestic, and industrial automation applications. As the complexity of projects grows, more functionalities are demanded from the projects. Such projects require the use of multiple inter-related tasks running on the same system and sharing the available resources, such as the CPU, memory, and input-output ports. As a result of this, the importance of multitasking operations in microcontroller-based applications has grown steadily over the last few years. Many complex automation projects now make use of some form of a multitasking kernel.
This book is project-based and its main aim is to teach the basic features of multitasking using the Python 3 programming language on Raspberry Pi. Many fully tested projects are provided in the book using the multitasking modules of Python. Each project is described fully and in detail. Complete program listings are given for each project. Readers should be able to use the projects as they are, or modify them to suit their own needs.
The following Python multitasking modules have been described and used in the projects:
Fork
Thread
Threading
Subprocess
Multiprocessing
The book includes simple multitasking projects such as independently controlling multiple LEDs, to more complex multitasking projects such as on/off temperature control, traffic lights control, 2-digit, and 4-digit 7-segment LED event counter, reaction timer, stepper motor control, keypad based projects, car park controller, and many more. The fundamental multitasking concepts such as process synchronization, process communication, and memory sharing techniques have been described in projects concerning event flags, queues, semaphores, values, and so on.
NetPi is the perfect solution for your Raspberry Pi Pico's connectivity needs. It's an Ethernet HAT that enables your Pico to easily connect to the internet. With support for various internet protocols such as TCP, UDP, WOL over UDP, ICMP, IPv4, and more, NetPi can create IoT devices, robots, home automation systems, and industrial control systems.
It has four independent SOCKETs that can be used simultaneously, and it also supports SOCKET-less commands like ARP-Request and PING-Request. The Ethernet HAT is equipped with 10Base-T/100Base-TX Ethernet PHY and auto-negotiation for a full and half duplex with 10 and 100-based connections. NetPi is ideal for various applications.
With NetPi, you can now support hardwired internet protocols like TCP, UDP, ICMP, and more. Enjoy four independent sockets for simultaneous connections and perform socket-less commands like ARP-Request and PING-Request. NetPi also supports Ethernet power down mode and wake on LAN over UDP for energy-saving.
NetPi is equipped with a 10Base-T/100Base-TX Ethernet PHY and supports auto-negotiation for a full and half duplex with 10 and 100-based connections. The device features network indicator LEDs for full/half duplex, link, 10/100 speed, and active status.
Features
Compatible with Raspberry Pi Pico (W)
Built-in RJ45 with Transformer: Ethernet Port
Support 4 independent SOCKETs simultaneously
Support Hardwired TCP/IP Protocols: TCP, UDP, ICMP, IPv4, ARP, IGMP, PPPoE
Ethernet power down mode and Wake on LAN over UDP for energy-saving
10Base-T/100Base-TX Ethernet PHY with auto-negotiation for full and half duplex with 10 and 100-based connections
Network indicator LEDs for full/half duplex, link, 10/100 speed, and active status
RP2040 pins breakout with female pin header for other shield and peripheral interfacing
1.3' TFT LCD (240 x 240) and a 5-way joystick for user experience
SPI, I²C, UART interfacing
Dimensions: 74.54 x 21.00 mm
Applications
Internet of Things (IoT) devices
Industrial automation and control systems
Home automation and smart home systems
Remote monitoring and data logging systems
Robotics and autonomous systems
Networked sensor systems
Building automation and energy management systems
Security and access control systems
Downloads
GitHub
Based on direct thermal technology, the Niimbot D110 label printer offers a printing experience without ink, toner or ribbons, making it a cost-effective solution compared to traditional printers. Its compact size and light weight make it easy to transport and fits easily into any pocket.
With Bluetooth connectivity and a built-in 1500 mAh battery, this wireless mini printer allows you to print from up to 10 meters away, giving you flexibility on the go, whether you're printing from your smartphone or tablet.
The "Niimbot" app (available for iOS and Android) offers a variety of free templates for customizing labels.
Specifications
Model
D110_M (Upgraded Version 2024)
Material
ABS
Resolution
203 DPI
Printing speed
30-60 mm/s
Print width
12-15 mm
Printing technology
Thermal
Operating temperature
5°C ~ 45°C (41°F ~ 113°F)
Battery capacity
1500 mAh
Charging interface
USB-C
Charging time
2 hours
Connection
Bluetooth 4.0
Wireless distance
10 m
Dimensions
98 x 76 x 30 mm
Weight
149 g
Included
1x Niimbot D110 Label Printer
1x Label tape (12 x 40 mm)
1x USB cable
1x Manual
Downloads
iOS App
Android App
From basics to flows for sensors, automation, motors, MQTT, and cloud services
This book is a learning guide and a reference. Use it to learn Node-RED, Raspberry Pi Pico W, and MicroPython, and add these state-of-the-art tools to your technology toolkit. It will introduce you to virtual machines, Docker, and MySQL in support of IoT projects based on Node-RED and the Raspberry Pi Pico W.
This book combines several elements into a platform that powers the development of modern Internet of Things applications. These elements are a flow-based server, a WiFi-enabled microcontroller, a high-level programming language, and a deployment technology. Combining these elements gives you the tools you need to create automation systems at any scale. From home automation to industrial automation, this book will help you get started.
Node-RED is an open-source flow-based development tool that makes it easy to wire together devices, APIs, and online services. Drag and drop nodes to create a flowchart that turns on your lights at sunset or sends you an email when a sensor detects movement. Raspberry Pi Pico W is a version of the Raspberry Pi Pico with added 802.11n Wi-Fi capability. It is an ideal device for physical computing tasks and an excellent match to the Node-RED.
Quick book facts
Project-based learning approach.
Assumes no prior knowledge of flow-based programming tools.
Learn to use essential infrastructure tools in your projects, such as virtual machines, Docker, MySQL and useful web APIs such as Google Sheets and OpenWeatherMap.
Dozens of mini-projects supported by photographs, wiring schematics, and source code. Get these from the book GitHub repository.
Step-by-step instructions on everything.
All experiments are based on the Raspberry Pi Pico W. A Wi-Fi network is required for all projects.
Hardware (including the Raspberry Pi Pico W) is available as a kit.
Downloads
GitHub
From basics to flows for sensors, automation, motors, MQTT, and cloud services
This book is a learning guide and a reference. Use it to learn Node-RED, Raspberry Pi Pico W, and MicroPython, and add these state-of-the-art tools to your technology toolkit. It will introduce you to virtual machines, Docker, and MySQL in support of IoT projects based on Node-RED and the Raspberry Pi Pico W.
This book combines several elements into a platform that powers the development of modern Internet of Things applications. These elements are a flow-based server, a WiFi-enabled microcontroller, a high-level programming language, and a deployment technology. Combining these elements gives you the tools you need to create automation systems at any scale. From home automation to industrial automation, this book will help you get started.
Node-RED is an open-source flow-based development tool that makes it easy to wire together devices, APIs, and online services. Drag and drop nodes to create a flowchart that turns on your lights at sunset or sends you an email when a sensor detects movement. Raspberry Pi Pico W is a version of the Raspberry Pi Pico with added 802.11n Wi-Fi capability. It is an ideal device for physical computing tasks and an excellent match to the Node-RED.
Quick book facts
Project-based learning approach.
Assumes no prior knowledge of flow-based programming tools.
Learn to use essential infrastructure tools in your projects, such as virtual machines, Docker, MySQL and useful web APIs such as Google Sheets and OpenWeatherMap.
Dozens of mini-projects supported by photographs, wiring schematics, and source code. Get these from the book GitHub repository.
Step-by-step instructions on everything.
All experiments are based on the Raspberry Pi Pico W. A Wi-Fi network is required for all projects.
Hardware (including the Raspberry Pi Pico W) is available as a kit.
Downloads
GitHub
Note: NodeMCU is the name of both a firmware and a boardNodeMCU is an open source IoT platform, whose firmware runs on Espressif's SoC Wi-Fi ESP8266, based on the ESP8266 nonOS SDK. Its hardware is based on the ESP-12 module. The scripting language is Lua which allows to use many open source projects like lua-cjson and spiffs. Features Wi-Fi Module – ESP-12E module similar to ESP-12 module but with 6 extra GPIOs. USB – micro USB port for power, programming and debugging Headers – 2x 2.54 mm 15-pin header with access to GPIOs, SPI, UART, ADC, and power pins Reset & Flash buttons Power: 5V via micro USB port Dimensions: 49 x 24.5 x 13 mm
The nRF52840 dongle is a small, low-cost USB dongle that supports Bluetooth 5.3, Bluetooth mesh, Thread, ZigBee, 802.15.4, ANT and 2.4 GHz proprietary protocols. The dongle is the perfect target hardware for use with nRF Connect for Desktop as it is low-cost but still support all the short range wireless standards used with Nordic devices.
The dongle has been designed to be used as a wireless HW device together with nRF Connect for Desktop. For other use cases please do note that there is no debug support on the dongle, only support for programming the device and communicating through USB.
It is supported by most of the nRF Connect for Desktop apps and will automatically be programmed if needed. In addition custom applications can be compiled and downloaded to the dongle. It has a user programmable RGB LED, a green LED, a user programmable button as well as 15 GPIO accessible from castellated solder points along the edge. Example applications are available in the nRF5 SDK under the board name PCA10059.
The nRF52840 dongle is supported by nRF Connect for Desktop as well as programming through nRFUtil.
Features
Bluetooth 5.2 ready multiprotocol radio
2 Mbps
Long Range
Advertising Extensions
Channel Selection Algorithm #2 (CSA #2)
IEEE 802.15.4 radio support
Thread
ZigBee
Arm Cortex-M4 with floating point support
DSP instruction set
ARM CryptoCell CC310 cryptographic accelerator
15 GPIO available via edge castellation
USB interface direct to nRF52840 SoC
Integrated 2.4 GHz PCB antenna
1 user-programmable button
1 user-programmable RGB LED
1 user-programmable LED
1.7-5.5 V operation from USB or external
Downloads
Datasheet
Hardware Files
This set contains 3 nozzles for Hot Air Rework Stations such as ZD-8922 or ZD-8968.
Included
1x Hot air nozzle 79-3911
1x Hot air nozzle 79-3912
1x Hot air nozzle 79-3913