Jacob Beningo is an independent consultant and lecturer who specializes in the design of embedded software for resource constrained and low energy mobile devices. He has successfully completed projects across a number of industries including automotive, defense, medical and space. He enjoys developing and teaching real-time and reusable software development techniques using the latest methods and tools. He blogs for DesignNews.com about embedded system design techniques and challenges. Jacob holds Bachelor's degrees in Electrical Engineering, Physics and Mathematics from Central Michigan University and a Master's degree in Space Systems Engineering from the University of Michigan.
Getting Started with Embedded DevOps using Gitlab CI/CD PipelinesStatus: Available Now
Continuous Integration and Continuous Delivery (CI/CD) have become critical tools to IoT edge device developers. In this workshop, participants will delve into the fundamentals of Embedded DevOps by designing and implementing their own CI/CD pipeline using Gitlab.
Attendees will gain practical experience in configuring build systems, designing a CI/CD pipeline, and implementing it. (At least as much as can be done in a few hours). We’ll explore how to containerize your build environment in Docker, so that you can easily integrate it into an embedded CI/CD pipeline. You’ll also learn how to use Visual Studio Code to seamlessly integrate your build processes within a single environment.
Attendees will walk away with a basic, but functional CI pipeline that they can easily scale to meet their needs.
Key topics covered in this workshop include:
- The role of DevOps in Edge and embedded system development
- CI/CD pipeline design for embedded systems
- Containerizing your build system in Docker
- Set up and deployment of CI/CD solutions
- Best practices and steps to go further
Building IoT Machine Learning Applications using the Raspberry Pi PicoStatus: Available Now
Machine Learning is finding its way into various microcontroller-based IoT devices. Unfortunately, embedded software developers typically aren’t experienced in machine learning, making designing these new device types challenging.
In this workshop, attendees will learn hands-on about machine learning using the inexpensive Raspberry Pi Pico. We will introduce machine learning concepts and how they affect embedded software developers. Attendees will then get the opportunity to collect their dataset, train, and deploy a machine-learning model to their Raspberry Pi Pico.
Topics covered in this session include:
- Introduction to machine learning
- A Raspberry Pi Pico overview
- Hands-on data collection and model training
- Model validation, testing, and deployment
- Next steps
The hands-on portion is optional, but if you wish to participate, the following hardware will be required:
We will discuss several machine learning frameworks and tools, but the hands-on piece will use Edge Impulse Studio.
Tips and Tricks for Designing Real-time IoT SystemsStatus: Available Now
IoT devices are becoming more complex and compute-intensive with every passing month. Keeping up with customer needs and requirements requires a design that is not just updatable and robust but also scalable and configurable.
In this session, we will explore practical tips and tricks for designing real-time IoT systems. Major topics that we will discuss include:
- Challenges facing IoT Developers
- Software architecture design
- Identifying and leveraging execution domains
- Device security
- Low-power design techniques
Best Practices for Designing IoT Edge Devices (2020)Status: Available Now
Development teams are always under pressure to deliver faster and at lower costs, but this is becoming more challenging as system complexity has risen exponentially with features for IoT and Machine Learning. The increased complexity can easily handcuff a development team and lead to not just longer development cycles with higher costs but also lower quality products.
In this session, we will explore best practices for developing real-time embedded systems that will help the modern developer stay on track and produce a quality product within their development cycle. We will explore best practices ranging from how to properly architect a system for scalability, how to manage a development cycle, secure and test a system. We will also discuss best practices for using frameworks and open-source software.
Live Q&A - Best Practices for Designing IoT Edge Devices (2020)Status: Available Now
Live Q&A with Jacob Beningo following his talk titled 'Best Practices for Designing IoT Edge Devices'
IoT Online Conference - Pre-Conference Orientation (2020)Status: Available Now
A short but useful live meeting on Zoom between attendees and conference organizers Jacob and Stephane. In this live zoom we will be sharing a few pointers to help attendees navigate and take full advantage of the IoT Online Conference.