VSCP (Very Simple Control Protocol) is an open-source IoT framework that works on development boards like Arduino or Raspberry Pi, and lets you control IoT home automation tasks. The framework is highly scalable, has a very low footprint, and as such is specially designed for resource-limited devices. VSCP is an open-source standard protocol for m2m, IoT and other remote control and measurement applications. It enables simple, low-cost devices to be networked together with high-end computers and/or to work as an autonomous system, whatever the communication media is. The VSCP Protocol has two levels: Level 1 and Level 2. The protocol was primarily used in CAN networks (that is Level 1 for tiny microcontrollers) because CAN is cheap and reliable with high efficiency. However, VSCP can be used for faster transport layers such as TCP/IP, so here comes Level 2 which achieves better performance. We have already seen Souliss, an open-source […]
Use AutoTVM and uTVM to optimize ML workloads on embedded devices & microcontrollers
We are seeing a massive increase in resource-constraints for embedded devices due to a lack of mature software stacks. With the increase in open-source hardware, the available software support takes a considerable amount of time to develop AI/ML/DL applications. Some of the challenges faced today are that bare-metal devices do not have on-device memory management, and they do not have LLVM support. They are also hard to debug because of rigid programming and cross-compilation interfaces. Due to this, “optimizing and deploying machine learning workloads to bare-metal devices today is difficult”. To tackle these challenges, there have been developments to support TVM, an open-source machine learning compiler framework for CPUs, GPUs, and machine learning accelerators, on these bare-metal devices, and Apache TVM is running an open-source foundation to make this easy. “µTVM is a component of TVM that brings broad framework support, powerful compiler middleware, and flexible autotuning and compilation capabilities […]
AWS IoT Core for LoRaWAN launched with asset tracking and smart building kits
With increasing connectivity issues on low-power devices, which transmit data over long-range, work on batteries that can last several years without replacement, LoRaWAN is one of the major solutions to address these issues as it has support in Zephyr OS as well. A couple of days back, Amazon Web Services announced AWS IoT support for LoRaWAN, which means that it will enable you to connect and manage low-power wireless devices that use LoRaWAN connectivity with the AWS Cloud. Now the enterprises can set-up a private LoRaWAN network by connecting the devices to the AWS Cloud. AWS Cloud basically accelerates IoT application development by acting on the data generated by connecting LoRaWAN devices using AWS services. “The rapid acceleration of growth in both private and public LoRaWAN networks has been key in the expansion of LoRaWAN deployments worldwide. AWS’ launch of AWS IoT Core for LoRaWAN offers an innovative solution to […]
LwM2M v1.2 M2M & IoT device management protocol adds support for HTTP and MQTT, LwM2M gateways
Lightweight M2M (LwM2M) is a REST-based protocol from the Open Mobile Alliance (OMA) for M2M & IoT device management that defines the application layer communication protocol between an LwM2M server and an LwM2M client running on an IoT/embedded device. While LwM2M v1.0 was published in early 2017, we first covered the new protocol a year earlier as Imagination Technologies released the source code for the LwM2M stack running on MIPS Creator Ci40 development board. Since then we’ve mostly seen the LwM2M protocol supported in cellular LTE IoT modules including Quectel BC66 and u-Blox Sara-R410M, as well as the now-defunct Samsung Artik WiFi IoT modules. LwM2M v1.0 was followed by v1.0.1 and v1.0.2 for bug fixes, and v1.1, but OMA has now announced LwM2M v1.2 protocol that adds the following new features: New transports for LwM2M: MQTT and HTTP Optimizations for the bootstrapping and registration interfaces to reduce the amount of […]
What is Federated Learning in 5G C-V2X?
In the past, Bluetooth, Wi-Fi, 3G, 4G with onboard sensors and GPS gave a huge start to the partial or conditional automation of the vehicles. In today’s era of 4G/5G C-V2X (Cellular vehicle-to-everything) with onboard compute and sensors have pushed the connectivity evolution in the automotive industry. Work has increased on high-automation and fully autonomous vehicles. This is all possible due to wireless communication which is 5G. 5G brings high bandwidth, ultra-low latency, and high reliability to the board. With these promises, it becomes very evident that these technologies, specifically with 5G that can be leveraged in vehicles. The technology is not just to connect vehicles, but also tries to see if a vehicle can connect to a network to get some information from the cloud servers. For the use case of vehicles platooning, we can expect a latency of 10 ms with 99.99% reliability and a high data rate […]
Detecting & Solving Security Issues in IoT and Embedded Devices
Last year’s Eclipse IoT Survey Report shows evidence that security is one of the major reasons for the development of IoT devices. As the number of IoT and embedded devices increases, we see a constant increase in the need for security issues in IoT and embedded devices. There have been increasing security expectations from device end customers and buyers to gain security insights and risks related to their connected devices. Security requires time and effort, so when a new product is launched in the market for business reasons, security compromises may have to be made. Also, organizations don’t have the capabilities and tools to get in-depth information about connecting device security. This is mainly due to the complex chain of third-party products. Methods for Detecting Security Issues Software Composition Analysis (SCA) allows organizations to identify third-party components that have been integrated into all applications. For each of these components, it […]
ELBE is a simpler alternative to Yocto/OpenEmbedded and Buildroot
To support embedded design, there are several options when it comes to choosing an operating system (OS). Some of the traditional approaches to building custom Linux systems is to use built systems such as Yocto/OpenEmbedded or Buildroot. The options available for system integration include building everything manually, binary distributions (Debian, Ubuntu, Fedora, etc.), and build systems (Buildroot, Yocto, PTXdist, etc.). The major drawback of build systems is that they are not as easy as a binary distribution and also the build time is more. Why was ELBE born? In the early days, the embedded devices had 4MiB flash and 16MiB of RAM. With these specifications, people started to hack a root file system for their devices. But in some cases, they had to start with building a cross-toolchain first. For this, tools like OpenEmbedded, Buildroot are good as long as they are well maintained. For this, a lot of libraries […]
No password SSH – Login to a SSH server with private/public keys
If you often need to establish SSH connections to a server, entering the password each time may be a hassle or even a non-starter. For example, in our case, we use ssh connections in our nightly build scripts, so obviously entering a password would not be an option here… So it can be useful to configure the server and your client to accept secure ssh connection without the need to enter a password. What must be done, then, is to generate a public/private key pair, and copy the public part into the appropriate place on the server side. For doing this, on the user’s home directory, on the client machine, type:
1 |
local> ssh-keygen -t rsa -f ~/.ssh/id_rsa |
-t tells the type of encryption -f tells where to store the public/private key pairs. In this case, the .ssh directory in the home directory is being used A password will be asked; leave this part blank, just […]