<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Circle Unit</title>
    <description>The latest articles on DEV Community by Circle Unit (@circle_unit_78c51e2b5bf45).</description>
    <link>https://dev.to/circle_unit_78c51e2b5bf45</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F4109239%2F250d9e00-eb20-42e2-9982-715bed7c080d.png</url>
      <title>DEV Community: Circle Unit</title>
      <link>https://dev.to/circle_unit_78c51e2b5bf45</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/circle_unit_78c51e2b5bf45"/>
    <language>en</language>
    <item>
      <title>Wireless ADB on a TV box from an iPhone (no computer)</title>
      <dc:creator>Circle Unit</dc:creator>
      <pubDate>Mon, 07 Sep 2026 08:59:17 +0000</pubDate>
      <link>https://dev.to/circle_unit_78c51e2b5bf45/wireless-adb-on-a-tv-box-from-an-iphone-no-computer-53m6</link>
      <guid>https://dev.to/circle_unit_78c51e2b5bf45/wireless-adb-on-a-tv-box-from-an-iphone-no-computer-53m6</guid>
      <description>&lt;p&gt;I got tired of walking to a laptop every time I needed to sideload a package, grab a screenshot, or tail logcat on a living-room box.&lt;/p&gt;

&lt;p&gt;ADB already does all of that. The pain is the ritual: USB or &lt;code&gt;adb connect&lt;/code&gt;, a terminal, and a machine that is not on the couch. This is the wireless path I use now from an iPhone, plus the small app I built so I do not have to keep a shell open.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fol1sgm5n8y9f6rlk3vs5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fol1sgm5n8y9f6rlk3vs5.png" alt="Nearby device scan on the same LAN" width="800" height="1734"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Nearby scan: same LAN, pick an IP, connect. First pairing still happens on the box.&lt;/em&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  What you need
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;A phone/tablet/TV box that can enable &lt;strong&gt;developer options&lt;/strong&gt; and &lt;strong&gt;wireless debugging&lt;/strong&gt; (or “network debugging” on some OEM skins).&lt;/li&gt;
&lt;li&gt;iPhone and the box on the &lt;strong&gt;same LAN&lt;/strong&gt;. Guest Wi-Fi and AP isolation will fail.&lt;/li&gt;
&lt;li&gt;You already know what ADB is. If the box cannot enable debugging, stop here — this is not a consumer remote.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  1. Turn on wireless debugging on the box
&lt;/h2&gt;

&lt;p&gt;Path varies by skin. The usual one:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Settings → About → click Build number seven times.&lt;/li&gt;
&lt;li&gt;Settings → Developer options.&lt;/li&gt;
&lt;li&gt;Enable &lt;strong&gt;USB debugging&lt;/strong&gt; and &lt;strong&gt;Wireless debugging&lt;/strong&gt; (Android 11+). Some TV firmwares only expose &lt;strong&gt;Network debugging&lt;/strong&gt; on port 5555.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;On Android 11+ wireless debugging you will see the box IP and a pairing port. Keep that screen open.&lt;/p&gt;

&lt;h2&gt;
  
  
  2. Pair once, then connect
&lt;/h2&gt;

&lt;p&gt;First pairing (Android 11+ wireless debugging):&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The box shows a &lt;strong&gt;6-digit code&lt;/strong&gt; and a pairing port.&lt;/li&gt;
&lt;li&gt;Pair from the client with that code. After that, daily connect is IP + the connection port, no code.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Older images that only open &lt;strong&gt;5555&lt;/strong&gt;:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;No pairing code. If the port is reachable on the LAN, &lt;code&gt;adb connect &amp;lt;ip&amp;gt;:5555&lt;/code&gt; is enough.&lt;/li&gt;
&lt;li&gt;First time, the box should show an RSA allow prompt. Accept and check “always allow”.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If pairing works but connect fails: AP isolation, VPN on the phone, or the box fell asleep and dropped the debug service. Wake it and toggle wireless debugging once.&lt;/p&gt;

&lt;h2&gt;
  
  
  3. What I actually do from the phone
&lt;/h2&gt;

&lt;p&gt;Once the session is up I rarely type &lt;code&gt;adb&lt;/code&gt; by hand. The jobs that used to need a computer:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;D-pad / Home / Back while standing at the TV&lt;/li&gt;
&lt;li&gt;Screenshot or a short screen record, then save to Photos&lt;/li&gt;
&lt;li&gt;Browse installed packages, launch, install/uninstall&lt;/li&gt;
&lt;li&gt;Push/pull files&lt;/li&gt;
&lt;li&gt;Shell, live logcat, a simple process list&lt;/li&gt;
&lt;li&gt;Packet capture to a PCAP when something on the LAN misbehaves&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fs6lmmhdvf6fngda03kbv.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fs6lmmhdvf6fngda03kbv.png" alt="Live logcat filtered on iPhone" width="800" height="1734"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Same logcat job as a laptop, on the couch. Filter by level, search, export.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpb8giawb1t3wgl3wtqnl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Farticles%2Fpb8giawb1t3wgl3wtqnl.png" alt="TV screenshot sitting in the iPhone preview" width="800" height="1734"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Screencap of the box, preview, save to Photos. No USB cable.&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Browse and look around stay free. Write actions (install, file transfer, export, shell, multi-device) are a one-time unlock. No account, no cloud, no ads. The phone talks to the box on the LAN only.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why not just keep using a laptop
&lt;/h2&gt;

&lt;p&gt;You should, if it is already on the desk. I built the iPhone client because the laptop was in another room and the box was not. Official TV remotes send keys. They do not sideload, they do not give you logcat, and they do not help on firmware with no Play Store.&lt;/p&gt;

&lt;h2&gt;
  
  
  The app
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;ADBox&lt;/strong&gt; on the App Store: &lt;a href="https://apps.apple.com/app/id6777080682" rel="noopener noreferrer"&gt;https://apps.apple.com/app/id6777080682&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Longer connect / FAQ write-up: &lt;a href="https://unitcircle.tech/en/products/adbox/guides/adb-connect-guide" rel="noopener noreferrer"&gt;https://unitcircle.tech/en/products/adbox/guides/adb-connect-guide&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;I am the developer. If a step above does not match your OEM menu names, say which box and build — I will correct the article.&lt;/p&gt;

</description>
      <category>android</category>
      <category>adb</category>
      <category>ios</category>
      <category>tv</category>
    </item>
  </channel>
</rss>
