Skip to content

Instantly share code, notes, and snippets.

@darconeous
Last active July 1, 2024 01:37
Show Gist options
  • Save darconeous/8c7899c4d2f849b881d6c43be55066ee to your computer and use it in GitHub Desktop.
Save darconeous/8c7899c4d2f849b881d6c43be55066ee to your computer and use it in GitHub Desktop.
Hacking the Rectangular Starlink Dishy Cable
@jbowler
Copy link

jbowler commented Dec 15, 2023

On a general note WiFi-6 has a stated range of 45m; curiously close, well, the same as, the length of the longest StarLink Gen 3 cable. This is "line of sight" - i.e. nothing between the sender and receiver other than thin (we hope) air. WiFi-5 comes in at 25m or so, about 80ft, but I run WiFi (not WiFi 6 yet) between my own buildings which are about 100ft apart.

So a Gen3 with power and the standard (package) setup can, in fact, do a WiFi link at way more than the StarLink max speed to something 150ft away; WiFi-6 maxes out at 9.6Gbps. I manage that on my CAT5e Cu twisted pair network but only in a carefully tested setup; less than 100ft (maybe 50). In fact WiFi-5 at a theoretical 3.5Gbps is still way more than StarLink (residential) and my own copper network.

TP-Link (who I regard as reputable) have a range of "WiFi extenders" starting (based on Amazon prices) from $20 for a WiFi-5 one. So far as I can see it should be possible to use one of these to set up what is effectively a point-to-point solution; no need for copper or fibre. I've looked at p2p in the past but they have been somewhat more expensive ($100's rather than $10's) and often lower bandwidth (10Mbps).

The solution does require power at both ends but I find that fairly easy (at low power) even without solar.

@SailorBruce
Copy link

I have a CradlePoint router w/ a PoE++ (802.3bt) port that will push up to 60W. I don't live in a snowy area, so I plan to keep the snow melt off. My thought was that I could swap the pinouts to make the antenna work directly from the router as a PSE (power source equipment) and eliminate a whole bunch of custom cables, and a dedicated PoE injector. However, it doesn't seem to be working....

Is this possible? If so, how should I build the termination that comes out of the antenna and connects to the PoE router port?

@jbowler
Copy link

jbowler commented Feb 19, 2024

Is this possible?

No. The StarLink antenna doesn't support any of the PoE protocols so a PSE which uses them simply won't send out any power. The latest 802.3 standards have plenty of power but it would require a 48V 802.3bt PoE tap (a splitter) to get the 48V out , e.g:

https://www.amazon.com/StarTech-com-Industrial-Gigabit-PoE-Splitter/dp/B08KYHX1QS

Then it would be necessary to take the 48V output and wire it back to a passive injector... In other words pretty much twice as much work (you just save power cabling from the 802.3bt PSE to the PD, the antenna.)

@jbowler
Copy link

jbowler commented Feb 19, 2024

Off topic but still relevant to understanding the Gen 2 antenna here is a good, clear, description of how the 802.3 PoE standards work:

https://www.skyworksinc.com/-/media/SkyWorks/SL/documents/public/white-papers/understanding-the-ieee-8023bt-poe-standard.pdf

The circuit breakdown of the Gen2 router suggests to me that it lacks the electronics to do that, although it does seem to have the ability to measure current draw so there might be some communication capability there. The mixed up wiring of the ethernet pairs, however, prevents 802.3bt working; IRC the antenna looks like a shorted-out PD.

@WIMMPYIII
Copy link

I have a CradlePoint router w/ a PoE++ (802.3bt) port that will push up to 60W. I don't live in a snowy area, so I plan to keep the snow melt off. My thought was that I could swap the pinouts to make the antenna work directly from the router as a PSE (power source equipment) and eliminate a whole bunch of custom cables, and a dedicated PoE injector. However, it doesn't seem to be working....

Is this possible? If so, how should I build the termination that comes out of the antenna and connects to the PoE router port?

60w isnt going to cut it.

@SailorBruce
Copy link

SailorBruce commented Feb 19, 2024 via email

@WIMMPYIII
Copy link

WIMMPYIII commented Feb 20, 2024

