cec-follower - An application to emulate CEC followers
] [-d <dev>
] [other options]
tool is used to emulate CEC followers. Based on the
configured logical address(es) of the CEC device it will emulate the CEC
Configuring the CEC device is done using cec-ctl
. Certain CEC
functionalities are only emulated if the corresponding Device Features flag is
set (these are set when configuring with cec-ctl
). These are:
- Audio Return Channel (RX and TX)
- Audio Rate Control
- Deck Control
- Record TV screen
is basically a message loop, waiting for messages to arrive
and taking the appropriate action for each message (incoming messages can be
shown with the --show-msgs
option). The follower maintains an internal
state with appropriate parameters such as volume, current active source, power
state and so on (state changes can be shown with the --show-state
It also aims to be a reference implementation on how a follower should behave.
will keep track of incoming messages and look for violations
of the CEC specification with regards to timings. For example, it will warn if
it receives the same message again within 200ms after it replied <Feature
Abort> ["Unrecognized Opcode"] to that message, and it will check
that press and hold behavior is done properly.
will periodically send out polling messages to discover when
a remote device is removed or a new one has appeared. When a device is
removed, the recorded information about it is cleared. Each logical address is
polled about once every 15 seconds. In between polls, removing a remote device
or replacing it with a new one is not detected.
When running compliance tests with cec-compliance
should be run on the same device to act on incoming messages that are not
replies to messages sent by the compliance tool. Before each test-run
should be restarted if it is running, to initialize the
emulated device with a clean and known initial state.
- -d, --device=<dev>
- Use device <dev> as the CEC device. If <dev> is
a number, then /dev/cec<dev> is used.
- -v, --verbose
- Turn on verbose reporting.
- -T, --trace
- Trace all called ioctls. Useful for debugging.
- -h, --help
- Prints the help message.
- -n, --no-warnings
- Turn off warning messages.
- -m, --show-msgs
- Show received messages.
- -s, --show-state
- Show state changes from the emulated device.
On success, it returns 0. Otherwise, it will return the error code.
This manual page is a work in progress.
Bug reports or questions about this utility should be sent to the