"When Life Gives You Lemons, You Paint That Shit Gold" - Atmosphere
Enhance your mobility experience with "Pimp My Gimp," a makeover for your mobility assistive device using a Raspberry Pi and Python. Features include battery-operated programmable LED underlighting, speakers, and a real-time speedometer.
Click to see a video of an enhanced scooter
- Mobile-friendly web interface.
- Customizable LED underlighting.
- Integrated odometer and speedometer.
- Interactive sound effects.
- Completely battery-operated system.
- Raspberry Pi with docker installed. See Install Docker on Raspberry Pi
- Additional hardare outlined below
Run the application with the following Docker command:
docker run --name pimp-my-gimp --privileged -p 80:80/tcp elgeeko/pimp-my-gimp
Launch the web app in your browser by navigating to the IP address of your Raspberry Pi.
All hardware components are optional. To disable a hardware component, add the appropriate flag to the end of the docker run
command:
--no-light
: disable the LED lights--no-odometer
: disable the odometer--no-audio
: disable audio output
Configure your Raspberry Pi to connect to your phone's wifi hotspot for enhanced portability.
Create a docker volume to store trajectory information such as distance traveled across program restarts. This only needs to be executed once.
docker volume create pimp-my-gimp-cache
Run the application as before, modified with the persitant data volume and restart policy:
docker run \
--name pimp-my-gimp \
--privileged \
-p 80:80/tcp \
--volume pimp-my-gimp-cache:/app/cache \
--restart unless-stopped \
--detach \
elgeeko/pimp-my-gimp
If you are using the built-in audio output, it should work by default. However the audio output jack is blocked when installed according to the instructions here, so a separate USB DAC is used instead. To set this as the default output, make the following two modifications in /etc/asound.conf
defaults.pcm.card 1
defaults.ctl.card 1
Any mobility device may be adapted to use these modifications. The device used here is a knee scooter.
- Knee Scooter: KneeRover Knee Scooter
- Raspberry Pi: Raspberry Pi 4B
- Case: Miuzei Raspberry Pi 4B Case
- Battery: Talentcell 22400mAh 82.88Wh lithium ion battery PB240A1
- Benchtop power (for prototyping): ALITOVE 5V 10A Power Supply
- USB pigtail: USB 2.0 Male Bare Cable Pigtail
- LED Strip Light: Adafruit NeoPixel 332 LED-per-Meter Silicone Bead LED Strip
- Connector: 3-pin JST SM Plug
- Magnet: Neodymium magnet 0.125" cube x 8
- Sensor: AN1815 Hall Effect Sensor
- DAC: Cubilux USB to 3.5mm Audio Adapter
- Amplifier: SparkFun Qwiic Speaker Amp
- Speakers: Sparkfun Thin Speaker - 4 Ohm, 2.5W, 28mm x 2
- Wiring: 3.5mm Audio Cable - Male to Male
Pimped-out Mobility scooter system
LED track lighting mounted using double-sided tape
Mounting of magnets on moving axle and Hall Effect sensor. Ensure the Hall Effect sensor is proximate to magnets as they pass by without contacting them. Try to space them out equally.
This project is licensed under the MIT License - see the LICENSE.md file for details.