Learn to write software for embedded systems and IoT with Python and C/C++. You work hands-on with a Raspberry Pi Pico and the RP2040, connect peripherals and program the control yourself.

  • You work hands-on with the Raspberry Pi Pico and the RP2040 microcontroller.
  • You will learn to use both Python and C/C++ for embedded development.
  • You will gain insight into microcontroller architecture and how to control it.
  • You build your own applications with sensors, an LCD display, a servo motor and wifi.
  • You learn when to choose Python and when C/C++ is the better fit.

In-company

Recommended number of days: None
Group: up to a maximum of 8 people
Location: In-company, throughout the Netherlands
Language: Dutch or English
Investment: on request
Are there any other wishes or requirements? We can tailor the course to your needs.

Would you like to learn how to write software for embedded systems and IoT devices? In this course you will discover how to control a microcontroller using Python and C/C++. You will work with the Raspberry Pi Pico and build your own embedded applications step by step. You will get to know the architecture of a microcontroller and apply that knowledge directly in practical labs. Whether you want to read out a sensor, drive a display or set up a wifi connection: after this course you will know how to go about it.

Description

Embedded software is found in almost every electronic device. Sensors, watches, thermostats, microwaves, smartphones and cars all run on embedded code. Every embedded system is unique and is carefully tailored to the device it sits in. This makes embedded development a sought-after and versatile skill for software engineers.

In this course you gain insight into the hardware of a microcontroller and learn how to write software for it. You use two languages, each with its own strengths. With Python you develop applications for embedded systems and IoT projects quickly and compactly. With C/C++ you get the most out of the hardware, work with a Real Time Operating System and handle tasks at microsecond level.

You will work on a Raspberry Pi Pico with an RP2040 microcontroller. In the labs you will connect an LCD display, a servo motor and a wifi module and programme them yourself. Step by step you will discover what embedded development involves and how to apply it in practice.

Topics

  • What an embedded system is and what characteristics it has
  • Microprocessor versus microcontroller
  • Processor architectures, registers and instruction cycles
  • The Raspberry Pi Pico and the RP2040 microcontroller
  • Python on a microcontroller with the Pico Python SDK
  • Working with Visual Studio Code as a development environment
  • General Purpose IO and driving an LCD display
  • C/C++ on the Pico with the Pico C/C++ SDK
  • CMake and Make as build tools
  • Learning to read and apply Assembly
  • Driving a servo motor and a wifi module
  • Real Time Operating Systems and timing

Result

After this course you will be able to write software for embedded systems and IoT devices independently. You will know how a microcontroller is put together and how to control registers, GPIO pins and peripherals. You will be able to programme a Raspberry Pi Pico in both Python and C/C++ and you will know which language suits which problem. You will have experience with the Pico SDK, Visual Studio Code, CMake and Make. You will also be able to connect and operate sensors, an LCD display, a servo motor and a wifi module from your own code.

Target audience

This course is intended for software engineers, developers and technicians who want to make the move towards embedded development and IoT. Do you work with Python or C/C++ and would you like to learn how to use these languages to control hardware? Then this course is a good fit for you. Even if you work with microcontrollers as a hobby and want to take your knowledge to a higher level, you will find plenty of new insights in this course. The combination of theory and practical labs makes the material accessible to professionals and advanced enthusiasts alike.

Teaching method

The course is classroom-based and strongly practice-oriented. You alternate theory with hands-on labs in which you work directly with a Raspberry Pi Pico. The trainer explains the architecture and concepts and then helps you apply that knowledge in your own code. Thanks to the small groups, there is plenty of room for questions and personal guidance. You work with real hardware and connect components yourself, such as an LCD display, a servo motor and a Wi-Fi module. In this way you build up confidence in embedded development step by step.

Prior knowledge

For this course you need basic knowledge of Python or C/C++. You do not have to be an expert, but you should be comfortable with variables, functions, loops and conditions. Bear in mind, too, that a lot of English terminology comes up, because the documentation and tooling are in English. Some affinity with the English language is therefore useful.

Language

The training is given in Dutch as standard. The trainer has a good command of English. English-language course material can be used. With a minimum enrolment of 3 participants, the training can also be given entirely in English.

The best training for you

At Learnit you will always find a course that takes you further. From (technical) IT skills to communication or personal leadership. You can also choose the training format that suits you best: a classroom course, a tailor-made course at your own office, an online course or an e-learning. We have the right course and the right format for everyone. Because learning in the way that suits you best delivers the best results.

Participants attending a classroom training course at Learnit

