1 पॉइंट द्वारा GN⁺ 2025-06-16 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Starlink Mini 1 में इंटीग्रेटेड Wi-Fi राउटर को हटाकर इसे Ethernet-केवल टर्मिनल के रूप में चलाया जा सकता है, जिससे कस्टम नेटवर्क कॉन्फ़िगरेशन या embedded इंस्टॉलेशन में विकल्प बढ़ जाते हैं
  • यह modification 14 जून 2025 तक केवल Starlink Mini 1 पर लागू है; Mini 2 जैसे बाद के हार्डवेयर पर यह प्रक्रिया सही न भी हो सकती है
  • डिसअसेंबली के दौरान Starlink PCB की धातु प्लेट heatsink और EMI shielding का काम करती है, इसलिए इसे हटाने पर throttling या electromagnetic interference का जोखिम बढ़ जाता है
  • मुख्य यूनिट और राउटर 1Gbps Ethernet लिंक और 12VDC power bus से जुड़े होते हैं, और user-designed सेटअप में छोटे internal direct connection के विपरीत Ethernet transformer की ज़रूरत होती है
  • राउटर हटाने के बाद टर्मिनल 192.168.100.0/24 पर DHCP और gRPC status interface देता है, लेकिन satellite connection के बाद कई devices इस्तेमाल करने हों तो upstream router चाहिए

modification की सीमा और डिसअसेंबली सावधानियाँ

  • Starlink Mini एक all-in-one टर्मिनल है जिसमें इंटीग्रेटेड Wi-Fi राउटर शामिल है, लेकिन अंदर का router board शारीरिक रूप से हटाने पर इसे Ethernet-केवल मोड में चलाया जा सकता है
  • यह 14 जून 2025 तक Starlink Mini 1 पर लागू है, और भविष्य में Mini 2 जैसे मॉडल के hardware changes के कारण यह प्रक्रिया अमान्य हो सकती है
  • डिसअसेंबली के लिए धैर्य और सटीकता चाहिए, और metal spudger तथा plastic prying tools की सिफारिश की जाती है
  • Router PCB हटाने के लिए पतली और लचीली blade या पतली metal wire की ज़रूरत होती है
  • Router PCB हटाने के बाद डिसअसेंबली रोक सकते हैं, और Starlink PCB की धातु प्लेट हटाने की कड़ी सिफारिश नहीं की जाती
    • धातु प्लेट heatsink और EMI shielding, दोनों की भूमिका निभाती है
    • Starlink CPU काफी गर्म होता है और cooling कम होने पर CPU या antenna array throttling में जा सकता है
    • धातु प्लेट के किनारे conductive adhesive से चिपके होते हैं, जो electromagnetic shielding में मदद करते हैं; इसे हटाने पर emissions बढ़ सकते हैं और आसपास के electronic उपकरणों में interference हो सकता है

PCB connector और pin configuration

  • Starlink Mini PCB पर connector का सटीक प्रकार ज्ञात नहीं है, और यह कस्टम-ऑर्डर part हो सकता है
  • Connector pitch 2mm है, इसलिए standard 2mm header फिट हो सकता है
  • Connector conductive adhesive और बड़े ground area से फिक्स है, और router PCB वाली तरफ connector के ऊपर shielding है
    • यह व्यवस्था EMI suppression के लिए है
  • मुख्य यूनिट और राउटर के बीच 1Gbps Ethernet लिंक इस्तेमाल होता है
  • Internal connection Ethernet transformer के बिना, थोड़ी decoupling के साथ PHY-to-PHY direct connection है
    • छोटी दूरी पर यह स्वीकार्य है, लेकिन user-designed इंस्टॉलेशन में Ethernet transformer अनिवार्य है
  • डिफ़ॉल्ट power bus 12VDC है
  • Pins 11, 14, 16, 17, 18 इस modification में उपयोग नहीं होते और मुख्यतः Starlink-Router monitoring के लिए हैं
  • स्थिर power supply के लिए सभी 12VDC और GND lines के उपयोग की सिफारिश की जाती है

direct Ethernet connection design

  • Direct Ethernet connection के उदाहरण में ऐसा circuit इस्तेमाल होता है जो Starlink Mini 1 PCB connector के लिए आवश्यक Ethernet isolation और न्यूनतम power filtering देता है
  • U1 connector के आसपास guard ground रखने की सिफारिश की जाती है
  • Optimal design में conductive adhesive और shielding शामिल हैं
  • Connector और Ethernet transformer के बीच wiring जितनी हो सके उतनी छोटी रखनी चाहिए
  • 12V पर सामान्य operating current लगभग 3A है, और छोटे spikes 5A तक जा सकते हैं
    • L1 के लिए ऐसा component चुनना चाहिए जिसकी current rating पर्याप्त हो ताकि overheating से बचा जा सके
  • Proof of concept के लिए मौजूदा Ethermod adapter का उपयोग किया गया

