This guide covers the lightweight “bundle” workflow: running servo control, controller input, and voice assistant as independent scripts. It’s the best fit for headless Raspberry Pi setups that don’t need a desktop UI.
When to Pick Bundle Mode
- You want to start or stop components individually (e.g., voice only, movement only).
- You’re running on a headless Pi without a monitor.
- You prefer simple console logs over a Tkinter GUI.
For the desktop all-in-one experience, see master-guide.txt.
Bundle Contents
Located in the bundle/ directory:
- mechanism.py: Servo helpers that drive the PCA9685 board.
- controller.py: Maps evdev gamepad events to movement helpers.
- voice.py: GPT-powered voice assistant with AWS Polly speech output.
- run_master.py: Starts voice + controller threads (same behavior as the old tars.py).
Prerequisites
- Follow the base setup steps in pi-setup.txt.
- Edit bundle/voice.py to add your OpenAI, AWS Polly, and OpenWeatherMap keys.
- Wire the PCA9685 board and servos; confirm your gamepad shows up under /dev/input/eventX.