Embedded Systems Training Courses

Embedded Systems Training Courses

Local instructor-led live Embedded Systems training courses in Macao.

Testimonials

★★★★★
★★★★★

Embedded Systems Course Outlines

Title
Duration
Overview
Title
Duration
Overview
14 hours
Overview
Arduino is an open-source, single-board, microcontroller for building devices that can sense and control objects in the physical world.

In this instructor-led, live training, participants will learn how to program the Arduino using advanced techniques as they step through the creation of a simple sensor alert system.

By the end of this training, participants will be able to:

- Understand how Arduino works.
- Dig deep into the main components and functionalities of Arduino.
- Program the Arduino without using the Arduino IDE.

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice

Note

- Arduino is available in different models and supports different programming interfaces (C, C++, C#, Python) and IDEs (Arduino IDE, Visual Studio, etc.). This course assumes the Arduino Uno board and uses Arduino with other programming languages (C/C++) and other IDEs.
- Participants are responsible for purchasing the Arduino hardware and components.
7 hours
Overview
FreeRTOS is a cross platform real-time operating system (RTOS) kernel for embedded devices such as microcontrollers and small microprocessors.

In this instructor-led, live training, participants will learn how to code using FreeRTOS as they step through the development of a simple RTOS project using a microcontroller.

By the end of this training, participants will be able to:

- Understand the basic concepts of real-time operating systems.
- Learn the environment of FreeRTOS.
- Learn how to code with FreeRTOS.
- Interface a FreeRTOS application to hardware peripherals.

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice

Note

- Participants are expected to provide their own hardware for this course (any STM32 board).
28 hours
Overview
The Yocto Project is an open-source project for building embedded Linux systems. It uses a build host based on OpenEmbedded (OE), which uses the BitBake tool, to construct complete Linux images

In this instructor-led, live training, participants will learn how to create a build system for embedded Linux based on Yocto Project.

By the end of this training, participants will be able to:

- Understand the fundamental concepts behind a Yocto Project build system, including recipes, metadata, and layers.
- Build a Linux image and run it under emulation.
- Save time and energy building embedded Linux systems.

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice

Other Options:

- [Buildroot](/cc/buildroot) is a simpler alternative to the Yocto project
- To request a customized training for this course, please contact us to arrange.
7 hours
Overview
Shadowsocks is an open-source, secure socks5 proxy.

In this instructor-led, live training, participants will learn how to secure an internet connection through a Shadowsocks proxy.

By the end of this training, participants will be able to:

- Install and configure Shadowsocks on any of a number of supported platforms, including Windows, Linux, Mac, Android, iOS, and OpenWrt.
- Deploy Shadosocks with package manager systems, such as pip, aur, freshports and others.
- Run Shadowsocks on mobile devices and wireless networks.
- Understand how Shadowsocks encrypts messages and ensures integrity and authenticity.
- Optimize a Shadowsocks server

Audience

- Network engineers
- System Administrators
- Computer technicians

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
7 hours
Overview
A real-time operating system (RTOS) is an operating system (OS) intended to serve real-time application process data as it comes in, typically without buffering delays.
14 hours
Overview
Raspberry Pi is a very small, single-board computer.

In this instructor-led, live training, participants will learn how to set up and program the Raspberry Pi to serve as an interactive and powerful embedded system.

By the end of this training, participants will be able to:

- Set up an IDE (integrated development environment) for maximum development productivity
- Program Raspberry Pi to control devices such as motion sensor, alarms, web servers and printers.
- Understand Raspberry Pi's architecture, including inputs and connectors for add-on devices.
- Understand the various options in programming languages and operating systems
- Test, debug, and deploy the Raspberry Pi to solve real world problems

Audience

- Developers
- Hardware/software technicians
- Technical persons in all industries
- Hobbyists

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice

Note

- Raspberry Pi supports various operating systems and programming languages. This course will use Linux-based Raspbian as the operating system and Python as the programming language. To request a specific setup, please contact us to arrange.
- Participants are responsible for purchasing the Raspberry Pi hardware and components.
7 hours
Overview
Raspberry Pi is a small, barebones computer developed by The Raspberry Pi Foundation.
21 hours
Overview
PCB (Printed Circuit Board) Circuit Design refers to the process of designing, etching, and printing circuits on a signal boards layout. Altium Designer is a freely available desktop application for designing PCBs.

In this instructor-led, live training, participants will learn how to use the Altium software to create PCB circuit boards. The course starts by examining a set of existing schematics, then drawing out an original circuit in Altium. The training steps through process for designing and manufacturing the circuit board.

By the end of this training, participants will be able to:

- Create a Printed Circuit Board (PCB) from any schematic
- Create schematics and design circuit boards using Altium
- Print and etch a physical circuit board
- Export the industry-standard files for sending to a large-scale manufacturer

Audience

- Engineers
- Technicians

Format of the Course

- Part lecture, part discussion, exercises and heavy hands-on practice

Notes

- To request a customized training for this course, please contact us to arrange.
21 hours
Overview
PCB (Printed Circuit Board) Circuit Design refers to the process of designing, etching, and printing circuits on a signal boards layout. EAGLE is a freely available desktop application for designing PCBs.

In this instructor-led, live training, participants will learn how to use the Eagle software to create PCB circuit boards. The course starts by examining a set of existing schematics, then drawing out an original circuit in Eagle. The training steps through process for designing the circuit board and discusses the process for manufacturing the boards (the course does not include the physical manufacturing of the boards).

By the end of this training, participants will be able to:

- Create a Printed Circuit Board (PCB) from any schematic
- Create schematics and design circuit boards using Eagle
- Export the industry-standard files for constructing the circuit board

Audience

- Engineers
- Technicians

Format of the Course

- Part lecture, part discussion, exercises and heavy hands-on practice

Notes

- To request a customized training for this course, please contact us to arrange.
7 hours
Overview
In this course, participants will learn C++ concepts and programming skills.
35 hours
Overview
NetApp data storage systems are hardware and software based systems for writing to and reading from disk arrays. Data ONTAP is the operating system used in NetApp storage systems.

This instructor-led, live training (onsite or remote) is aimed at engineers who wish to implement NetApp ONTAP in a clustered environment.

By the end of this training, participants will be able to:

- Set up and administer ONTAP 9.3 Cluster.
- Safeguard data through Data Protection technologies.

Format of the Course

- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.

Course Customization Options

- This course is based on ONTAP 9.3.
- To request a customized training for this course, please contact us to arrange.
35 hours
Overview
This instructor-led, live training (onsite or remote) is aimed at engineers who wish to learn the design principles of microcontroller design.

Format of the Course

- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.

Course Customization Options

- To request a customized training for this course, please contact us to arrange.
21 hours
Overview
Model Based Development (MBD) is a software development methodology that enables faster, more cost-effective development of dynamic systems such as control systems, signal processing and communication systems. It relies on graphic modeling rather than the traditional text based programming.

In this instructor-led, live training participants will learn how to apply MBD methodologies to reduce development costs and accelerate the time to market of their embedded software products.

By the end of this training, participants will be able to

- Select and utilize the right tools for implementing MBD.
- Use MBD to carry out rapid development in the early stages of their embedded software project.
- Shorten the release of their embedded software into the market.

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
14 hours
Overview
In this training, participants will learn how to build their own embedded Linux for the Raspberry Pi.
7 hours
Overview
The LEDE Project (Linux Embedded Development Environment) is a Linux operating system based on OpenWrt. It is a complete replacement for the vendor-supplied firmware of a wide range of wireless routers and non-network devices.

In this instructor-led, live training, participants will learn how to set up a LEDE based wireless router.

Audience

- Network administrators and technicians

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
14 hours
Overview
Internet of Things (IoT) is a network infrastructure that connects physical objects and software applications wirelessly, allowing them to communicate with each other and exchange data via network communications, cloud computing, and data capture.

In this instructor-led, live training, participants will learn the fundamentals of IoT as they step through the creation of an Arduino-based IoT sensor system.

By the end of this training, participants will be able to:

- Understand the principles of IoT, including IoT components and communication techniques.
- Learn how to use Arduino communication modules that can be used for different IoT systems.
- Learn how to use and program a mobile app to control Arduino.
- Use a Wi-Fi module to connect the Arduino to another device.
- Build and deploy their own IoT Sensor System.

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice

Note

- Arduino is available in different models and supports different programming interfaces (C, C++, C#, Python) and IDEs (Arduino IDE, Visual Studio, etc.). This course assumes the Arduino Uno board, Arduino IDE and the Arduino language (based on C/C++). To request a different setup, please contact us to arrange.
- Participants are responsible for purchasing the Arduino hardware and components.
140 hours
Overview
An embedded system is a computer system with a dedicated function within a larger mechanical or electrical system, often with real-time computing constraints.
21 hours
Overview
Arduino is an open-source, single-board, microcontroller for building devices that can sense and control objects in the physical world.

In this instructor-led, live training, participants will learn how to program the Arduino for real-world usage, such as to control lights, motors and motion detection sensors. This course assumes the use of real hardware components in a live lab environment (not software-simulated hardware).

By the end of this training, participants will be able to:

- Program Arduino to control lights, motors, and other devices.
- Understand Arduino's architecture, including inputs and connectors for add-on devices.
- Add third-party components such as LCDs, accelerometers, gyroscopes, and GPS trackers to extend Arduino's functionality.
- Understand the various options in programming languages, from C to drag-and-drop languages.
- Test, debug, and deploy the Arduino to solve real world problems.

Audience

- Beginner developers
- Hardware/software technicians
- Technical persons in all industries
- Hobbyists

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice

Note

- Arduino is available in different models and supports different programming interfaces (C, C++, C#, Python) and IDEs (Arduino IDE, Visual Studio, etc.). This course assumes the Arduino Uno board, Arduino IDE and the Arduino language** (based on C/C++). To request a different setup, please contact us to arrange.
- Participants are responsible for providing their own Arduino hardware and components for the course.
21 hours
Overview
This instructor-led, live training introduces the system architectures, operating systems, networking, storage, and cryptographic issues that should be considered when designing secure embedded systems.

By the end of this course, participants will have a solid understanding of security principles, concerns, and technologies. More importantly, participants will be equipped with the techniques needed for developing safe and secure embedded software.

Format of the course

- Interactive lecture and discussion.
- Lots of exercises and practice.
- Hands-on implementation in a live-lab environment.

Course Customization Options

- To request a customized training for this course, please contact us to arrange.
14 hours
Overview
Embedded Linux, with its low cost, ease of customization, and compatibility with many types of microprocessors has become the natural choice for powering a wide range of devices such as smart phones, tablets, set-top boxes and MP3 players.

In this instructor-led, live training participants will learn step-by-step how to build an embedded Linux system from the ground up. From building a minimalistic kernel to configuring the bootup and initialization processes, participants will learn the tools, techniques and mindset needed to deploy a fully functional embedded Linux system.

For remote trainings, QEMU will be used to emulate the hardware. Other platforms, including real hardware devices, can be considered on a case by case basis.

Format of the Course

- Part lecture, part discussion, heavy emphasis on hands-on implementation
21 hours
Overview
This training intends to introduce C++ as the common extension of C when applying object-oriented embedded system development. Since C++ encloses C, this training takes us from C to C++ in a natural way, and looks under the hood of how C++ is implemented. This is especially valuable to comprehend when applying C++ in an embedded resource limited environment. The C++ standard has recently been undergoing a major revision, a.k.a. as C++11, and a new one is on its way, C++14. This course addresses subjects brought in with these revisions that are especially useful like high performance memory management, concurrency making use of a multicore environment, and bare-metal close to the hardware programming.

GOAL/BENEFITS

The major objective of this class is that you shall be able to use C++ in a “correct way”.

- Introduce C++ as an object oriented language alternative in an embedded system context
- Show the similarities ‑ and differences ‑ with the C language
- Comprehend different memory management strategies – especially the move semantics introduced with C++11
- Look under the hood and understand what different paradigms in C++ leads to in machine code
- Use templates to achieve type safe high order abstractions for bare-metal close to the hardware programming – memory mapped I/O as well as interrupts – especially the variadic templates introduced with C++11
- Provide some useful design patterns especially applicable in an embedded context
- A few exercises in order to practice some concepts

AUDIENCE/PARTICIPANTS

This training is aimed C++- programmers who intend to start using C++ in an embedded system context.

PREVIOUS KNOWLEDGE

The course requires basic knowledge in C++ programming, corresponding to our trainings ”C++ – Level 1” and ”C++ Level 2 – Introducing C++11”.

PRACTICAL EXERCISES

During the training you will practice the presented concepts in a number of exercises. We will use the open and free integrated development environment from Eclipse
14 hours
Overview
This course demonstrates through hands-on practice the fundamentals of Embedded Computers.
14 hours
Overview
This is a two day course covering all basic principles of building Embedded linux Systems, around 60% of the entire course time is practical hands-on implementation for real world application using the same standards and tools used in industry
14 hours
Overview
A two day course consisting of around 60% hands-on labs focusing on Embedded Linux kernel internals, architecture, development and investigating how to write and integrate several types of device drivers.

Who should attend?

Engineers interested in Linux kernel development on Embedded systems and plateforms.
14 hours
Overview
This instructor-led, live training (onsite or remote) is aimed at C developers wishing to learn embedded C design principles.

By the end of this training, participants will be able to:

- Understand the design considerations that make embedded C programs reliable
- Define the functionality of an embedded system
- Define the program logic and structure to obtain the desired result
- Design a reliable, error-free embedded application
- Obtain optimal performance from target hardware

Format of the Course:

- Interactive lecture and discussion
- Exercises and practice
- Hands-on implementation in a live-lab environment

Course Customization Options:

- To request a customized training for this course, please contact us to arrange.
14 hours
Overview
A two day course covering all design principles with code examples coupled with recent industurial technology; very useful for automotive software developers
21 hours
Overview
Is C++ suitable for embedded systems such as microcontrollers and real-time-operating-systems?

Should object-oriented-programming be used in microcontrollers?

Is C++ too far removed from the hardware to be efficient?

This instructor-led, live training addresses these questions and demonstrates through discussion and practice how C++ can be used to develop embedded systems with code that is accurate, readable, and efficient. Participants put theory into practice through the creation of a sample embedded application in C++.

By the end of this training, participants will be able to:

- Understand the principles of object-oriented modelling, embedded software programming and real-time programming
- Produce code for embedded systems that is small, fast and safe
- Avoid code bloat from templates, exceptions, and other language features
- Understand the issues related to using C++ in safety-critical and real-time systems
- Debug a C++ program on a target device

Audience

- Developers
- Designers

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice
21 hours
Overview
The C programming language is perhaps the most popular programming language for programming embedded systems.
7 hours
Overview
Buildroot is an open-source project that contains scripts that produce a cross-compilation toolchain, a customizable root filesystem image, and a Linux kernel for embedded devices. During this practical course, participants will learn how to use it:

- How to select software that goes into the root filesystem.
- How to add new packages and modify existing ones.
- How to add support for new embedded boards.

During the course, bootable filesystem images will be produced. Remote courses are delivered using the [QEMU](/cc/qemukvm) emulator, while in the classroom it is possible to use either QEMU or real embedded boards of the trainer's choice.

Other projects with similar goals include the [Yocto project](/cc/yoctoproject) and OpenWRT. Please use [these](https://bootlin.com/pub/conferences/2016/elc/belloni-petazzoni-buildroot-oe/belloni-petazzoni-buildroot-oe.pdf) [presentations](https://elinux.org/images/0/0a/Embedded_Linux_Build_Systems.pdf) to determine which one is the right choice for your needs.
28 hours
Overview
In this instructor-led, live training, participants will learn how to build a robot using Arduino hardware and the Arduino (C/C++) language.

By the end of this training, participants will be able to:

- Build and operate a robotic system that includes both software and hardware components
- Understand the key concepts used in robotic technologies
- Assemble motors, sensors and microcontrollers into a working robot
- Design the mechanical structure of a robot

Audience

- Developers
- Engineers
- Hobbyists

Format of the course

- Part lecture, part discussion, exercises and heavy hands-on practice

Note

- Hardware kits will be specified by the instructor before the training, but will roughly contain the following components:

- Arduino board
- Motor controller
- Distance sensor
- Bluetooth slave
- Prototyping board and cables
- USB cable
- Vehicle kit

- Participants will need to purchase their own hardware.
- If you wish to customize this training, please contact us to arrange.

Upcoming Embedded Systems Courses

Weekend Embedded Systems courses, Evening Embedded Systems training, Embedded Systems boot camp, Embedded Systems instructor-led, Weekend Embedded Systems training, Evening Embedded Systems courses, Embedded Systems coaching, Embedded Systems instructor, Embedded Systems trainer, Embedded Systems training courses, Embedded Systems classes, Embedded Systems on-site, Embedded Systems private courses, Embedded Systems one on one training

Course Discounts

Course Discounts Newsletter

We respect the privacy of your email address. We will not pass on or sell your address to others.
You can always change your preferences or unsubscribe completely.

Some of our clients

is growing fast!

We are looking to expand our presence in Macao!

As a Business Development Manager you will:

  • expand business in Macao
  • recruit local talent (sales, agents, trainers, consultants)
  • recruit local trainers and consultants

We offer:

  • Artificial Intelligence and Big Data systems to support your local operation
  • high-tech automation
  • continuously upgraded course catalogue and content
  • good fun in international team

If you are interested in running a high-tech, high-quality training and consulting business.

Apply now!