Home > Speakers >

Sergio Prado

Sergio Prado has been working with embedded systems for more than 20 years. Currently, he is working at Toradex, leading the team that is building a next-gen Linux distribution for embedded devices. He is also a Linux developer, blogger (embeddedbits.org) and contributes to several free software projects, including Buildroot, Yocto Project and the Linux kernel.

Introduction to Encryption for Embedded Linux Developers

Status: Available Now

Data confidentiality is a requirement in the design of many embedded Linux devices. And encryption plays a significant role in developing products where confidentiality is a must. But there are different approaches, methods, and algorithms depending on the problem, which is not always clear to the developer. Should we use symmetric or asymmetric key encryption? What are the best algorithms for a specific situation? How to store the encryption key? In this talk, we will answer these and many other questions, covering the most common problems a developer could face to protect data-at-rest and data-in-transit when designing an embedded Linux device.

Go to Session


Live Q&A - Introduction to Encryption for Embedded Linux Developers

Status: Available Now

Live Q&A with Sergio Prado for the talk titled Introduction to Encryption for Embedded Linux Developers

Go to Session


Developing embedded real-time applications with heterogeneous multiprocessing systems (2020)

Status: Available Now

There are a lot of embedded applications that have conflicting requirements like high throughput and data processing, responsive user interface, low-latency operations and determinism to handle hard real-time events. It is very hard (and most of the times impossible) to meet all these requirements with just a single processor.

A common approach to meet these conflicting requirements is using multiple heterogeneous processors, where a high-end processor takes care of general computing like network communication, user interface and data processing, and a low-end processor is responsible to handle low-latency and real-time events. This type of system is called Heterogeneous Multiprocessing System or HMP.

In this session, we will learn all the theory behind the development of embedded applications using heterogeneous multiprocessing systems and put into practice with hands-on demonstrations based on a board with a heterogeneous multicore SoC containing both a Cortex-A and a Cortex-M processor, capable of running multiple operating systems on the different cores.

In the hands-on demonstration, we will learn how to run an RTOS (FreeRTOS) in the Cortex-M processor to handle deterministic and real-time events and report them back to a full-featured OS (GNU/Linux) running on the Cortex-A. We will study how the communication between the cores works and use an implementation of the OpenAMP standard in the hands-on.

In this session, the attendees will understand how a heterogeneous multiprocessing system works and when to use it. They will also learn how to use a heterogeneous multicore SoC and run multiple operating systems on it, understanding how the communication between the cores are implemented in the hardware level, and learning how this communication is abstracted at the software level with the OpenAMP standard.

Go to Session