network behavior और access method

  • Starlink satellite से कनेक्ट न होने पर टर्मिनल 192.168.100.0/24 नेटवर्क का DHCP IP address देता है
  • टर्मिनल खुद 192.168.100.1 पर उपलब्ध है, और एक साधारण web UI तथा gRPC monitoring/control server चलाता है
  • Starlink debug data को grpcurl से देखा जा सकता है
grpcurl -plaintext -d {\"get_status\":{}} 192.168.100.1:9200
SpaceX.API.Device.Device/Handle
  • Starlink network से जुड़ने के बाद Ethernet interface tunneled DHCP service देता है
    • Client को Starlink pool का IP मिलता है
    • आम तौर पर CGNAT IPv4 address और link-global IPv6 address दिया जाता है
    • इस configuration से इंटरनेट access संभव हो जाता है
  • Starlink DHCP server केवल एक IP address देता है
    • Direct connection के लिए या तो 1 host, या कई devices के साथ connection share करने के लिए 1 upstream router जोड़ा जा सकता है
  • External IP मिलने के बाद client स्वाभाविक रूप से 192.168.100.1 तक पहुंच खो देता है
  • टर्मिनल तक पहुंच बनाए रखने के लिए static route जोड़ा जा सकता है
sudo ip route add 192.168.100.1 dev ethX
  • ethX को Starlink से जुड़े Ethernet interface के नाम से बदलना होगा
  • Host को Starlink network से जुड़ने के बाद IP address मिल जाए, तो बिना अतिरिक्त configuration के इंटरनेट access संभव है
  • Account status और connection status को gRPC output से मॉनिटर करना चाहिए

gRPC status codes

  • gRPC get_status output में connection issues का निदान करने में मददगार जानकारी शामिल होती है
  • Connection problem होने पर gRPC output में outage section दिखाई दे सकता है
"outage": {
  "cause": "NO_SCHEDULE",
  "startTimestampNs": "1815683934050410150",
  "durationNs": "4320001119",
  "didSwitch": true
}
  • outage.cause के संभावित मान:
    • BOOTING: टर्मिनल शुरू हो रहा है और module initialization व GPS lock की प्रतीक्षा में है
    • THERMAL_SHUTDOWN: overheating के कारण components की सुरक्षा के लिए टर्मिनल बंद किया गया है
    • NO_SCHEDULE: satellite से communication संभव नहीं है; कारण weak signal, गलत GPS data, या अन्य समस्या हो सकती है
    • NO_SATS: आसमान में satellites detect नहीं हो रहे
    • OBSTRUCTED: wireless beam path में बाधा detect हुई है
    • NO_DOWNLINK: satellite से data receive नहीं हो रहा
    • NO_PINGS: टर्मिनल और satellite का connection बना है, लेकिन satellite ने ground segment से connection खो दिया है

account restriction codes

  • Starlink account status disablementCode section में देखा जा सकता है
  • संभावित disablement code:
    • UNKNOWN_STATE: टर्मिनल undefined या unrecognized state report कर रहा है
    • OKAY: account active है और इंटरनेट access उपलब्ध होना चाहिए
    • NO_ACTIVE_ACCOUNT: Starlink account हट चुका है या service pause है
    • TOO_FAR_FROM_SERVICE_ADDRESS: registered service address क्षेत्र के बाहर संचालन हो रहा है
    • IN_OCEAN: वर्तमान service plan जिन समुद्री क्षेत्रों को cover नहीं करता, टर्मिनल वहाँ है
    • BLOCKED_COUNTRY: ऐसा देश जहाँ Starlink service अनुमत नहीं है
    • DATA_OVERAGE_SANDBOX_POLICY: data limit पार हो चुकी है और अधिक data के लिए service plan बदलना होगा
    • CELL_IS_DISABLED: Starlink system में local service cell disabled है
    • ROAM_RESTRICTED: वर्तमान account या plan में roaming की अनुमति नहीं है
    • UNKNOWN_LOCATION: Starlink satellite टर्मिनल की location verify नहीं कर पा रहे
    • ACCOUNT_DISABLED: Starlink account suspend या permanently disabled है
    • UNSUPPORTED_VERSION: टर्मिनल firmware incompatible है या बहुत पुराना है
    • MOVING_TOO_FAST_FOR_POLICY: vehicle या aircraft की तरह बहुत तेज़ चलने से policy restriction का उल्लंघन हो रहा है
    • UNDER_AVIATION_FLYOVER_LIMITS: aircraft flyover zone के नीचे होने के कारण service सीमित है
    • INVALID_COUNTRY: ऐसा देश जहाँ Starlink supported नहीं है
    • UNLICENSED_COUNTRY: ऐसा देश जहाँ Starlink को regulatory approval नहीं मिला है
  • disablementCode satellite connection सफल होने के बाद हमेशा उपलब्ध होना चाहिए
  • User terminal अपने-आप service plan, country, region, या speed limits नहीं जानता; यह Starlink satellite से मिले commands का पालन करता है

1 टिप्पणियां

 
GN⁺ 2025-06-16
Hacker News की टिप्पणियाँ
  • आख़िरी हिस्सा उलझाने वाला है। इससे ऐसा आभास मिलता है कि “disablement code” (regional block, speed violation आदि) user terminal पर लागू होता है; अगर ऐसा है, तो क्या इसका मतलब है कि इसे bypass किया जा सकता है?
    इसमें कहा गया है, “user terminal खुद service plan, country, region, speed limits नहीं जानता और सिर्फ़ Starlink satellite से मिले commands का पालन करता है,” लेकिन मुझे तो लगा था कि यह DHCP स्टेज पर ही enforce होगा। या फिर IP मिलने के बाद बहुत तेज़ी से move करना संभव है, इसलिए शायद ऐसा न हो। सोच रहा हूँ कि क्या यह लेख असल में Starlink policy restrictions को bypass करने की “समझदार के लिए इशारा काफ़ी” वाली guide है

    • यह terminal के साथ share किए जाने वाले result code जैसा लगता है। उदाहरण के लिए “ACCOUNT_DISABLED - Starlink account suspended or permanently disabled” या “UNLICENSED_COUNTRY – terminal ऐसे देश में है जहाँ Starlink को regulatory approval नहीं मिला” जैसी चीज़
      यह कम ही संभव लगता है कि यह फ़ैसला Starlink network की बजाय terminal खुद लेता हो
    • मैं इसे ऐसे समझता हूँ कि satellite terminal को code इसलिए भेजती है क्योंकि terminal खुद यह नहीं जानता कि उसे block किया गया है या नहीं। इसका मकसद यह है कि user देख सके कि internet क्यों काम नहीं कर रहा
    • मैं Starlink को अच्छी तरह नहीं जानता, लेकिन आम तौर पर यह उस flow जैसा लगता है जहाँ app terminal से error/diagnostic codes पढ़ता है। अगर आप built-in router को bypass करके terminal को सिर्फ़ SBC से जुड़े modem की तरह इस्तेमाल करें, तो smartphone पर ये errors नहीं दिखेंगे
      इसलिए आप error codes check करने और उसी हिसाब से react करने वाला script बना सकते हैं। उदाहरण के लिए, अगर Starlink terminal को drone पर लगाया गया हो, तो service कटते ही वह अपने-आप location बदल सकता है, और अगर obstruction detect हो तो UAV और ऊँचा उड़ सकता है। अगर geofence गलती से cross हो जाए और service कट जाए, तो Starlink terminal बंद करके backup comms system चालू किया जा सकता है। असल में इन disablement codes को sensor की तरह इस्तेमाल किया जा सकता है
    • अगर किसी ने सच में पता लगा लिया होता कि कौन-से disablement codes को धोखा दिया या bypass किया जा सकता है, तो वह इसे share नहीं करता। आख़िरकार यह इस बात पर निर्भर है कि Starlink unauthorized use को कितनी सख़्ती से detect और enforce करता है
      इस पैमाने पर काम करने वाली कोई अमेरिकी कंपनी बहुत सख़्त enforcement से लेकर बुनियादी checks या request आने पर response तक कुछ भी कर सकती है। यहाँ किसी ने कहा कि Starlink रूस में भी काम करता है जहाँ उसे मूल रूप से नहीं चलना चाहिए; शायद यूक्रेन भेजे गए कुछ devices रूस में भी इस्तेमाल हो सकते हैं
    • मुझे इससे ऐसा बिल्कुल नहीं लगता। अगर terminal service plan या restriction information maintain नहीं करता, तो वह information ऊपर की किसी layer पर manage हो रही है। सिर्फ़ इस लेख से यह नहीं कहा जा सकता कि terminal को configure करके restrictions को ignore किया जा सकता है या नहीं, लेकिन सिर्फ़ disablementCode को ignore करना काफ़ी नहीं होगा, इसकी संभावना ज़्यादा है
  • MACs को RGMII से सीधे जोड़ने की बजाय modified board-to-board Ethernet इस्तेमाल करने का चुनाव दिलचस्प है

    • prototype बनाने के लिए Ethernet काफ़ी आसान लगता है। RGMII पर communicate करने के लिए ready-made off-the-shelf सामान लगभग नहीं मिलता, लेकिन Ethernet को test करते समय बस laptop में plug कर सकते हैं
      अगर दो अलग टीमें अपनी-अपनी चीज़ बना रही हों, तो interface के लिए Ethernet पर सहमति बना लेना कहीं आसान है, और इससे integration testing को बाद में टाला जा सकता है या product जल्दी ship किया जा सकता है
    • RGMII को board-to-board interconnect के लिए design नहीं किया गया था। data rate काफ़ी ऊँची होती है, और आदर्श रूप से सभी signals की delay match करनी पड़ती है
      जब board दो हिस्सों में बँट जाएँ तो यह और मुश्किल हो जाता है, और EMI/EMC issues भी आ सकते हैं। evaluation kits में मैंने ऐसा देखा है, लेकिन mass-produced product के लिए यह अच्छा विचार नहीं लगता
    • कुल मिलाकर इसमें proof of concept वाली feel काफ़ी ज़्यादा है। digital→analog→analog→digital का inefficient होना सही है, और abstract level पर RGMII वाले MAC-PHY link का बेहतर होना संभव है
      लेकिन तुरंत जो अनुमान आता है वह यह है कि लेख में दिखाया गया interface अधिक accessible रहा होगा या इसमें internal structure को कम खोदना पड़ा होगा। यह भी नहीं पता कि RGMII lines कहाँ हैं, और Starlink Mini के actual design के हिसाब से वे और गहराई में दबी हों तथा पहुँचना कठिन हो
    • मैं इस काम का उद्देश्य पूरी तरह नहीं समझ पा रहा। Mini में पहले से RJ45 jack है, इसलिए Ethernet PHY तक पहुँचने के लिए device को hack करने की ज़रूरत नहीं है। settings page में WiFi router को बंद भी किया जा सकता है
      क्या यूक्रेन में दिए जाने वाले Mini में Ethernet jack support हटा दिया गया है? फ़ोटो में तो वह अभी भी power jack के बगल में WiFi board पर दिख रहा है
    • वह connector बिना ज़्यादा reflections के RGMII signal ले जा सकने वाले connector की तुलना में बहुत सस्ता होगा। आख़िर में बेहतर connector इस्तेमाल करने से सस्ता अतिरिक्त silicon जोड़ना पड़ सकता है, और अगर isolation की ज़रूरत न हो तो magnetics की भी ज़रूरत नहीं होगी
  • मुझे बिल्कुल समझ आ रहा है कि यह किस तरह के power-constrained use case को ध्यान में रखकर किया गया है, और मुझे यह पसंद आया

    • जानना चाहूँगा कि दिमाग़ में कौन-से specific use cases थे
    • Starlink पहले से Nemesis night bomber और Magura naval drone में इस्तेमाल हो रहा है
    • क्या इसे drone पर लगाने के लिए किया जा रहा है?
  • archive version: https://archive.ph/UTFTK

  • Starlink किस SoC का इस्तेमाल करता है? Broadcom?

    • MediaTek
  • बहुत बढ़िया। काश Starlink सच में इस तरह की antenna+modem service और CGNAT जैसी चीज़ों की बजाय real IPv4 देता। लगता है कि कहीं ज़्यादा महंगे business plan में यह मिलता है

    • Starlink के ऊपर tunnel बनाकर public IP पाया जा सकता है। MTU कम होने और tunnel endpoint तक extra hop के कारण यह 100% efficient नहीं है, लेकिन काम करता है
    • नए ISP में यही default flow है। बिना अच्छी address utilization plan के IPv4 block खरीदने की approval मिलना मुश्किल है
      हर residential customer को public IP देना अब IPv4 space के अच्छे इस्तेमाल के रूप में नहीं देखा जाता
  • सोच रहा हूँ कि लेखक ने Ethernet pinout कैसे पता किया। सच में प्रभावशाली है
    और GRPC का इस्तेमाल भी अच्छा लगा। इससे लगता है कि कुछ competent लोग हैं जो जल्दबाज़ी नहीं करते और चीज़ें सही तरीके से करते हैं