Thanks for the info. I have a much better understanding of the issue now that I've failed a bit and read the SkyWorks doc. I now have working power and signal to the rectangular (gen2) dish. It makes sense that you have to flip the conductors to put power on the wires that Dishy wants, then swap the wires back so that the signal is back to where it is supposed to be. I'm still having problems though. About every 40-50 seconds, the PoE injector reboots. I get the same behavior with different cables, and when I plug dishy into my laptop or the router. This is from the router:
@.***: /]$ tcpdump -n -i starlinkvlan tcpdump: verbose output suppressed, use -v[v]... for full protocol decode listening on starlinkvlan, link-type EN10MB (Ethernet), snapshot length
262144 bytes
13:19:32.638287 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request
from 3a:30:44:66:d7:83, length 303
13:19:36.638274 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request
from 3a:30:44:66:d7:83, length 303
13:19:38.181021 IP6 fe80::2412:acff:fe1a:8001 > ff02::2: ICMP6, router
solicitation, length 16
13:19:39.698323 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request
from 3a:30:44:66:d7:83, length 303
13:19:42.788281 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request
from 3a:30:44:66:d7:83, length 303
13:19:46.244886 IP6 fe80::2412:acff:fe1a:8001 > ff02::2: ICMP6, router
solicitation, length 16
13:19:48.458300 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request
from 3a:30:44:66:d7:83, length 303
13:19:51.538347 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request
from 3a:30:44:66:d7:83, length 303
13:19:51.540257 ARP, Request who-has 192.168.100.100 tell 192.168.100.1,
length 46
13:19:53.556754 IP 192.168.100.1.67 > 255.255.255.255.68: BOOTP/DHCP,
Reply, length 300
13:19:53.578276 IP 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request
from 3a:30:44:66:d7:83, length 315
13:19:53.588961 IP 192.168.100.1.67 > 255.255.255.255.68: BOOTP/DHCP,
Reply, length 300
If you wait 40 seconds, it happens again. When I am plugged into the laptop, I can get 18 (sometimes 17, but never 20!) ping responses before the interface goes down and the laptop reports no path to host. It is as if Dishy is expecting something from the router and when it doesn't get it it reboots.... To make sure I hadn't broken something, I plugged everything back into the Starlink router. I used a different (and tested) ethernet cable, but the same RJ45 keystone connector that is wired into Dishy. Everything worked swimmingly, so I didn't break anything when I cut the back off of Dishy for the mount (www.starmount.com, no affiliation). That was a relief, but still not helpful. The only thing that I haven't eliminated from the problem is the PoE injector. However, it is brand new and works fine when I power my Raspberry Pi and move lots of data through it. Does anyone have documentation on the exact meaning of the LED status lights on the Yaosheng Model: YSNEAPL12001A ? Is there an extra step that I have missed in configuring the network that Dishy creates?

How well have you read over this thread. 60w is not enough to run a SL gen2. You realistically need near 100w power supply run stable. Gen2 peaks at well over 60w. The stock power supply is 96w and is pushed to its absolute limit at 150ft.

@SailorBruce
Copy link

SailorBruce commented Feb 20, 2024 via email

@Missoulajeff
Copy link

Missoulajeff commented Feb 20, 2024 via email

@jbowler
Copy link

jbowler commented Feb 21, 2024

The PoE injector will support up to 120W. Once I have it more juice from the bench power supply, it all got stable. The 5A current limit was starving Dishy.

Ah! Yes; this is a reported problem with boost converters. It seems from my measurements that there is a sudden very brief amp draw at pretty much exactly the time you reported the PoE/dish reboot. Here's the data:

https://gist.github.com/darconeous/8c7899c4d2f849b881d6c43be55066ee?permalink_comment_id=4466245#gistcomment-4466245

So there is a large inrush (maybe) just after 40s; around 3.4A (see the comments at the end of my post). Buck converters seem to handle this ok while some (at least) boost converters do not. The Yaosheng is apparently designed for a battery supply (12V or 24V) and that would give it a large surge capability. One contributor above uses a super-capacitor on the output side but I don't like that because, while it would handle an inrush, it could fry the connectors or the ethernet magnetics; better to put it on the supply side of the boost converter.

