Category Archives: Python

Plotting Live Data in Python Using PyQT

In this video lesson we show how Live Data can be plotted using a PyQt window. Our eventual goal is to bring in live data from the Raspberry Pi Pico W using UDP over WiFi, but to learn the concepts today, we will be generating a live sin wave to show how the plotting works. Here is the code we developed in this lesson:

 

PyQt Essentials for Absolute Beginners

In this Video Lesson we show you how to create a Graphical User Interface to allow you to interact with your python program and hardware projects. The GUI can have buttons, slider bars, radio buttons, drop down menus, and many more widgets. In this lesson we show you how to install the package, and step-by-step instructions on how to use it. For your convenience, here is the code we developed in the lesson.

 

Simple Client Server Project for the Raspberry Pi Pico W

In this video lesson we demonstrate a simple client server project on the Raspberry Pi Pico W. The Pico is configures as the server, and your desktop pc or laptop is configures to be the client. You will be running python on your PC. The project requests the user on the PC to specify a desired color. The color is then sent to the Pico, the Server.

For this lesson we are not using the breadvolt power supply, but we will use it in future lessons. For this lesson, you do not need to attach it, and if you do attach it, leave it ‘off’.

Below is the schematic for the Server Side of the project:

LED and Buttons
Schematic for Circuit to Demonstrate a Client Server Example on Pi Pico

For your convenience, this is the code we developed in the video

Remember you must create a secrets.py file, and save it on the Pi Pico in the lib folder. You need to specify YOUR WiFi name and password in the file.

And finally, here is the code to run on the client side on your PC

 

Sending Data Over WiFi Between Raspberry Pi Pico W and Your PC

In this video lesson we show how we can send and receive data between the Raspberry Pi Pico W, and your PC. We will be running python on the PC, and we will exchange data using the UDP protocol. UDP is simple, and a very reliable way to send data packets back and forth. In this example, we will be demonstrating a simple Client Server relationship between the Pi Pico and PC using UDP over WiFi.

For your convenience, this is the “Server” software you will run on the Pi Pico.

Notice that the above code wants to load a “secrets” file that contain your WiFi name, and password

You should edit the code below with your WiFi username and your password, and then save the file in the Pi Pico lib folder, with the name secrets.py (don’t forget the .py)

Now, on the PC side, you will run your client, which will be run in Python. Here is the client software:

 

Raspberry Pi Pico PIO State Machine IRQ Interrupts

 In the video lesson above, we show how to incorporate IRQ interrupts on the Pi Pico PIO State Machines. The state machines will monitor the buttons, watching for button presses. When a button is pressed, an interrupt is set. That interrupt can then be used by that same state machine, a different state machine on the same PIO, or in the main micropython program. Our first example will be to toggle the LED in the main python program, based on the interrupt from the state machine. In the second example, one state machine monitors the button, and the second state machine controls the LED. This is a schematic for the circuit we will be using.

Interrupts
Circuit Schematic for Button Control LED Interrupts

This first code controls the LED from the main python program.

This next program uses only the state machines. Interrupts and LED control are both done in the state machines.