t’s nice to be able to say “Alexa, turn on the dining room light” and have the light come on. Wouldn’t it be cool to be able to control Linux-powered projects?
For example, I’d love to say something like “Alexa, make Barkley speak” and have my new skeletal robotic dog bark out a few “woofs”, in response. Barkley is the soon-to-be faithful companion of my ever-evolving robotic skull, Hedley and will use some type of Linux-powered “Pi” like a brain.
At first, I tried to get the shortcut Python fauxmo libraries to work on a stock Raspberry Pi 4. A “fauxmo” tricks Alexa into thinking that the light is a commercial WeMo Internet of Things gadget. It has been very reliable — I built a little NodeMCU-controlled switch project using the “fauxmo” Arduino library. There are lots of fauxmo examples on the web.
In this case, it didn’t work out, so I dug into the Amazon AWS development environment and discovered a lot of new possibilities. I also realized that there are quite a few parts and pieces to connecting things using “the Amazon way.” Fortunately, Amazon has simplified the process through AWS Core IoT connect kits. You configure “the kit” on the dev site and then download and install the result on your target Pi. It configures all the authentication and security data needed for a Python program, running on the Pi to connect to Amazon services on the back end. Even better, MQTT is baked into the Amazon Core IoT environment. MQTT is a distributed lightweight messaging system that lets machines easily communicate amongst themselves. With any luck, Barkley and Hedley will be able to interact with each other and Alexa via my voice commands.
The first step to get Alexa to pass my wishes on to Barkley is to build the communication link between the Pi and the Amazon IoT cloud. This is done with the “connect kit.” We’ll discuss the Alexa voice service piece in a future article.
You’ll need a developer account. Go to the AWS IoT account setup screen and follow the directions. You should also create an IAM user for regular use. That whole process is spelled out very well. Everything can be done on the Raspberry Pi (with a monitor, keyboard and mouse) in a web browser and the command line, in a terminal. I used a Raspberry Pi 4 Model B with the latest version of Raspberry Pi OS. I initially explored the Connect kit on my ASUS Xubuntu notebook and everything worked without issues on that machine, too. Of course, you don’t have any general-purpose input/output (GPIO) capabilities, like with the Pi, on an Intel-powered Linux laptop. Alexa to laptop connectivity might still be interesting for kicking off applications, adjusting the volume in audio playback or integrating text-to-speech output capabilities.
Start by logging into your AWS IoT account as the IAM user. My user name was “Administrator.” Enter your password.
The main AWS Core IoT screen
The main AWS IoT screen will appear.
Next open a Linux terminal on the Pi and use the follow commands to build the Python program. I created a “rob-aws” directory under my home directory to consolidate my AWS development efforts.
rob-pi% mkdir rob-aws
rob-pi% cd rob-aws
Copy the downloaded zip file to the local directory.
#edge / iot #open source #tutorial
Everything around us has become smart, like smart infrastructures, smart cities, autonomous vehicles, to name a few. The innovation of smart devices makes it possible to achieve these heights in science and technology. But, data is vulnerable, there is a risk of attack by cybercriminals. To get started, let’s know about IoT devices.
The Internet Of Things(IoT) is a system that interrelates computer devices like sensors, software, and actuators, digital machines, etc. They are linked together with particular objects that work through the internet and transfer data over devices without humans interference.
Famous examples are Amazon Alexa, Apple SIRI, Interconnected baby monitors, video doorbells, and smart thermostats.
When technologies grow and evolve, risks are also on the high stakes. Ransomware attacks are on the continuous increase; securing data has become the top priority.
When you think your smart home won’t fudge a thing against cybercriminals, you should also know that they are vulnerable. When cybercriminals access our smart voice speakers like Amazon Alexa or Apple Siri, it becomes easy for them to steal your data.
Cybersecurity report 2020 says popular hacking forums expose 770 million email addresses and 21 million unique passwords, 620 million accounts have been compromised from 16 hacked websites.
The attacks are likely to increase every year. To help you secure your data of IoT devices, here are some best tips you can implement.
Your router has the default name of make and model. When we stick with the manufacturer name, attackers can quickly identify our make and model. So give the router name different from your addresses, without giving away personal information.
If your devices are connected to the internet, these connections are vulnerable to cyber attacks when your devices don’t have the proper security. Almost every web interface is equipped with multiple devices, so it’s hard to track the device. But, it’s crucial to stay aware of them.
When we use the default usernames and passwords, it is attackable. Because the cybercriminals possibly know the default passwords come with IoT devices. So use strong passwords to access our IoT devices.
Use strong or unique passwords that are easily assumed, such as ‘123456’ or ‘password1234’ to protect your accounts. Give strong and complex passwords formed by combinations of alphabets, numeric, and not easily bypassed symbols.
Also, change passwords for multiple accounts and change them regularly to avoid attacks. We can also set several attempts to wrong passwords to set locking the account to safeguard from the hackers.
Are you try to keep an eye on your IoT devices through your mobile devices in different locations. I recommend you not to use the public WI-FI network to access them. Because they are easily accessible through for everyone, you are still in a hurry to access, use VPN that gives them protection against cyber-attacks, giving them privacy and security features, for example, using Express VPN.
There are software and firewalls like intrusion detection system/intrusion prevention system in the market. This will be useful to screen and analyze the wire traffic of a network. You can identify the security weakness by the firewall scanners within the network structure. Use these firewalls to get rid of unwanted security issues and vulnerabilities.
Every smart device comes with the insecure default settings, and sometimes we are not able to change these default settings configurations. These conditions need to be assessed and need to reconfigure the default settings.
Nowadays, every smart app offers authentication to secure the accounts. There are many types of authentication methods like single-factor authentication, two-step authentication, and multi-factor authentication. Use any one of these to send a one time password (OTP) to verify the user who logs in the smart device to keep our accounts from falling into the wrong hands.
Every smart device manufacturer releases updates to fix bugs in their software. These security patches help us to improve our protection of the device. Also, update the software on the smartphone, which we are used to monitoring the IoT devices to avoid vulnerabilities.
When we connect the smart home to the smartphone and control them via smartphone, you need to keep them safe. If you miss the phone almost, every personal information is at risk to the cybercriminals. But sometimes it happens by accident, makes sure that you can clear all the data remotely.
However, securing smart devices is essential in the world of data. There are still cybercriminals bypassing the securities. So make sure to do the safety measures to avoid our accounts falling out into the wrong hands. I hope these steps will help you all to secure your IoT devices.
If you have any, feel free to share them in the comments! I’d love to know them.
Are you looking for more? Subscribe to weekly newsletters that can help your stay updated IoT application developments.
#iot #enterprise iot security #how iot can be used to enhance security #how to improve iot security #how to protect iot devices from hackers #how to secure iot devices #iot security #iot security devices #iot security offerings #iot security technologies iot security plus #iot vulnerable devices #risk based iot security program
We’ve compiled the best of the best from the IoT Zone, where you’ll find articles and tutorials using Arduino, Raspberry Pi, MQTT, and microcontrollers. You’ll also see lists of different IoT platforms and augmented reality SDKs as well as Arduino alternatives if that’s not your thing. We also pulled together articles on IoT and agriculture, healthcare, transportation, and much more. Enjoy!
Building the World’s Largest Raspberry Pi Cluster by Gerald Venzl — Oracle’s Raspberry Pi Supercomputer, the largest Raspberry Pi cluster known to exist, got
#iot #raspberry pi #arduino #mqtt #iot security #iot in healthcare #best of iot #iot in agriculture #iot tutorials
This article demonstrates the building of an IoT ecosystem using AWS IoT services and Raspberry Pi. I refer to AWS documentation for most of the setup (check the references at the end of this article for more) to build a generic model that can be extended as needed.
IoT devices (such as temperature sensors, motion sensors, and smoke detectors), send notifications to an AWS IoT core which triggers events to AWS IoT events. The detector model will then decide the pattern using states and trigger action based on conditions & events.
AWS components used
#raspberry-pi #coding #python #iot #aws
This IoT walk-through lab will show you how to send IoT data from your ESP8266 or ESP32 device, through AWS API Gateway, to Lambda, to a data lake in S3, and finally design a static web page for IoT data visualization.
You may be asking, “why would you want to deploy a HTTP API when AWS has a well functioning MQTT broker on AWS IoT Core?” Well, there are a few good reasons that we may want to send our IoT data through AWS API Gateway directly rather than through AWS IoT Core.
As an example, I had a student who was using a SIM7000A cellular modem for his ESP32. The hardware abstraction layer on his device was poorly integrated so MQTT(s) wouldn’t work, but HTTP worked well on his device. For this reason a AWS serverless design flow, utilizing the HTTP protocol instead of MQTT, can make sense. Some other possible reasons for using HTTP rather than MQTT are:
After having said all this, 90% of my course curriculum on Udemy still goes through AWS IoT Core. However, it is important to understand how to handle these exceptions. In an effort to explore these interesting IoT scenarios I have designed this tutorial and walk-through IoT lab on AWS to better help you understand this serverless IoT implementation on AWS. It is important to note that the ESP32 has better built in security than the ESP8266, so the Arduino sketches at the end of the tutorial will reflect these differences.
It is also worth noting that charges for the AWS services used in this tutorial are free, or minuscule as a serverless design without a lot of compute usage. S3, Lambda, and API Gateway are all extremely inexpensive for prototyping and testing for non-commercial loads. It’s unlikely the following lab will cost you more than a few cents even if you are no longer on the “AWS free tier.”
Prerequisites for the tutorial
Deploy the Serverless IoT infrastructure
When teaching AWS Serverless for IoT I often find myself working backwards in order to have AWS serverless design flows make the most sense.
Create a new S3 bucket in the region of your choice. Choose a globally unique name for your bucket and make sure to keep the region consistent between AWS services.
✅ Step-by-step Instructions for S3
1. Navigate to the AWS S3 console
2. Create a new S3 Bucket in the same region you decide to use consistently throughout this lab. Name your bucket something globally unique (this AWS requirement is so every bucket has its own static URL)
3. You don’t need to set ACL’s, Bucket policy’s or CORS at this time, so just select “Create”.
4. Finally create and save a folder/partition within your newly created S3 bucket. Name the folder whatever you like.
We are now ready to move on the to creating a lambda function to enhance our IoT data and dispatch it to our newly created S3 bucket.
Lambda programmed in Node.js will be used to format, enrich, and dispatch our incoming JSON payload, sent through API Gateway, to our S3 bucket to hold our IoT sensor data readings
✅ Step-by-step Instructions for Lambda
1. Navigate to the Lambda console and create a new Lambda function (“Author from scratch”) in the AWS Region of your S3 bucket.
2.Choose the latest runtime of Node.js .
3. Chose a new basic execution Role
4. press button to create your lambda function
5. Paste the Node.js code listed below into your lambda function console. Make sure to add your own bucket name and folder name that you created in the previous section where indicated in the lambda code. Uncomment the (event) line of code but keep the (event.queryStringParameters) line of the code commented out for now. We will want to see the entire test payload “event” (object) at this point in the lab. Later, when we utilize our device, we will limit the incoming IoT payload to just the query string parameters.
After pasting in the code listed below, save your lambda function.
#aws-iot-tutorial #aws-lambda #aws-s3 #aws-api-gateway #aws-iot #arduino #esp32 #esp8266
Tools and Images to Build a Raspberry Pi n8n server
The purpose of this project is to create a Raspberry Pi image preconfigured with n8n so that it runs out of the box.
n8n is a no-code/low code environment used to connect and automate different systems and services. It is programmed using a series of connected nodes that receive, transform, and then transmit date from and to other nodes. Each node represents a service or system allowing these different entities to interact. All of this is done using a WebUI.
Whevever a new technology is released, two common barriers often prevent potential users from trying out the technology:
The n8n-pi project eliminates these two roadblocks by preconfiguring a working system that runs on easily available, low cost hardware. For as little as $40 and a few minutes, they can have a full n8n system up and running.
This project would not be possible if it was not for the help of the following:
All documentation for this project can be found at http://n8n-pi.tephlon.xyz.
#pi #raspberry pi #raspberry #raspberry-pi