Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

YouTube

Raspberry Pi Serial to Web API - Multiprocessing vs Threads and Programming in C vs Python

Penguin Tutor via YouTube

Overview

Coursera Flash Sale
40% Off Coursera Plus for 3 Months!
Grab it
This video tutorial explores the development of a web API for converting USB serial messages to and from a GUI application for a Raspberry Pi Model Railway controller. Learn about the challenges of multiprocessing in Python, particularly how QThreadPool cannot utilize different processor cores due to the Python Global Interpreter Lock (GIL). Discover alternatives like using independent processes with message passing capabilities. Follow the journey from comparing Python and C programming approaches to implementing CBUS model railway control with a DCC controller and CANUSB4. Explore GUI application development using Python and Pyside6, understand the implementation of 0MQ (Zero Message Queue), and see the challenges of C programming with LibMicroHttpd including segmentation faults. The tutorial also covers creating a Python-based API with Flask and demonstrates the GUI application in action, concluding with future development plans. Source code and additional details are available through the provided link to the PenguinTutor website.

Syllabus

00:00 Introduction
00:18 Python vs C
01:27 CBUS model railway control
02:00 CBUS DCC controller and CANUSB4
02:30 GUI application with Python and Pyside6
03:45 Challenges of QThreadPool
04:53 0MQ Zero Message Queue
05:44 C and LibMicroHttpd
08:07 Segmentation fault through C programming
10:05 Python based API with Python Flask
11:40 GUI application demo
12:46 Future plans

Taught by

Penguin Tutor

Reviews

Start your review of Raspberry Pi Serial to Web API - Multiprocessing vs Threads and Programming in C vs Python

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.