Tillkomsten av smart TV gav oss en hel del saker att njuta av. Det gjorde det möjligt för oss att konsolidera (de flesta) av vår skärmtid på en enda enhet (utan att behöva ha sida vid sida skärmar), och det har gjort det möjligt för oss att göra saker på våra TV-apparater som vi inte kunde göra tidigare utan hjälp av dyra spelkonsoler eller datorsystem.
Utöver det födde denna trend också billiga lösningar för att förvandla "dumma" TV-apparater till smarta. En sådan lösning var Googles svar på Cupertinos AppleTV, den Chromecast. Den lilla enheten har inte utvecklats mycket sedan dess ödmjuka inträde på marknaden i juli 2013 (och kan ses genom att göra en jämförelse med den senaste inkarnationen av HDMI-dongeln). Det är dock på grund av utvecklare som XDA Senior Member rundgong att enheten (och ägarna) har fått mycket mer valuta för de ynka 35 USD den kostar.
Chromecast är i princip värdelös utan en internetanslutning, och Google har sett till detta genom att lägga till ett stort antal lås för att förhindra saker som anpassad firmware. Det här är faktiskt dess akilleshäl... eller åtminstone var det.
- cast_shell och net_mgr gör http-förfrågningar till Googles servrar. Jag har patchat dessa binärer så att de gör förfrågningar till den lokala webbservern istället.
- Enheten gör en DNS-sökning som skickas till server 8.8.8.8. Jag har löst det genom att skapa ett alias för 8.8.8.8 på den lokala värden och köra en dns-server.
- Enheten avslutar inte uppstarten förrän den har fått en uppdaterad tid från pool.ntp.org. Detta åtgärdas genom att lägga till pool.ntp.org som 127.0.0.1 i hosts-filen och lokalt köra en sntp-server.
Dessa lösningar låter enheten starta normalt även när nätverket saknas.
Onödigt att säga måste enheten kunna flasha anpassad firmware på den eftersom detta är en Eureka-baserad ROM. Varsågod och testa det om du känner för att göra något "kul" med din gamla Chromecast.
Du kan hitta mer information och hela guiden i rGjut originaltråd.