title: Why is my input source not changing when I send the <Active Source> message via CEC-Client?
body: <h2>Problem/Question</h2>
  
  <p>When I use CEC-Client to send the active source command to switch the TV input to a particular source, nothing happens. What am I doing wrong?</p>
  
  <h2>Environment</h2>
  
  <p>I have a Raspberry Pi 4 running Raspbian plugged into a Vizio TV. I've installed cec-client (via cec-utils), and I'm running commands using it from within Bash on the Raspberry Pi.</p>
  
  <p>Here is the scan of the CEC bus of my setup:</p>
  
  <pre><code>CEC bus information
  ===================
  device #0: TV
  address:       0.0.0.0
  active source: no
  vendor:        Unknown
  osd string:    TV
  CEC version:   1.3a
  power status:  on
  language:      eng
  
  
  device #1: Recorder 1
  address:       4.0.0.0
  active source: yes
  vendor:        Pulse Eight
  osd string:    CECTester
  CEC version:   1.4
  power status:  on
  language:      eng
  
  
  device #4: Playback 1
  address:       1.0.0.0
  active source: no
  vendor:        Unknown
  osd string:    Roku
  CEC version:   1.4
  power status:  on
  language:      ???
  
  
  currently active source: Recorder 1 (1)
  </code></pre>
  
  <h2>What I have tried:</h2>
  
  <p>A lot of things.<br>
  More specifically:</p>
  
  <ul>
  <li><code>tx 1f:82:10:00</code></li>
  <li><code>tx 1f 82 10 00</code></li>
  <li>(<em>a bunch of stuff with wrong addresses</em>)
  
  <ul>
  <li><em>e.g. <code>tx 4f:82:10:00</code> and <code>tx 10:82:10:00</code></em></li>
  </ul></li>
  <li><code>sp 1.0.0.0</code></li>
  <li><code>spl 4</code></li>
  <li>reading the <a href="http://bfiles.chinaaet.com/whpt/blog/20170919/1000008562-6364143185282736974850538.pdf#page=251" rel="nofollow noreferrer">HDMI specification regarding active source messages on CEC</a></li>
  </ul>
  
  <h2>Other Info</h2>
  
  <ul>
  <li><p>I know that the TV supports it, because the device that I am trying to switch to (a Roku) uses CEC to switch inputs to itself when I start using its remote. Watching CEC-Client when it does this, it sends <code>4f:82:10:00</code> to declare itself as the active source, which is exactly what I've tried except with itself as the initiator (which I've also tried just in case).</p></li>
  <li><p>To make sure that the <code>tx</code> command was working, I used it to successfully send the TV into standby.</p></li>
  <li><p>Using <code>as</code> to set the Pi as the active source works fine, but the corresponding tx command, <code>tx 1f:82:40:00</code>, does nothing (even though the output of CEC-Client shows it using the exact same message).</p></li>
  <li><p>I have only listed the CEC-Client commands above, but I have tried them all both directly in the CEC-Client's interactive prompt and by echoing it into cec-client (i.e. <code>echo "tx 1F:82:10:00" | cec-client RPI -s -d 1</code>).</p></li>
  </ul>
  
  <h2>Where I'm At</h2>
  
  <p>Any help/feedback would be greatly appreciated! I'm at my wits' end, and can't think of anything else to try that I haven't already. </p>
  
  <p>(Also any feedback on my question is welcome; I'm still pretty new to posting on the StackExchange network)</p>