Coder Social home page Coder Social logo

pi_hifi_ctrl's Introduction

pi_hifi_ctrl

Raspberry Pi Hi-Fi Amplifier Control

This project aims to breathe new life into old Hi-Fi amplifiers/receivers, by adding network (or automatic) control via a Raspberry Pi.

Supported Amplifiers:

  • Cambridge Audio azur 540A/640A v2, 840A v2, CXA60 (CXA81?)

If you have another Cambridge Audio amplifier, please contact me, I'll do my best to find the relevant documentation and add support for it.

Dependencies:

Wiring:

  • Pick an unused GPIO pin on your Pi (the default is GPIO 4).
  • Connect your pin to the signal wire of an RCA cable, and a ground to the shield.
  • Plug the RCA cable in to the "Ctrl In" socket on your Cambridge Audio amplifier.

ca_amp_ctrl.py Usage:

ca_amp_ctrl.py is used to send a command to the amplifier.

ca_amp_ctrl.py [-h] [--pin [GPIO number]] [--repeat [positive integer]] [--model [model number]] command

Exactly one command must be specified. Commands differ between amplifier models, for the 540A/640A they are:

Command Function
ampon power on
ampoff, standby power off
aux, av, cd, dvd, tapemon, tuner source selections ("av" is the "DMP/MP3" input)
source+, source- select next/previous source
tapemon toggle tape monitoring
vol+, vol- increase/decrease volume (a small increment)
mute, muteon, muteoff mute toggle/on/off
clipon, clipoff probably turns on/off clipping protection (untested)
bright maybe display brightness?

The other optional arguments are:

-h merely shows brief usage help (including a full list of available commands and amplifier models)
--pin [GPIO number] to specify the GPIO pin to transmit on (default: 4)
--repeat [positive integer] to repeat the command (e.g. vol+/vol- only move the volume a very small amount)
--model [model number] to select your amplifier model, available choices are: CXA60, 840A, or 540A. The default is 540A, which should also be compatible with the 640A. CXA60 may also be compatible with CXA81.

cec_stream.py Usage:

cec_stream.py is used to receive commands from a TV via HDMI and forward them on to the amplifier. The amplifier will turn on & off when the TV does, and will respond to the TV's volume & mute buttons.

Copy cec_stream.py into /home/pi/cec/ and startup_cec into /etc/init.d/, then run:

sudo update-rc.d startup_cec defaults

It will then start/stop when you boot/shutdown. Plug an HDMI cable from your pi into the TV, preferably via the "ARC" HDMI port.

pi_hifi_ctrl's People

Contributors

andrew-bolin avatar wackydoo avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.