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.
ILI9341 is a 262144-color single-chip SOC driver for a TFT liquid crystal display with resolution of 240x320 dots (RGB), comprising a 720-channel source driver, a 320-channel gate driver, 172800 bytes GRAM for graphic display data of 240x320 dots (RGB), and power supply circuit.ILI9341 supports parallel 8-/9-/16-/18-bit data bus MCU interface, 6-/16-/18-bit data bus RGB interface and 3-/4-line serial peripheral interface (SPI).The moving picture area can be specified in internal GRAM by window address function. The specified window area can be updated selectively, so that moving picture can be displayed simultaneously independent of still picture area.ILI9341 can operate with 1.65V ~ 3.3V I/O interface voltage and an incorporated voltage follower circuit to generate voltage levels for driving an LCD.ILI9341 supports full color, 8-color display mode and sleep mode for precise power control by software and these features make the ILI9341 an ideal LCD driver for medium or small size portable products such as digital cellular phones, smart phone, MP3 and PMP where long battery life is a major concern.Features
Display resolution: 240 x 320 (RGB)
Output: 720 source outputs | 320 gate outputs | Common electrode output (VCOM)
a-TFT LCD driver with on-chip full display RAM: 172,800 bytes
System Interface
8-bits, 9-bits, 16-bits, 18-bits interface with 8080-Ⅰ/8080- Ⅱ series MCU
6-bits, 16-bits, 18-bits RGB interface with graphic controller
3-line / 4-line serial interface
Display mode:
Full color mode (Idle mode OFF): 262K-color
Reduced color mode (Idle mode ON): 8-color
Power saving modes:
Sleep mode
Deep standby mode
On chip functions:
VCOM generator and adjustment
Timing generator
Oscillator
DC/DC converter
Line/frame inversion
1 preset Gamma curve with separate RGB Gamma correction
Content Adaptive Brightness Control
MTP (3 times):
8-bits for ID1, ID2, ID3
7-bits for VCOM adjustment
Low-power consumption architecture
Low operating power supplies:
VDDI = 1.65V ~ 3.3V (logic)
VCI = 2.5V ~ 3.3V (analog)
LCD Voltage drive:
Source/VCOM power supply voltage
AVDD - GND = 4.5V ~ 5.5V
VCL - GND = -2.0V ~ -3.0V
Gate driver output voltage
VGH - GND = 10.0V ~ 20.0V
VGL - GND = -5.0V ~ -15.0V
VGH - VGL 3 ≦ 2V
VCOM driver output voltage
VCOMH = 3.0V ~ (AVDD – 0.5)V
VCOML = (VCL+0.5)V ~ 0V
VCOMH - VCOML ≦ 6.0V
Operate temperature range: -40℃ to 85℃
DC brushed motors are the most commonly used and widely available motors in the market. The Cytron 10 Amp 5-30 V DC Motor Driver will help you add functionality to your DC motor. It supports both sign-magnitude PWM signal and locked-antiphase. It is compatible with full solid-state components resulting in higher response time and eliminates the wear and tear of the mechanical relay. Features Supports motor voltage from 5 V to 30 V DC Current up to 13 A continuous and 30 A peak 3.3 V and 5 V logic level input Compatible with Arduino and Raspberry Pi Speed control PWM frequency up to 20 kHz Fully NMOS H-Bridge for better efficiency No heat sink is required Bi-directional control for one Brushed DC motor Regenerative Braking Downloads User Manual Arduino Library
The Raspberry Pi Pico 2 W is a microcontroller board based on the RP2350 featuring 2.4 GHz 802.11n wireless LAN and Bluetooth 5.2. It gives you even more flexibility in your IoT or smart product designs and expanding the possibilities for your projects.
The RP2350 provides a comprehensive security architecture built around Arm TrustZone for Cortex-M. It incorporates signed boot, 8 KB of antifuse OTP for key storage, SHA-256 acceleration, a hardware TRNG, and fast glitch detectors.
The unique dual-core, dual-architecture capability of the RP2350 allows users to choose between a pair of industry-standard Arm Cortex-M33 cores and a pair of open-hardware Hazard3 RISC-V cores. Programmable in C/C++ and Python, and supported by detailed documentation, the Raspberry Pi Pico 2 W is the ideal microcontroller board for both enthusiasts and professional developers.
Specifications
CPU
Dual Arm Cortex-M33 or dual RISC-V Hazard3 processors @ 150 MHz
Wireless
On-board Infineon CYW43439 single-band 2.4 GHz 802.11n wireless Lan and Bluetooth 5.2
Memory
520 KB on-chip SRAM; 4 MB on-board QSPI flash
Interfaces
26 multi-purpose GPIO pins, including 4 that can be used for AD
Peripherals
2x UART
2x SPI controllers
2x I²C controllers
24x PWM channels
1x USB 1.1 controller and PHY, with host and device support
12x PIO state machines
Input power
1.8-5.5 V DC
Dimensions
21 x 51 mm
Downloads
Datasheet
Pinout
Schematic
The Raspberry Pi AI Camera is a compact camera module based on the Sony IMX500 Intelligent Vision Sensor. The IMX500 combines a 12 MP CMOS image sensor with on-board inferencing acceleration for various common neural network models, allowing users to develop sophisticated vision-based AI applications without requiring a separate accelerator.
The AI Camera enhances captured still images or video with tensor metadata, while keeping the Raspberry Pi's processor free for other tasks. Support for tensor metadata in the libcamera and Picamera2 libraries, as well as the rpicam-apps application suite, ensures ease of use for beginners while providing unparalleled power and flexibility for advanced users.
The Raspberry Pi AI Camera is compatible with all Raspberry Pi models.
Features
12 MP Sony IMX500 Intelligent Vision Sensor
Sensor modes: 4056x3040 (@ 10fps), 2028x1520 (@ 30fps)
1.55 x 1.55 µm cell size
78-degree field of view with manually adjustable focus
Integrated RP2040 for neural network and firmware management
Specifications
Sensor
Sony IMX500
Resolution
12.3 MP (4056 x 3040 pixels)
Sensor size
7.857 mm (type 1/2.3)
Pixel size
1.55 x 1.55 μm
IR cut filter
Integrated
Autofocus
Manual adjustable focus
Focus range
20 cm – ∞
Focal length
4.74 mm
Horizontal FOV
66 ±3°
Vertical FOV
52.3 ±3°
Focal ratio (F-stop)
F1.79
Output
Image (Bayer RAW10), ISP output (YUV/RGB), ROI, metadata
Input tensor maximum size
640 x 640 (H x V)
Framerate
• 2x2 binned: 2028x1520 10-bit 30fps• Full resolution: 4056x3040 10-bit 10fps
Ribbon cable length
20 cm
Cable connector
15 x 1 mm FPC or 22 x 0.5 mm FPC
Dimensions
25 x 24 x 11.9 mm
Downloads
Datasheet
Documentation
The FNIRSI S1 portable digital multimeter can accurately measure AC/DC voltage, resistance, NCV, diode, continuity, capacitance, temperature, frequency and live wire. It is a really useful tool for solving electrical issues in industry and the home. It is suitable for household sockets, fuses, batteries (including vehicles), troubleshooting automotive circuits, charging systems, testing electronics in cars, etc.
Smart Multimeter
The multimeter can automatically detect AC/DC voltage, resistance and continuity, which is suitable for both beginners and professionals.
Specifications
AC voltage
0~1000 V
±(0.8% +3)
DC voltage
0~1000 V
±(0.8% +3)
Resistance
0~100 MΩ
±(1.2% +3)
Capacitance
0 nF~10 mF
±(4.5% +5)
Frequency
0 Hz~10 Mhz
±(0.1% +3)
Temperature
−20~1000°C
±(2% +5)
Diode
Yes
Automatic OFF
Yes
Lighting
Yes
On-off buzzer
Yes
Auto range
Yes
NCV induced voltage
Yes
Live mode
Yes
Data hold
Yes
Analog
Yes
Low voltage indication
Yes
Max range
9999 counts
Valid value
50 Hz~1 kHz
Material
ABS
Display
VA color screen
Power supply
via USB-C (1000 mA rechargeable lithium battery)
Dimensions
143 x 75 x 19 mm
Weight
135 g
Included
FNIRSI S1 Multimeter
Tip table pen
Temperature probe
USB cable
Manual
Downloads
Manual
An Introduction to RISC-V
RISC-V is an Instruction Set Architecture (ISA) that is both free and open. This means that the RISC-V ISA itself does not require a licensing fee, although individual implementations may do so. The RISC-V ISA is curated by a non-profit foundation with no commercial interest in products or services that use it, and it is possible for anyone to submit contributions to the RISC-V specifications. The RISC-V ISA is suitable for applications ranging from embedded microcontrollers to supercomputers.
This book will first describe the 32-bit RISC-V ISA, including both the base instruction set as well as the majority of the currently-defined extensions. The book will then describe, in detail, an open-source implementation of the ISA that is intended for embedded control applications. This implementation includes the base instruction set as well as a number of standard extensions.
After the description of the CPU design is complete the design is expanded to include memory and some simple I/O. The resulting microcontroller will then be implemented in an affordable FPGA development board (available from Elektor) along with a simple software application so that the reader can investigate the finished design.
A Fast-Lane Ride From Concept to Project
The core of the book explains the use of the Raspberry Pi Zero 2 W running the Python programming language, always in simple terms and backed by many tested and working example projects. On part of the reader, familiarity with the Python programming language and some experience with one of the Raspberry Pi computers will prove helpful. Although previous electronics experience is not required, some knowledge of basic electronics is beneficial, especially when venturing out to modify the projects for your own applications.
Over 30 tested and working hardware-based projects are given in the book, covering the use of Wi-Fi, communication with smartphones and with a Raspberry Pi Pico W computer. Additionally, there are Bluetooth projects including elementary communication with smartphones and with the popular Arduino Uno. Both Wi-Fi and Bluetooth are key features of the Raspberry Pi Zero 2 W.
Some of the topics covered in the book are:
Raspberry Pi OS installation on an SD card
Python program creation and execution on the Raspberry Pi Zero 2 W
Software-only examples of Python running on the Raspberry Pi Zero 2 W
Hardware-based projects including LCD and Sense HAT interfacing
UDP and TCP Wi-Fi based projects for smartphone communication
UDP-based project for Raspberry Pi Pico W communication
Flask-based webserver project
Cloud storage of captured temperature, humidity, and pressure data
TFT projects
Node-RED projects
Interfacing to Alexa
MQTT projects
Bluetooth-based projects for smartphone and Arduino Uno communications
The Arduino Nano RP2040 Connect is an RP2040-based Arduino board equipped with Wi-Fi (802.11b/g/n) and Bluetooth 4.2.
Besides wireless connectivity the board comes with a microphone for sound and voice activation and a six-axis smart motion sensor with AI capabilities. An RGB LED is available too. 22 GPIO ports (20 with PWM support and eight analogue inputs) let the user control e.g. relays, motors and LEDs and read switches and other sensors.
Program memory is plentiful with 16 MB of flash memory, more than enough room for storing many webpages or other data.
Specifications
Microcontroller
Raspberry Pi RP2040
USB connector
Micro USB
Pins
Built-in LED pins
13
Digital I/O pins
20
Analog Input pins
8
PWM pins
20 (Except A6, A7)
External interrupts
20 (Except A6, A7)
Connectivity
Wi-Fi
Nina W102 uBlox module
Bluetooth
Nina W102 uBlox module
Secure element
ATECC608A-MAHDA-T Crypto IC
Sensors
IMU
LSM6DSOXTR (6-axis)
Microphone
MP34DT05
Communication
UART
Yes
I²C
Yes
SPI
Yes
Power
Circuit operating voltage
3.3 V
Input Voltage (VIN)
5-21 V
DC Current per I/O pin
4 mA
Clock speed
Processor
133 MHz
Memory
AT25SF128A-MHB-T
16 MB Flash IC
Nina W102 uBlox module
448 KB ROM, 520 KB SRAM, 16 MB Flash
Dimensions
45 x 18 mm
Weight
6 g
Downloads
Schematics
Pinout
Datasheet
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.
SD card quality is crucial for a good Raspberry Pi experience. Raspberry Pi's A2 microSD cards support higher bus speeds and command queuing, improving random read performance and narrowing the gap with NVMe SSDs. These cards are rigorously tested for optimal performance with Raspberry Pi models.
Features
Capacity: 64 GB
Support for DDR50 and SDR104 bus speeds and command queueing (CQ) extension
Speed Class: C10, U3, V30, A2
Random 4 KB read performance: 3,200 IOPS (Raspberry Pi 4, DDR50) 5,000 IOPS (Raspberry Pi 5, SDR104)
Random 4 K write performance: 1,200 IOPS (Raspberry Pi 4, DDR50) 2,000 IOPS (Raspberry Pi 5, SDR104)
Shock-proof, X-ray–proof, and magnet-proof
microSDHC/microSDXC formats
Downloads
Datasheets
The Raspberry Pi M.2 HAT+ enables you to connect M.2 peripherals such as NVMe drives and AI accelerators to Raspberry Pi 5’s PCIe 2.0 interface, supporting fast (up to 500 MB/s) data transfer to and from NVMe drives and other PCIe accessories.
Raspberry Pi M.2 HAT+ supports devices that have the M.2 M key edge connector, in the 2230 and 2242 form factors. It is capable of supplying up to 3 A to connected M.2 devices.
Features
Supports single-lane PCIe 2.0 interface (500 MB/s peak transfer rate)
Supports devices that use the M.2 M key edge connector
Supports devices with the 2230 or 2242 form factor
Capable of supplying up to 3 A to connected M.2 devices
Power and activity LEDs
Included
1x Raspberry Pi 5 M.2 HAT+
1x Ribbon cable
1x GPIO stacking header
4x Spacers
8x Screws
Downloads
Datasheet
Schematics
Assembly instructions
A Hands-on Guide to Crafting Your Own Power Plant
The book you are about to read provides a step-by-step guide for building a renewable energy power plant at home. Our goal was to make the book as practical as possible. The material is intended for immediate application with a small amount of theory. Yet, the theory is important as a foundation that saves time and effort by disabusing the readers of potential misconceptions. Specifically, upon having a firm understanding of photovoltaic physics, you will not be inclined to fruitlessly search for 90% efficient solar panels!
We want our readers to be the “doers”. If the book gets covered in grime and some pages become torn while you are building your power plant – this is the best compliment to us. The book covers solar and wind energy. Also, a curious power source based on manure is discussed as well, giving the doers an opportunity to further develop the manure fuel cell.
It is important to note that there are many companies offering installation of complete solar solutions. Upon installing the panels, the system is not owned by the customer. Therefore, there is no freedom for experimentation and optimization. Also, none can beat the cost of a DIY solution as well as the ultimate satisfaction.
All that is written here is a result of us building a renewable energy solution in Southern California. As the book was completed, the energy began flowing!
This aluminium-based Armor Case is perfect for your Raspberry Pi 4 if it gets hot, as this protects it against shocks and heat equally. Channel milling combined with dual fans offers best cooling performance. That‘s why it is suitable for extreme settings. Another benefit is that this case does not need more space than the Raspberry Pi itself and can be integrated in existing projects.Features
Material: CNC milled aluminium alloy
Compatible with Raspberry Pi 4B
Assembly: 4 included screws connect the case to the Raspberry Pi
Special features: Large heat sink and dual fan each Ø24 mm, massive protection against heat and shocks, no additional space needed
Wiring: Fan 5V (Red) - 5V (Pin4), Fan GND (Black) - GND (Pin6)
Scope of delivery: Armor case “BLOCK ACTIVE”, screws, thermal tape
Size top side: 69 x 56 x 15.5 mm
Size bottom side: 87 x 56 x 7.5 mm
DownloadsManual
This set contains 3 desoldering tips for digital desoldering stations such as ZD-915 or ZD-8965.
Included
1x Desoldering tip N5-1 (0.8 mm)
1x Desoldering tip N5-2 (1.0 mm)
1x Desoldering tip N5-3 (1.3 mm)
This FTDI USB to TTL (3.3 V I/O) Serial Cable (FTDI TTL-232R-3V3 OEM) is a professional, high quality, high speed device which allows a simple and easy way to connect TTL interface devices using a spare USB port. Features TTL-232R-3V3 FTDI USB to TTL 3.3 V Serial Cable FTDI TTL-232R-3V3 Cable 6 Way The FTDI USB to TTL 3.3 V features a FTDI FT232R device integrated within the cable FTDI USB to TTL Serial 3.3 V Adapter Cable 6 Pin 0.1' Female Socket Header UART IC FT232RL Chip Compatible with Windows 7/8/10 and Linux
40+ Projects using Arduino, Raspberry Pi and ESP32
This book is about developing projects using the sensor-modules with Arduino Uno, Raspberry Pi and ESP32 microcontroller development systems. More than 40 different sensors types are used in various projects in the book. The book explains in simple terms and with tested and fully working example projects, how to use the sensors in your project. The projects provided in the book include the following:
Changing LED brightness
RGB LEDs
Creating rainbow colours
Magic wand
Silent door alarm
Dark sensor with relay
Secret key
Magic light cup
Decoding commercial IR handsets
Controlling TV channels with IT sensors
Target shooting detector
Shock time duration measurement
Ultrasonic reverse parking
Toggle lights by clapping hands
Playing melody
Measuring magnetic field strength
Joystick musical instrument
Line tracking
Displaying temperature
Temperature ON/OFF control
Mobile phone-based Wi-Fi projects
Mobile phone-based Bluetooth projects
Sending data to the Cloud
The projects have been organized with increasing levels of difficulty. Readers are encouraged to tackle the projects in the order given. A specially prepared sensor kit is available from Elektor. With the help of this hardware, it should be easy and fun to build the projects in this book.
Practical Applications and Project with Arduino, ESP32, and RP2040
Immerse yourself in the fascinating world of control engineering with Arduino and ESP32! This book offers you a practical introduction to classic and modern control methods, including PID controllers, fuzzy logic, and sliding-mode controllers.
In the first part, you will learn the basics of the popular Arduino controllers, such as the Arduino Uno and the ESP32, as well as the integration of sensors for temperature and pH measurement (NTC, PT100, PT1000, and pH sensor).
You will learn how to use these sensors in various projects and how to visualize data on a Nextion TFT display. The course continues with an introduction to actuators such as MOSFET switches, H-bridges, and solid-state relays, which are used to control motors and actuators. You will learn to analyze and model controlled systems, including PT1 and PT2 control.
The book focuses on the implementation of fuzzy and PID controllers for controlling temperature and DC motors. Both the Arduino Uno and the ESP32 are used. The sliding-mode controller is also introduced.
In the second-to-last chapter, you will explore the basics of neural networks and learn how machine learning can be used on an Arduino. In the last chapter, there is a practical example of a fuzzy controller for feeding electricity into the household grid.
This book is the perfect choice for engineers, students, and electronics engineers who want to expand their projects with innovative control techniques.
No more searching for micro-SD cards, SD adapters, USB-C adapters or USB devices. It’s all here, every time you’re ready to prototype a project, in one neat and tidy package.
Our example configuration holds your Raspberry Pi 4, a 400-point clear breadboard, 4 micro-SD cards, an SD-adapter, 4x USB devices and 2x universal slots (great for USB-C adapters or anything else you want to store).
You can of course use the storage slots for whatever you like... Customise it and use it in whatever way works best for you!
Despite sitting flush with the top glass-effect acrylic layer of the dock, all of the Raspberry Pi’s ports are accessible, including access to the micro-SD slot. HATs can also be fitted.
The dock is made up of 4 slick, sandwiched layers of matte black and glass-effect laser-cut acrylic! A really stunning and useful home for your Raspberry Pi and projects!
Assembly guide available here.
Kit includes
4 layer laser-cut acrylic dock
400-point clear breadboard
Fixings and spacers
Third, extended and revised edition with AVR Playground and Elektor Uno R4
Arduino boards have become hugely successful. They are simple to use and inexpensive. This book will not only familiarize you with the world of Arduino but it will also teach you how to program microcontrollers in general. In this book theory is put into practice on an Arduino board using the Arduino programming environment.
Some hardware is developed too: a multi-purpose shield to build some of the experiments from the first 10 chapters on; the AVR Playground, a real Arduino-based microcontroller development board for comfortable application development, and the Elektor Uno R4, an Arduino Uno R3 on steroids.
The author, an Elektor Expert, provides the reader with the basic theoretical knowledge necessary to program any microcontroller: inputs and outputs (analog and digital), interrupts, communication busses (RS-232, SPI, I²C, 1-wire, SMBus, etc.), timers, and much more. The programs and sketches presented in the book show how to use various common electronic components: matrix keyboards, displays (LED, alphanumeric and graphic color LCD), motors, sensors (temperature, pressure, humidity, sound, light, and infrared), rotary encoders, piezo buzzers, pushbuttons, relays, etc. This book will be your first book about microcontrollers with a happy ending!
This book is for you if you are a beginner in microcontrollers, an Arduino user (hobbyist, tinkerer, artist, etc.) wishing to deepen your knowledge,an Electronics Graduate under Undergraduate student or a teacher looking for ideas.
Thanks to Arduino the implementation of the presented concepts is simple and fun. Some of the proposed projects are very original:
Money Game
Misophone (a musical fork)
Car GPS Scrambler
Weather Station
DCF77 Decoder
Illegal Time Transmitter
Infrared Remote Manipulator
Annoying Sound Generator
Italian Horn Alarm
Overheating Detector
PID Controller
Data Logger
SVG File Oscilloscope
6-Channel Voltmeter
All projects and code examples in this book have been tried and tested on an Arduino Uno board. They should also work with the Arduino Mega and every other compatible board that exposes the Arduino shield extension connectors.
Please note
For this book, the author has designed a versatile printed circuit board that can be stacked on an Arduino board. The assembly can be used not only to try out many of the projects presented in this book but also allows for new exercises that in turn provide the opportunity to discover new techniques. Also available is a kit of parts including the PCB and all components. With this kit you can build most of the circuits described in the book and more.
Datasheets Active Components Used (.PDF file):
ATmega328 (Arduino Uno)
ATmega2560 (Arduino Mega 2560)
BC547 (bipolar transistor, chapters 7, 8, 9)
BD139 (bipolar power transistor, chapter 10)
BS170 (N-MOS transistor, chapter 8)
DCF77 (receiver module, chapter 9)
DS18B20 (temperature sensor, chapter 10)
DS18S20 (temperature sensor, chapter 10)
HP03S (pressure sensor, chapter 8)
IRF630 (N-MOS power transistor, chapter 7)
IRF9630 (P-MOS power transistor, chapter 7)
LMC6464 (quad op-amp, chapter 7)
MLX90614 (infrared sensor, chapter 10)
SHT11 (humidity sensor, chapter 8)
TS922 (dual op-amp, chapter 9)
TSOP34836 (infrared receiver, chapter 9)
TSOP1736 (infrared receiver, chapter 9)
MPX4115 (analogue pressure sensor, chapter 11)
MCCOG21605B6W-SPTLYI (I²C LCD, chapter 12)
SST25VF016B (SPI EEPROM, chapter 13)
About the author
Clemens Valens, born in the Netherlands, lives in France since 1997. Manager at Elektor Labs and Webmaster of ElektorLabs, in love with electronics, he develops microcontroller systems for fun, and sometimes for his employer too. Polyglot—he is fluent in C, C++, PASCAL, BASIC and several assembler dialects—Clemens spends most of his time on his computer while his wife, their two children and two cats try to attract his attention (only the cats succeed). Visit the author’s website: www.polyvalens.com.Authentic testimony of Hervé M., one of the first readers of the book:'I almost cried with joy when this book made me understand things in only three sentences that seemed previously completely impenetrable.'
The Elektor Milliohmmeter Adapter uses the precision of a multimeter to measure very low resistance values. It is an adapter that converts a resistance into a voltage that can be measured with a standard multimeter.
The Elektor Milliohmmeter Adapter can measure resistances below 1 mΩ using a 4-wire (Kelvin) method. It is useful for locating short circuits on printed circuit boards (PCB).
The adapter features three measurement ranges – 1 mΩ, 10 mΩ, and 100 mΩ – selectable via a slide switch. It also includes onboard calibration resistors. The Elektor Milliohmmeter Adapter is powered by three 1.5 V AA batteries (not included).
Specifications
Measurement ranges
1 mΩ, 10 mΩ, 100 mΩ, 0.1%
Power supply
3x 1.5 V AA batteries (not included)
Dimensions
103 x 66 x 18 mm (compatible with Hammond 1593N-type enclosure, not included)
Special feature
On-board calibration resistors
Downloads
Documentation
Cytron Maker Pi RP2040 features the first microcontroller designed by Raspberry Pi – RP2040, embedded on a robot controller board. This board comes with dual channel DC motor driver, 4 servo motor ports and 7 Grove I/O connectors, ready for your next DIY robot / motion control project. Now you can build robot, while trying out the new RP2040 chip. The DC motor driver onboard is able to control 2x brushed DC motors or 1x bipolar/unipolar stepper motor rated from 3.6 V to 6 V, providing up to 1 A current per channel continuously. The built-in Quick Test buttons and motor output LEDs allow functional test of the motor driver in a quick and convenient way, without the need of writing any code. Vmotor for both DC and servo motors depends on the input voltage supplied to the board. Maker Pi RP2040 features all the goodness of Cytron's Maker series products. It too has lots of LEDs useful for troubleshooting (& visual effects), is able to make quite some noise with the onboard piezo buzzer and comes with push buttons ready to detect your touch. There are three ways to supply power to the Maker Pi RP2040 – via USB (5 V) socket, with a single cell LiPo/Li-Ion battery or through the VIN (3.6-6 V) terminals. However only one power source is needed to power up both controller board and motors at a time. Power supply from all these power sources can all be controlled with the power on/off switch onboard. Cytron Maker Pi RP2040 is basically the Raspberry Pi Pico + Maker series' goodness + Robot controller & other useful features. Therefore this board is compatible with the existing Pico ecosystem. Software, firmware, libraries and resources that are developed for Pico should work seamlessly with Cytron Maker Pi RP2040 too. CircuitPython is preloaded on the Maker Pi RP2040 and it runs a simple demo program right out-of-the-box. Connect it to your computer via USB micro cable and turn it on, you will be greeted by a melody tune and LEDs running light. Press GP20 and GP21 push buttons to toggle the LEDs on/off, while controlling any DC and servo motors connected to it to move and stop. With this demo code, you get to test the board the moment you receive it! While connected to your computer, a new CIRCUITPY drive appears. Explore and edit the demo code (code.py & lib folder) with any code editor you like, save any changes to the drive and you shall see it in action in no time. That's why we embrace CircuitPython – it's very easy to get started. Wish to use other programming lauguages? Sure, you are free to use MicroPython and C/C++ for Pico/RP2040. For those of you who loves the Arduino ecosystem, please take a look at this official news by Arduino and also the unofficial Pico Arduino Core by Earle F. Philhower. Features Powered by Rapberry Pi RP2040 Dual-core Arm Cortex-M0+ processor 264 KB internal RAM 2 MB of Flash memory the exact same specifications with Raspberry Pi Pico Robot controller board 4x Servo motors 2x DC motors with quick test buttons Versatile power circuit Automatic power selection: USB 5 V, LiPo (1-cell) or Vin (3.6-6 V) Built-in 1-cell LiPo/Li-Ion charger (over-charged & over-discharged protection) Power on/off switch 13x Status indicator LEDs for GPIO pins 1x Piezo buzzer with mute switch 2x Push button 2x RGB LED (Neopixel) 7x Grove ports (flexible I/O options: digital, analog, I²C, SPI, UART...) Preloaded with CircuitPython by default Mouting holes 4x 4.8 mm mounting hole (LEGO pin compatible) 6x M3 screw hole
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?