Here's an earlier, and more conservative, measurement of the power requirements, the amperage graphs above are likely to be more accurate:

https://gist.github.com/darconeous/8c7899c4d2f849b881d6c43be55066ee?permalink_comment_id=4463407#gistcomment-4463407

I couldn't find Yaosheng documentation either. It seems likely that they have done the measurements properly (i.e. using better equipment than I have) to get robust designs but that doesn't mean they designed the 120W version to work off anything other than a battery...

On average the current draw at 48V without snow-melt or pre-heat is under 1A. During boot it goes up to maybe 1.4A but this corresponds to the effects (on the average) of the large inrush at 45s (3.4A). Adding snow melt (etc) seems to add maybe 0.25A. Solar systems with a 48V battery should be fine but they need to provide at least 1A continuous (over 24 hours) to keep the Dish up and running.

@sjkjs
Copy link

sjkjs commented Mar 21, 2024

Is anybody else experiencing the dish going into a reboot loop in the past couple of weeks (possibly related to a recent firmware update)?

As soon as my dish comes online and obtains internet access, it reboots within about 5 seconds. It's in an infinite loop having done this for a few days straight now.

I've replaced the cable with a brand new genuine Starlink cable, crimped with a new RJ45 on the end. I've also replaced the power supply with a quality industrial 48V 2.5A supply. The problem persists.

At this point I was confident that the dish had gone bad, but interestingly if I plug it into the stock Starlink router, it works perfectly. Something has changed which is preventing my setup from working. Nothing was changed on my end (the parts I replaced were replaced after the fault started).

Considering it reboots shortly AFTER coming online, I suspect that Starlink is detecting that I'm not using the stock router and is issuing a reboot command.

Update: Of course, after spending the past 2 days on this problem and spending money trying to fix it, I solved (or at least made some progress) 30 minutes after making this post. I unplugged the cable between the POE injector and the network switch but left the dish plugged into the POE injector. So basically the dish was receiving power but did not have anything on the other end of the wire to talk to. It booted up and came online then started downloading a firmware update. After installing the update it rebooted (normal update process). After coming back up on the new firmware I plugged the cable back into the switch. It stayed online this time and, at least for 30 minutes so far, has been rock solid. I have no idea what happened but for some reason the previous firmware threw a fit when there was something on the other end of the cable.

@torrmundi
Copy link

torrmundi commented Mar 21, 2024 via email

@bghira
Copy link

bghira commented Mar 21, 2024

sounds like you needed an update.. it worked once you plugged into stock router, probably then downloaded the update, and applied it later.

@WIMMPYIII
Copy link

WIMMPYIII commented Mar 21, 2024

Is anybody else experiencing the dish going into a reboot loop in the past couple of weeks (possibly related to a recent firmware update)?

As soon as my dish comes online and obtains internet access, it reboots within about 5 seconds. It's in an infinite loop having done this for a few days straight now.

I've replaced the cable with a brand new genuine Starlink cable, crimped with a new RJ45 on the end. I've also replaced the power supply with a quality industrial 48V 2.5A supply. The problem persists.

At this point I was confident that the dish had gone bad, but interestingly if I plug it into the stock Starlink router, it works perfectly. Something has changed which is preventing my setup from working. Nothing was changed on my end (the parts I replaced were replaced after the fault started).

Considering it reboots shortly AFTER coming online, I suspect that Starlink is detecting that I'm not using the stock router and is issuing a reboot command.

Update: Of course, after spending the past 2 days on this problem and spending money trying to fix it, I solved (or at least made some progress) 30 minutes after making this post. I unplugged the cable between the POE injector and the network switch but left the dish plugged into the POE injector. So basically the dish was receiving power but did not have anything on the other end of the wire to talk to. It booted up and came online then started downloading a firmware update. After installing the update it rebooted (normal update process). After coming back up on the new firmware I plugged the cable back into the switch. It stayed online this time and, at least for 30 minutes so far, has been rock solid. I have no idea what happened but for some reason the previous firmware threw a fit when there was something on the other end of the cable.

I had a client yesterday that had similar problems. Several power cycles router and injection brick and patiently waiting 30 minutes between. update went through and everything was fine after that.

@morehardware
Copy link

morehardware commented Mar 22, 2024 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment