Switch branches/tags
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
cast_channel
.gitignore
README.md
chromecast.go
main.go
midna.go
roomba.go
zbox.go

README.md

avr-x1100w is the model number of AV receiver I use, and the code found in this package orchestrates the receiver.

The intention is that I never have to switch the source of my AV receiver, and I never have to turn them on or off. Instead, this orchestration tool looks at all the available media input sources and controls the devices.

Logic

The program takes the following inputs into account:

  1. Which app is running on the Chromecast (e.g. Netflix, YouTube).
  2. Whether my gaming computer (“beast”) is powered on.
  3. Whether my workstation (“midna”) is unlocked.

Based on these inputs, the following outputs are controlled:

  1. AVR power state (on or standby).
  2. AVR input source (midna, Chromecast or beast).

For the logic that determines the outputs, see stateMachine() in main.go.

Cross-compilation

In order to cross-compile this code to run on a Raspberry Pi, use GOARCH=arm GOARM=5 go build.