Why choose training at Learnit?

  • Always and everywhere personal

    Personal attention and a pleasant atmosphere. Whether you take a course with us, at your office or on your own PC, we make sure you feel at home enough to push your boundaries.

  • Just do it!

    New opportunities arise when you get moving. Stay sharp. Keep taking new steps. We encourage you to take the plunge and really go for it.

  • Growing through knowledge and inspiration

    Discover something new. Build on your strengths. And choose your own path. We help you grow with training courses and learning formats that genuinely suit you.

  • Skills for the future

    We always think in terms of possibilities and win-win. And every day we work on new solutions for tomorrow. By offering training courses that leave you well prepared for the future.

  • Working together on quality

    We don't make empty promises. What we do offer is quality, knowledge and experience. A broad range of courses, made possible by our inspired staff and trainers.

  • Understanding and being understood

    We listen to what matters to you. To what you need. Because that is where our solution, our tailored approach, begins. Understanding each other properly and communicating clearly: that is what we believe in.

Find out more about Learnit
Trainer and participants working together during a Learnit course

Moving forward together

Taking a training course at Learnit means learning together. Together with your experienced trainer, together with your course group or together with your colleagues. And whether you take the training at home, at your office or at one of our training locations, we are always available to help you. To share our knowledge with you in a way that is genuinely useful to you. Getting further together through personal attention and understanding each other well; that is what we believe in.

Apply it directly in your work

Learning theory from a book that you can then hardly use in your work? Not at Learnit! Whichever training you take with us, you can put it to use at your workplace straight away. Because of the unique learning objectives you set together with the trainer at the start of the training. Because of the alternation between theory and (interactive) practical assignments. And by bringing the challenges you face in your daily work along to the training.

Participants apply what they have learnt straight away in the workplace

Reviews

What others say about this course

Embedded development with Python or C++ course reviews - Average score 8.2 from 6 reviews

  • “The course gave me a good start in better understanding the embedded system I work with at the company.”

    R. van Putten, Rhosonics Analytical BV - Embedded development with Python or C++
    Rating 8.0
  • “A good C / embedded C beginners' course that moves through the material quickly, so a lot of ground can be covered. There is plenty of variation between theory and practice. This course is also suitable for people with some (hobby) programming experience.”

    Kiman Velt, Nedap N.V.- Embedded development with Python or C++
    Rating 8.3
  • “An excellent course, with a good balance between theory and practice.”

    R. van Bemmelen- Embedded development with Python or C++
    Rating 8.4
  • “A very good introduction to embedded control.”

    O. Einfinger, FMTC - Embedded development with Python or C++
    Rating 8.1
  • “A tailor-made course delivered by a knowledgeable, experienced and motivated trainer. A good balance between theory and practice.”

    Rowan Klein Gunnewiek, Nedap N.V. - Embedded development with Python or C++
    Rating 8.0
  • “I think the course is very suitable for anyone who wants to understand the world of embedded systems. The 4 days were certainly needed, as numerous topics were discussed. Very interesting.”

    M. Brinker, Ericsson ETM - Embedded development with Python or C++
    Rating 8.2
  • “Intensive and inspiring!”

    Christiaan Kusters, AFM - Programming in Python
    Rating 8.1
  • “A very good introduction to embedded control.”

    O. Einfinger, FMTC - Embedded development with Python or C++
    Rating 8.1
  • “Enjoyable, interesting course for laying a first foundation to get started with Python”

    Sander Huitema, Nederlandse Gasunie N.V. - Programming in Python
    Rating 8.6
  • “I think the course is very suitable for anyone who wants to understand the world of embedded systems. The 4 days were certainly needed, as numerous topics were discussed. Very interesting.”

    M. Brinker, Ericsson ETM - Embedded development with Python or C++
    Rating 8.2
  • “A good C / embedded C beginners' course that moves through the material quickly, so a lot of ground can be covered. There is plenty of variation between theory and practice. This course is also suitable for people with some (hobby) programming experience.”

    Kiman Velt, Nedap N.V.- Embedded development with Python or C++
    Rating 8.3
  • “Comprehensive coverage of the ins and outs of Python, with plenty of practical tips. Presented in a compact and understandable way by 'Pythonista' Andre van Wieringen. In 3 days of training he really took us to a higher level. Definitely recommended!”

    Paul de Vries, Xsens Technologies B.V.- Programming in Python
    Rating 8.7
  • “I followed this course entirely to my satisfaction. A very good trainer with a great deal of practical experience managed to convey the material clearly to me and my colleagues with appealing examples and exercises. I can recommend this course to anyone who wants to become familiar with Python in a short time.”

    Robin van Schaik, Albelli B.V. - Programming in Python
    Rating 8.3
  • “In 2 days the course gave me a good picture of Python, the basics, the possibilities and also hands-on work and practice with it. The threshold for me to start using it myself is now lower.”

    Frederica Janga, Nederlandse Gasunie N.V.- Programming in Python
    Rating 7.7
  • “The course gave me a good start in better understanding the embedded system I work with at the company.”

    R. van Putten, Rhosonics Analytical BV - Embedded development with Python or C++
    Rating 8.0
  • “A good practical introduction to Python. You learn to programme independently.”

    Fred Uiterweerd, Stichting ICTU- Programming in Python
    Rating 7.7
  • “A tailor-made course delivered by a knowledgeable, experienced and motivated trainer. A good balance between theory and practice.”

    Rowan Klein Gunnewiek, Nedap N.V. - Embedded development with Python or C++
    Rating 8.0
  • “Excellent course, immediately applicable. Course given by a teacher with experience in using Python. Highly recommended!!”

    R.A.A. van Vliet, STEricsson - Python Programming
    Rating 8.4
  • “An excellent course, with a good balance between theory and practice.”

    R. van Bemmelen- Embedded development with Python or C++
    Rating 8.4
  • “Very suitable for people who want to get started with Python.”

    J. Banken - Enexis- Python Programming Basics
    Rating 9.0
  • “Good 3-day basic course with plenty of content and room for practice cases.”

    P. Janssen - Enexis - Python Programming Basics
    Rating 8.2
  • "A pleasant way to get to know the basics of Python and to take it further after the course. Highly recommended!"

    - Python Programming Basics
  • “This course gives you a good insight into what you can do with Python and how to develop in an IDE. If you are interested in programming, I can warmly recommend this course.”

    E. Peters - Fokker- Python Programming Basics
    Rating 9.6
  • “Whether you want to know more about Python, or simply want to know what Python is, or would rather start programming yourself, this course is enjoyable / clear / challenging enough to engage and occupy both the beginner and someone who already knows a programming language.”

    R. Schenk, Sanitair-Installatie Hoogendoorn B.V.- Python programming basics
    Rating 9.5
  • “If you want to get acquainted with Python and are curious about what it can bring you at work or privately, this is definitely recommended!”

    R. Koopman - Fokker- Python Programming Basics
    Rating 10.0
  • “Good and enjoyable!”

    S. Lemm - Gunnebo Doetinchem- Python programming basics
    Rating 8.4

