The list of resources allowing to prototyping IoT projects without hardware
#aritcles #IoT
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
Embedded Systems
🎬 ESP-NOW - a new protocol for Wi-Fi data transfer between ESP32 or ESP8266 ESP-NOW is a protocol ideally suited to sending out small amounts of data (up to 250 characters). In this video, author uses ESP32 as receiver and an ESP8266 as transmitter and demonstrates…
📟 ESP-NOW: Auto-pairing for ESP32/ESP8266 with Bidirectional Communication and Web Server
This guide shows how to build an ESP32 web server and use ESP-NOW communication protocol simultaneously. We’ll show you how to establish a two-way communication between the master (web server) and slaves, and how to automatically add boards to the network (auto-pairing).
More information...
#projects #esp32 #IoT
This guide shows how to build an ESP32 web server and use ESP-NOW communication protocol simultaneously. We’ll show you how to establish a two-way communication between the master (web server) and slaves, and how to automatically add boards to the network (auto-pairing).
More information...
#projects #esp32 #IoT
👍6👌1
Mini Pupper is open-source, based on Ubuntu and ROS (Robot Operating System), and designed for robotics education in schools, homeschool families, enthusiasts and others, with notably students being able to learn out to use ROS, SLAM, navigation, and OpenCV computer vision through online courses that will come with the robot.
One fully assembled and configured, the dog-shaped quadruped robot that can hop, trot, and run around, finding its way around using SLAM, Navigation, and OpenCV AI functions. Mini Pupper’s software relies on a fork of ROS based Champ Quadrupedal Framework led by Juan Miguel Jimeno, which you can also find on Github. ROS2 support is also in the works.
More information:
The main article
The GitHub repository
#projects #robots
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12👌1
🎬 What Are The Essential Tools You Need For Embedded Firmware Development?
In this video, embedded systems consultant Martin Schroder talks about the software and hardware you would need to start developing embedded firmware.
https://youtu.be/d7Ow0lo1a8c
#video
In this video, embedded systems consultant Martin Schroder talks about the software and hardware you would need to start developing embedded firmware.
https://youtu.be/d7Ow0lo1a8c
#video
YouTube
Quick and Easy Guide to Setting Up Your Embedded Development Environment
🎓 Udemy courses: get book + video content in one package:
👉 Cursor Control: master software engineering acceleration using Cursor AI: https://bit.ly/4oJRzrT
👉 Embedded C Programming Design Patterns Udemy Course: http://bit.ly/3L6MbOi
👉 Ultimate Embedded Firmware…
👉 Cursor Control: master software engineering acceleration using Cursor AI: https://bit.ly/4oJRzrT
👉 Embedded C Programming Design Patterns Udemy Course: http://bit.ly/3L6MbOi
👉 Ultimate Embedded Firmware…
👍7
📟 hgDeck - a wrist-word desk with a hybrid interface
The design for this project is based on earlier hgTerm Raspberry Pi mini-laptop, which honestly would have made a great entry all by itself. But while the two version shares some similarities, the hgDeck puts a serious twist on the form factor.
Device is based on the Raspberry Pi Zero W Soc. It contains one main 3.5" SPI TFT screen and additional 1" OLED screen. Additionally, it has BT keyboard, pi camera and MLX90640 thermal camera. The casing is 3D printed on Prusa Mini. It has a motor and a linkage system which enables it to (semi) automatically switch between just the display mode and full terminal (display+keyboard) mode.
More information:
The main page
The repository
#projects #raspberry
The design for this project is based on earlier hgTerm Raspberry Pi mini-laptop, which honestly would have made a great entry all by itself. But while the two version shares some similarities, the hgDeck puts a serious twist on the form factor.
Device is based on the Raspberry Pi Zero W Soc. It contains one main 3.5" SPI TFT screen and additional 1" OLED screen. Additionally, it has BT keyboard, pi camera and MLX90640 thermal camera. The casing is 3D printed on Prusa Mini. It has a motor and a linkage system which enables it to (semi) automatically switch between just the display mode and full terminal (display+keyboard) mode.
More information:
The main page
The repository
#projects #raspberry
👍15
This media is not supported in your browser
VIEW IN TELEGRAM
📰 Tentacle robot can gently grasp fragile objects
Most of today’s robotic grippers rely on embedded sensors, complex feedback loops, or advanced machine learning algorithms, combined with the skill of the operator, to grasp fragile or irregularly shaped objects. But researchers from the Harvard John A. Paulson School of Engineering and Applied Sciences (SEAS) have demonstrated an easier way.
Taking inspiration from nature, they designed a new type of soft, robotic gripper that uses a collection of thin tentacles to entangle and ensnare objects, similar to how jellyfish collect stunned prey.
The researchers used simulations and experiments to test the efficacy of the gripper, picking up a range of objects, including various houseplants and toys. The gripper could be used in real-world applications to grasp soft fruits and vegetables for agricultural production and distribution, delicate tissue in medical settings, even irregularly shaped objects in warehouses, such as glassware.
#news #robots
Most of today’s robotic grippers rely on embedded sensors, complex feedback loops, or advanced machine learning algorithms, combined with the skill of the operator, to grasp fragile or irregularly shaped objects. But researchers from the Harvard John A. Paulson School of Engineering and Applied Sciences (SEAS) have demonstrated an easier way.
Taking inspiration from nature, they designed a new type of soft, robotic gripper that uses a collection of thin tentacles to entangle and ensnare objects, similar to how jellyfish collect stunned prey.
The researchers used simulations and experiments to test the efficacy of the gripper, picking up a range of objects, including various houseplants and toys. The gripper could be used in real-world applications to grasp soft fruits and vegetables for agricultural production and distribution, delicate tissue in medical settings, even irregularly shaped objects in warehouses, such as glassware.
#news #robots
👍7
This media is not supported in your browser
VIEW IN TELEGRAM
📟 TinyML-CAM pipeline enables 80 FPS image recognition on ESP32 using just 1 KB RAM
The challenge with TinyML is to extract the maximum performance/efficiency at the lowest footprint for AI workloads on microcontroller-class hardware. The TinyML-CAM pipeline, developed by a team of machine learning researchers in Europe, demonstrates what’s possible to achieve on relatively low-end hardware with a camera.
Most specifically, they managed to reach over 80 FPS image recognition on the sub-$10 ESP32-CAM board with the open-source TinyML-CAM pipeline taking just about 1KB of RAM. It should work on other MCU boards with a camera, and training does not seem complex since we are told it takes around 30 minutes to implement a customized task.
More information:
The main article
The GitHub repository
#projects #machine_learning #esp32
The challenge with TinyML is to extract the maximum performance/efficiency at the lowest footprint for AI workloads on microcontroller-class hardware. The TinyML-CAM pipeline, developed by a team of machine learning researchers in Europe, demonstrates what’s possible to achieve on relatively low-end hardware with a camera.
Most specifically, they managed to reach over 80 FPS image recognition on the sub-$10 ESP32-CAM board with the open-source TinyML-CAM pipeline taking just about 1KB of RAM. It should work on other MCU boards with a camera, and training does not seem complex since we are told it takes around 30 minutes to implement a customized task.
More information:
The main article
The GitHub repository
#projects #machine_learning #esp32
👍15
📟 BYOPM - Open-Source password manager based on Raspberry Pi Zero
BYOPM is a portable Password Manager implementation based on BitWarden and a Raspberry PI Zero. It’s a self hosted solution, with full functionality, which is activated by just plugging the device on your computer. Bitwarden’s Official browser addons and extensions are also supported, and the device has been tested both on Windows (10 and 11) and Linux (Debian Based).
More information...
#projects #raspberry #security
BYOPM is a portable Password Manager implementation based on BitWarden and a Raspberry PI Zero. It’s a self hosted solution, with full functionality, which is activated by just plugging the device on your computer. Bitwarden’s Official browser addons and extensions are also supported, and the device has been tested both on Windows (10 and 11) and Linux (Debian Based).
More information...
#projects #raspberry #security
👍5
💻 Write Less Code using the “auto” Keyword
The auto keyword was introduced with C++11. It reduces the amount of code you have to write, reduces repetitive code and the number of required changes. Sadly, many C++ developers are not aware of how useful this keyword is. Especially embedded code can gain a lot by its usage.
In this article, author will try to explain a number of useful cases of the auto keyword, using Arduino example code. The same principles are valid for any embedded environment which is using a modern C++ compiler. The C++11 standard is eight years old, and meanwhile, every C++ compiler should support it.
The examples are written for Arduino or Adafruit SAMD boards using the Arduino IDE. The toolchain for these boards use a compiler which supports more features explained in this article. Using auto with AVR code is possible too, just give it a try.
More information...
#articles #programming #cpp
The auto keyword was introduced with C++11. It reduces the amount of code you have to write, reduces repetitive code and the number of required changes. Sadly, many C++ developers are not aware of how useful this keyword is. Especially embedded code can gain a lot by its usage.
In this article, author will try to explain a number of useful cases of the auto keyword, using Arduino example code. The same principles are valid for any embedded environment which is using a modern C++ compiler. The C++11 standard is eight years old, and meanwhile, every C++ compiler should support it.
The examples are written for Arduino or Adafruit SAMD boards using the Arduino IDE. The toolchain for these boards use a compiler which supports more features explained in this article. Using auto with AVR code is possible too, just give it a try.
More information...
#articles #programming #cpp
👍10
📃 MISRA C: Write safer, clearer C code
The C language is compact, expressive and powerful. It provides a programmer with the means to write efficient, readable and maintainable code. All of these features account for its popularity. Unfortunately, the language also enables the unwary developer to write dangerous, insecure code that can cause serious problems at all stages of a development project and into deployment.
In the late 90s, the Motor Industry Software Reliability Association (MISRA) introduced a set of guidelines for the use of C in vehicle systems, which became known as MISRA C. Since then, the guidelines have been steadily refined, with updates being published from time to time.
Although the guidelines were originally aimed at developers of software for use in cars, it was quickly realized that they are equally applicable to many other application areas where safety is critical, and the standard is now widely adopted in many industries.
More information...
#articles #security
The C language is compact, expressive and powerful. It provides a programmer with the means to write efficient, readable and maintainable code. All of these features account for its popularity. Unfortunately, the language also enables the unwary developer to write dangerous, insecure code that can cause serious problems at all stages of a development project and into deployment.
In the late 90s, the Motor Industry Software Reliability Association (MISRA) introduced a set of guidelines for the use of C in vehicle systems, which became known as MISRA C. Since then, the guidelines have been steadily refined, with updates being published from time to time.
Although the guidelines were originally aimed at developers of software for use in cars, it was quickly realized that they are equally applicable to many other application areas where safety is critical, and the standard is now widely adopted in many industries.
More information...
#articles #security
👍12👌5👎1
📰 MicroPython officially becomes part of the Arduino ecosystem
Arduino has announced that it is folding MicroPython, the microcontroller-focused Python port designed for resource-constrained devices, into its development ecosystem — partnering with MicroPython creator Damien George to bring the virtual machine to a range of official Arduino development boards.
"Expanding on this initial experience we were lucky enough to partner with the creator of MicroPython, Damien George, to port the official the virtual machine to a number of Arduino products."
It's a big shift for Arduino, which for years has focused on programming in C/C++ with its fork of Wiring to abstract the complexities of handling hardware aware from the user. MicroPython, then, becomes only the second officially-supported Arduino language in the project's history — but while it is official, it won't be found as an option in the official Arduino IDE any time soon.
#news #arduino
Arduino has announced that it is folding MicroPython, the microcontroller-focused Python port designed for resource-constrained devices, into its development ecosystem — partnering with MicroPython creator Damien George to bring the virtual machine to a range of official Arduino development boards.
"Expanding on this initial experience we were lucky enough to partner with the creator of MicroPython, Damien George, to port the official the virtual machine to a number of Arduino products."
It's a big shift for Arduino, which for years has focused on programming in C/C++ with its fork of Wiring to abstract the complexities of handling hardware aware from the user. MicroPython, then, becomes only the second officially-supported Arduino language in the project's history — but while it is official, it won't be found as an option in the official Arduino IDE any time soon.
#news #arduino
👍12👎1
This media is not supported in your browser
VIEW IN TELEGRAM
📟 WiFiBOX - Packet Monitor with Waterfall Plot using ESP32
The traffic values in the channel specified from 1 to 14 are received and displayed with the help of ESP32, and TFT LCD graphically in the form of incoming traffic at any time will show with Waterfall Plot.
Features of the project:
▫️ Scan 2.4Ghz band
▫️ Received Packets will show with Waterfall Plot.
▫️ Ability to choose the desired channel from 14 channels
More information:
The main article
The GitHub repository
#projects #esp32
The traffic values in the channel specified from 1 to 14 are received and displayed with the help of ESP32, and TFT LCD graphically in the form of incoming traffic at any time will show with Waterfall Plot.
Features of the project:
▫️ Scan 2.4Ghz band
▫️ Received Packets will show with Waterfall Plot.
▫️ Ability to choose the desired channel from 14 channels
More information:
The main article
The GitHub repository
#projects #esp32
👍7
📟 ESP32: Send Messages to WhatsApp
In this guide, you’ll learn how to send messages to your WhatsApp account with the ESP32. This can be useful to receive notifications from the ESP32 with sensor readings, alert messages when a sensor reading is above or below a certain threshold, when motion is detected, and many other applications. We’ll program the ESP32 using Arduino IDE and to send the messages we’ll use a free API called CallMeBot.
More information...
#projects #esp32
In this guide, you’ll learn how to send messages to your WhatsApp account with the ESP32. This can be useful to receive notifications from the ESP32 with sensor readings, alert messages when a sensor reading is above or below a certain threshold, when motion is detected, and many other applications. We’ll program the ESP32 using Arduino IDE and to send the messages we’ll use a free API called CallMeBot.
More information...
#projects #esp32
👍13👌1
💻 3 Reasons to Use Rust in Embedded Systems
▫️ Rust is a memory-safe language
All Rust variables, by default, are immutable unless declared otherwise. There is also a concept of memory ownership. Memory safety helps developers identify critical bugs before they find their way into our production code by making us aware of them as soon as we create them!
▫️ Dependency management
Rust has a built-in package manager called Cargo that downloads package dependencies, compiles packages, distributes packages, and, if open-sourced, even upload them to crates.io. Cargo helps developers ensure that they are using the write packages and that even if new versions are available, they won’t be upgraded until they are ready to upgrade.
▫️ Modern and powerful
Rust compiles its code with nearly the efficiency of a C compiler. If you compare execution times, the differences are negligible. Rust can interact with low-level hardware efficiently and more safely than C/C++.
#articles #rust #programming
▫️ Rust is a memory-safe language
All Rust variables, by default, are immutable unless declared otherwise. There is also a concept of memory ownership. Memory safety helps developers identify critical bugs before they find their way into our production code by making us aware of them as soon as we create them!
▫️ Dependency management
Rust has a built-in package manager called Cargo that downloads package dependencies, compiles packages, distributes packages, and, if open-sourced, even upload them to crates.io. Cargo helps developers ensure that they are using the write packages and that even if new versions are available, they won’t be upgraded until they are ready to upgrade.
▫️ Modern and powerful
Rust compiles its code with nearly the efficiency of a C compiler. If you compare execution times, the differences are negligible. Rust can interact with low-level hardware efficiently and more safely than C/C++.
#articles #rust #programming
👍9👎5