Control Zoom Audio and Video with Raspberry Pico Wireless on Your Mac

Ferry Djaja
5 min readJan 25, 2024

As someone who frequently participates in numerous work-related meetings, I have expressed my interest in creating an automated system for controlling Zoom’s audio and video with through the simple click of a physical button. It is currently working on Mac.

In this tutorial, I will demonstrate how to control the Zoom application by muting/unmuting audio and toggling video on/off with a physical button. Additionally, I will guide you on incorporating visual feedback through an LED indicator to display the current status of Zoom’s audio and video activation.

What we need ?

  • A Raspberry Pico Wireless version.
  • 2 LEDs and 2 push buttons.
  • 2 resistors 220 Ω and few jumper wires.
  • A breadboard

We need a Raspberry Pico Wireless since we will communicate with the host computer via Bluetooth.

This is my Zoom meeting companion device, providing live updates on audio and camera status — whether muted or unmuted, and if the camera is on or off through LEDs. It has buttons for easy control of my Zoom meeting too!

Let’s get started !

We will write a Python and a uPython script on the host computer and Pico respectively. Additionally, we will write an Apple Script to manage the Zoom application on your Mac.

Python Script on Host Computer

Install the bleak library on your Mac:

This script will initiate a connection to Pico, monitor incoming messages from Pico, and execute AppleScript commands to mute/unmute and toggle video on/off. It will also relay the audio and video status back to Raspberry Pico, enabling the Pico to display the Zoom audio and video status on an LEDs.

import asyncio
from bleak import BleakScanner…