Computer Hardware

11 posts

Build an inexpensive wired music player on a Raspberry Pi

I wanted a music player with the following features:

  • Inexpensive (less than $40)
  • Low power (1 watt)
  • Plugs in to a audio system (no batteries, not a portable player)
  • Runs 24/7
  • Automatically starts playing again after losing power
  • Expandable storage
  • Web interface

I built it on a Raspberry Pi Zero W. It is a full computer that is only 2 inches long

Continue reading

Synology NAS Backup Script

I use external drives to backup everything on my Synology NAS. My data easily fits on a single large drive so:

  • I put two large drives in my NAS and use raid1 (mirrored disks)
  • The entire backup (or even multiple backups) can fit on an external drive.

Continue reading

Updating Route53 DNS dynamically

If you are using Route53 for DNS, it is pretty easy to update a route 53 DNS record with your current IP address as a dynamic DNS service. Here is a script that does so. It

  • Looks up your current IP address
  • Looks up the IP address in DNS for your host name
  • Uses the AWS command line client to update the DNS record if it needs to be changed

Continue reading

USB sound in Ubuntu – automatically selecting a USB audio device when it is plugged in

Ubuntu has started to support USB audio.    When I plug in a USB speaker or headset (such as my Pyle USB gaming headset), it gets recognized and installed automatically.  However there are some bugs:

  • The USB sound device does not get selected automatically.   This is especially annoying for headphones.  When you plug in analog headphones, the sound automatically switches to them and the main speakers turn off.
  • The volume settings are turned way up for the device.  Ideally it would remember the volume settings from the last time the device was plugged in.
  • When the computer goes to sleep, the volume of usb devices gets turned way up on wake.

I discovered that I could address these shortcomings by creating a script.

Continue reading