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.
De Raspberry Pi 500 (gebaseerd op de Raspberry Pi 5) heeft een quad-core 64-bit Arm-processor, RP1 I/O-controller, 8 GB RAM, draadloze netwerken, dual-display uitgang, 4K videoweergave en een 40-pins GPIO-header. Het is een krachtige, compacte all-in-one computer ingebouwd in een draagbaar toetsenbord.
Het ingebouwde aluminium koellichaam zorgt voor verbeterde thermische prestaties, waardoor de Raspberry Pi 500 snel en soepel werkt, zelfs onder zware belasting.
Specificaties
SoC
Broadcom BCM2712
CPU
ARM Cortex-A76 (ARM v8) 64-bit
Kloksnelheid
4x 2,4 GHz
GPU
VideoCore VII (800 MHz)
RAM
8 GB LPDDR4X (4267 MHz)
WiFi
IEEE 802.11b/g/n/ac (2,4 GHz/5 GHz)
Bluetooth
Bluetooth 5.0, BLE
Ethernet
Gigabit Ethernet (met PoE+-ondersteuning)
USB
2x USB-A 3.0 (5 GBit/s)1x USB-A 2.01x USB-C (voor voeding)
PCI-Express
1x PCIe 2.0
GPIO
Standaard 40-pins GPIO-header
Video
2x micro-HDMI-poorten (4K60)
Multimedia
H.265 (4K60-decodering)OpenGL ES 3.1, Vulkan 1.2
SD-kaart
microSD
Voeding
5 V DC (via USB-C)
Toetsenbordindeling
US (QWERTY)
Afmetingen
286 x 122 x 23 mm
Inbegrepen
Raspberry Pi 500 (US toetsenbordindeling, QWERTY)
Officiële 27 W voeding voor Raspberry Pi (EU, wit)
Officiële Raspberry Pi muis (wit)
Officiële Raspberry Pi HDMI-kabel (wit, 2 m)
32 GB microSD-kaart met vooraf geïnstalleerd Raspberry Pi OS
The Official Raspberry Pi Beginner's Guide (5th Edition)
Downloads
Datasheet
Features
RP2040 microcontroller chip ontwikkeld door Raspberry Pi in Engeland
Dual-core ARM Cortex M0+ processor, met een kloksnelheid tot 133 MHz
264 kB SRAM, en 2 MB on-board Flash geheugen
Castellated module maakt solderen direct op draagborden mogelijk
USB 1.1 host- en apparaatondersteuning
Energiezuinige slaap- en slapende modi
Programmering via slepen en neerzetten met behulp van massaopslag via USB
26x multifunctionele GPIO-pinnen
2x SPI, 2x I²C, 2× UART, 3x 12-bit ADC, 16x bestuurbare PWM-kanalen
Nauwkeurige klok en timer op de chip
Temperatuursensor
Versnelde drijvende-kommabibliotheken op de chip
8x programmeerbare IO (PIO) toestandsmachines voor aangepaste randapparatuur
Waarom een Raspberry Pi Pico?
Zelf een microcontroller designen in plaats van een bestaande aanschaffen brengt een aantal voordelen met zich mee. Volgens Raspberry Pi zelf komt niet een van de bestaande beschikbare producten hiervoor in de buurt van hun prijs/performance verhouding.
Deze Raspberry Pi Pico heeft Raspberry Pi tevens de mogelijkheid gegeven om zelf een aantal innovatieve en krachtige features toe te voegen. Deze features zijn nergens anders beschikbaar.
Een derde reden is dat de Raspberry Pi Pico de mogelijkheid aan Raspberry Pi heeft gegeven om krachtige software rondom het product te creëren. Rondom deze software stack zit een uitgebreide documentatie set. De software en documentatie voldoen aan de hoge standaard van de kernproducten van Raspberry Pi (zoals de Raspberry Pi 400, Pi 4 Model B en Pi 3 Model A+).
Voor wie is deze microcontroller geschikt?
De Raspberry Pi Pico is voor zowel de gevorderde als beginnende gebruiker geschikt. Van het bedienen van een lichtscherm tot het bedienen van veel verschillende apparaten die je dagelijks gebruikt. Veel dagelijkse bewerkingen worden door deze technologie mogelijk gemaakt.
Beginnende gebruikers
De Raspberry Pi Pico is programmeerbaar in de talen C en MicroPython en aanpasbaar voor een breed scala aan apparaten. Daarnaast is de Pico net zo eenvoudig in gebruik als het slepen en neerzetten van bestanden. Dit maakt deze microcontroller bij uitstek geschikt voor de beginnende gebruiker.
Gevorderde gebruikers
Voor de gevorderde gebruikers is het mogelijk om gebruik te maken van de uitgebreide randapparatuur van de Pico. De randapparatuur bestaat onder andere uit de SPI, I²C en acht programmeerbare I/O (PIO) -toestandsmachines.
Wat is uniek aan de Raspberry Pi Pico?
Uniek aan de Pico is dat deze is ontwikkeld door Raspberry Pi zelf. De RP2040 is voorzien van een dual-core Arm Cortex-M0 + processor met 264 KB intern RAM en ondersteuning voor maximaal 16 MB off-chip Flash.
De Raspberry Pi Pico is verder uniek om verschillende redenen:
Het product heeft de hoogste prijs/kwaliteit verhouding in de markt van de microcontrollerboards
De Raspberry Pi Pico is door Raspberry Pi zelf ontwikkeld
De software stack rondom dit product is van hoogwaardige kwaliteit en komt in combinatie met een uitgebreide documentatie set.
Features Suitable for Raspberry Pi + GPIO Extension Board Exquisite appearance DIY operation Specifications Size of GPIO Extension Board: 7.5 x 6 cm (3 x 2.4') Size of Breadboard: 16.5 x 5.5 x 1 cm (6.5 x 2.2 x 0.4') Included 1x GPIO Extension Board 1x Breadboard 1x 40P Pin Connect Line 8x 1K Resistor 8x 10K Resistor 4x LED (yellow) 4x LED (red) 4x Key 10x 25 mm Jumper Wires A 10x 25 mm Jumper Wires B
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.
De Raspberry Pi Pico W is een microcontroller board gebaseerd op de Raspberry Pi RP2040 microcontroller chip.
De RP2040-microcontrollerchip ('Raspberry Silicon') heeft een dual-core ARM Cortex-M0+ processor (133 MHz), 256 KB RAM, 30 GPIO-pinnen, en nog vele andere interface opties. Daarnaast is er 2 MB on-board QSPI-flashgeheugen voor code- en gegevensopslag.
De Raspberry Pi Pico W is ontworpen als een goedkoop maar flexibel ontwikkelingsplatform voor de RP2040, met een 2,4 GHz draadloze interface met de Infineon CYW43439. De draadloze interface is via SPI aangesloten op de RP2040.
Kenmerken van de Pico W
RP2040 microcontroller met 2 MB flashgeheugen
On-board single-band 2,4 GHz draadloze interfaces (802.11n)
Micro USB B poort voor voeding en data (en voor het herprogrammeren van de flash)
40 pin 21 x 51 mm 'DIP' stijl 1 mm dikke PCB met 0,1' through-hole pinnen met ook gegroefde gaten.
Beschikt over 26 multifunctionele 3,3 V I/O voor algemeen gebruik (GPIO)
23 GPIO zijn alleen digitaal, en 3 GPIO die ook geschikt zijn voor ADC
Kan als opbouw-module worden gemonteerd
3-pins ARM serial wire debug (SWD) poort
Eenvoudige maar zeer flexibele mogelijkheden voor de voeding:
Verschillende opties om het apparaat eenvoudig van stroom te voorzien via micro-USB, externe voedingen of batterijen
Hoge kwaliteit, lage kosten, hoge beschikbaarheid
Uitgebreide SDK, voorbeeldsoftware en documentatie
Kenmerken van de RP2040 microcontroller
Dual-core cortex M0+ tot maximaal 133 MHz
On-chip PLL maakt variabele core-frequentie mogelijk
264 kByte multi-bank SRAM met hoge prestaties
Externe Quad-SPI Flash met eXecute In Place (XIP) en 16 kByte on-chip cache
Hoogwaardige full-crossbar bus architecture
Ingebouwde USB1.1 (device of host)
30 multifunctionele algemene I/O (vier kunnen worden gebruikt voor ADC)
1,8-3,3 V I/O-spanning
12-bits 500 ksps analoog naar digitaal converter (ADC)
Diverse digitale randapparatuur
2x UART, 2x I²C, 2x SPI, 16x PWM kanalen
1x timer met 4 alarmen, 1x real time clock
2x programmeerbare I/O (PIO) blokken, 8 state machines in totaal
Flexibele, door de gebruiker programmeerbare high-speed I/O
Kan interfaces zoals SD-kaart en VGA emuleren
Note: De Raspberry Pi Pico W I/O-spanning is 3,3 V.
Downloads
Datasheet
Specifications of 3-pin Debug Connector
De Raspberry Pi Zero W is de nieuwste telg van de Raspberry Pi Zero-familie. De Raspberry Pi Zero W heeft alle functionaliteit van de originele Raspberry Pi Zero, maar wordt geleverd met toegevoegde connectiviteit bestaande uit:
802.11 b/g/n WLAN
Bluetooth 4.1
Bluetooth Low Energy (BLE)
Overige kenmerken
1 GHz, single-core CPU
512 MB RAM
Mini HDMI en USB On-The-Go poorten
Micro-USB voeding
HAT-compatibele 40-pins header
Composiet video en reset headers
CSI-camera-aansluiting
Downloads
Mechanische tekening
Schema's
De Raspberry Pi Pico WH is een microcontroller board gebaseerd op de Raspberry Pi RP2040 microcontroller chip.
De RP2040 microcontroller ('Raspberry Silicon') maakt gebruik van een dual-core ARM Cortex-M0 + -processor (133 MHz), 256 KB RAM, 30 GPIO-pinnen en vele andere interface opties. Daarnaast heeft hij 2 MB on-board QSPI flash geheugen voor het opslaan van code en data.
De Raspberry Pi Pico WH is ontworpen als een goedkoop maar flexibel ontwikkelplatform voor de RP2040, met een 2.4 GHz draadloze interface die gebruik maakt van een Infineon CYW43439. De draadloze interface is via SPI verbonden met de RP2040.
Kenmerken van de Pico WH
RP2040 microcontroller met 2 MB flash geheugen
On-board single-band 2,4 GHz draadloze interfaces (802.11n)
Micro-USB-B poort voor voeding en data (en voor het herprogrammeren van de flash)
40 pins 21 x 51 mm 'DIP' stijl 1 mm dikke PCB met 0,1' through-hole pinnen, met ook castellations aan de rand
Beschikt over 26 multifunctionele 3,3 V general purpose I/O (GPIO) poorten
23 hiervan zijn alleen digitaal, waarvan er 3 ook geschikt zijn voor ADC
Kan als module op andere bordjes bevestigd worden
3-pins ARM serial wire debug (SWD) poort
Eenvoudige maar zeer flexibele mogelijkheden voor de voeding
Verschillende opties om het apparaat eenvoudig te voeden via micro-USB, externe voedingen of accu’s
Hoge kwaliteit, lage kosten, hoge beschikbaarheid
Uitgebreide SDK, software voorbeelden en documentatie
Voorgemonteerde headers en een 3-pins debug connector
Kenmerken van de RP2040 microcontroller
Dual-core cortex M0+ tot 133 MHz
On-chip PLL maakt variabele clocking van de core mogelijk
264 kByte multi-bank high performance SRAM
Externe Quad-SPI Flash met eXecute In Place (XIP) en 16 kByte on-chip cache
Hoogwaardige full-crossbar bus fabric
On-board USB1.1 (randapparaat of host)
30 multifunctionele general purpose I/O-poorten (4 kunnen worden gebruikt voor ADC)
1,8-3,3 V I/O-spanning
12-bits 500 ksps analoog naar digitaal converter (ADC)
Diverse digitale randapparatuur
2x UART, 2x I²C, 2x SPI, 16x PWM kanalen
1x timer met 4 alarmen, 1x real time clock
2x programmeerbare I/O (PIO) blocks, 8 state machines in totaal
Flexibele, door de gebruiker programmeerbare high-speed I/O
Kan interfaces zoals een SD-kaart en VGA emuleren
Opmerking: De Raspberry Pi Pico W I/O-spanning staat ingesteld op 3,3 V
Downloads
Datasheet
Specificaties van de 3-pins Debug Connector
De Raspberry Pi Pico 2 is een nieuw microcontrollerbord van de Raspberry Pi Foundation, gebaseerd op de RP2350. Het beschikt over een hogere kloksnelheid, het dubbele van de on-chip SRAM, het dubbele van het ingebouwde flashgeheugen, krachtigere Arm-cores, optionele RISC-V-cores, nieuwe beveiligingsfuncties en verbeterde interfacemogelijkheden. De Raspberry Pi Pico 2 biedt een aanzienlijke verbetering in prestaties en functies, terwijl de hardware- en softwarecompatibiliteit met eerdere leden van de Raspberry Pi Pico-serie behouden blijft.
De RP2350 biedt een uitgebreide beveiligingsarchitectuur gebouwd rond Arm TrustZone voor Cortex-M. Het bevat ondertekend opstarten, 8 KB antifuse OTP voor sleutelopslag, SHA-256-versnelling, een hardware TRNG en snelle glitch-detectoren.
Dankzij de unieke dual-core en dual-architectuurmogelijkheden van de RP2350 kunnen gebruikers kiezen tussen een paar industriestandaard Arm Cortex-M33-kernen en een paar open-hardware Hazard3 RISC-V-kernen. Programmeerbaar in C/C++ en Python, en ondersteund door gedetailleerde documentatie, is de Raspberry Pi Pico 2 het ideale microcontrollerbord voor zowel liefhebbers als professionele ontwikkelaars.
Specificaties
CPU
Dual Arm Cortex-M33 of dubbele RISC-V Hazard3-processors @ 150 MHz
Geheugen
520 KB SRAM op de chip; 4 MB ingebouwde QSPI-flitser
Interfaces
26 multifunctionele GPIO-pinnen, waaronder 4 die kunnen worden gebruikt voor AD
Randapparatuur
2x UART
2x SPI-controllers
2x I²C-controllers
24x PWM-kanalen
1x USB 1.1-controller en PHY, met host- en apparaatondersteuning
12x PIO-statusmachines
Ingangsvermogen
1,8-5,5 V DC
Afmetingen
21 x 51 mm
Downloads
Datasheet (Pico 2)
Datasheet (RP2350)
De Raspberry Pi Monitor is een 15,6-inch Full HD-computerscherm. Gebruiksvriendelijk, veelzijdig, compact en betaalbaar, het is de perfecte desktop-displaygenoot voor zowel Raspberry Pi-computers als andere apparaten.
Met ingebouwde audio via twee naar voren gerichte luidsprekers, VESA- en schroefmontagemogelijkheden en een geïntegreerde in hoek verstelbare standaard is de Raspberry Pi Monitor ideaal voor desktopgebruik of voor integratie in projecten en systemen. Hij kan rechtstreeks van een Raspberry Pi worden voorzien, of via een aparte voeding.
Kenmerken
15,6-inch Full HD 1080p IPS-scherm
Geïntegreerde in hoek verstelbare standaard
Ingebouwde audio via twee naar voren gerichte luidsprekers
Audio-uitgang via 3,5 mm-aansluiting
HDMI-ingang op volledige grootte
VESA- en schroefmontageopties
Volume- en helderheidsknoppen
USB-C-voedingskabel
Specificaties
Display
Schermgrootte: 15,6 inch, verhouding 16:9
Paneeltype: IPS LCD met antireflectiecoating
Weergaveresolutie: 1920 x 1080
Kleurdiepte: 16,2M
Helderheid (typisch): 250 nits
Kleurgamma: 45%
Kijkhoek: 80°
Voeding
1,5 A/5 V
Kan rechtstreeks worden gevoed via een Raspberry Pi USB poort (max 60% helderheid, 50% volume) of via een aparte voeding (max 100% helderheid, 100% volume)
Connectiviteit
Standaard HDMI-poort (compatibel met 1.4)
3,5 mm stereohoofdtelefoonaansluiting
USB-C (voeding in)
Audio
2x 1,2 W geïntegreerde luidsprekers
Ondersteuning voor bemonsteringsfrequenties van 44,1 kHz, 48 kHz en 96 kHz
Downloads
Datasheet
Build robust, intelligent machines that combine Raspberry Pi computing power with LEGO components.The Raspberry Pi Build HAT provides four connectors for LEGO Technic motors and sensors from the SPIKE Portfolio. The available sensors include a distance sensor, a colour sensor, and a versatile force sensor. The angular motors come in a range of sizes and include integrated encoders that can be queried to find their position.The Build HAT fits all Raspberry Pi computers with a 40-pin GPIO header, including?–?with the addition of a ribbon cable or other extension device?—?Raspberry Pi 400. Connected LEGO Technic devices can easily be controlled in Python, alongside standard Raspberry Pi accessories such as a camera module.Features
Controls up to 4 motors and sensors
Powers the Raspberry Pi (when used with a suitable external PSU)
Easy to use from Python on the Raspberry Pi