Learnit reviews

Frequently asked questions

You learn how to write software for embedded systems and IoT devices with Python and C/C++. You gain insight into the architecture of a microcontroller and learn how to control it. You work with the Raspberry Pi Pico and the RP2040 microcontroller, program an LCD display, a servo motor and a wifi module, and learn which language best suits which situation.

This course suits software engineers, developers and technicians who want to extend their work towards embedded development and IoT. Advanced hobbyists who want to get more out of their microcontroller are also in the right place. You already have programming experience and now want to learn how to bring your code to hardware.

You need a basic knowledge of Python or C/C++. Think of variables, functions, loops and conditions. You do not have to be an expert, but you should feel comfortable reading and writing code. As much of the documentation and tooling is in English, some affinity with the English language is helpful.

The course alternates theory with practical labs. You first learn how a microcontroller is put together and then get to work yourself. You work with a Raspberry Pi Pico, connect components and program them in Python and C/C++. Topics such as GPIO, build tools, Assembly and Real Time Operating Systems are covered step by step.

The course is classroom-based. You follow the lessons together with other participants in a small group, which leaves plenty of room for questions and personal guidance. The trainer explains, demonstrates techniques and helps you in the labs to apply everything yourself on real hardware.

The course is taught by an experienced trainer with a strong background in embedded development and software engineering. The trainer combines in-depth technical knowledge with practical experience from projects in which Python, C/C++ and microcontrollers come together. So you get not only theory, but also tips from day-to-day practice.

Afterwards you receive a Learnit certificate as proof of participation. You also take away a great deal of practical knowledge: you can program a microcontroller in Python and C/C++, you know how to control peripherals and you have experience with the Pico SDK, Visual Studio Code, CMake and Make.

You can prepare by refreshing your basic knowledge of Python or C/C++. Work through a few exercises with variables, functions, loops and conditions. If you have never worked with a microcontroller before, it is useful to read up on the Raspberry Pi Pico and the RP2040 in advance. No installation beforehand is required.

Please let us know as soon as possible. In consultation, you can move the course to another date so that you do not miss any of the material. Our service desk is happy to think along with you to find a suitable solution.

Yes, on completion of the course you receive a Learnit certificate as proof of participation. With it you can show colleagues or your employer that you have mastered the basics of embedded development with Python and C/C++.

Booking is straightforward via the course page. Choose a date that suits you and enter your details. You will then receive a confirmation with all the practical information. Do you have a question, or would you like to attend with several colleagues? Then please contact our service desk.

You will find the current price at the top right of the course page.