Jak mikrokontroler za dolara zmienia się w serwer WWW: Hosting na embedded w pigułce

Jak mikrokontroler za dolara zmienia się w serwer WWW: Hosting na embedded w pigułce

Maj 13, 2026 embedded-systems networking microcontrollers tcp-ip diy-projects internet-protocol creative-engineering linux

Serwer WWW na 8-bitowym mikrokontrolerze: Bo czemu nie?

W świecie projektów, które technicznie da się zrobić, ale po co? Jest miejsce na eksperymenty, co uczą, jak naprawdę działa internet. Dziś o programiście, który uruchomił stronę na mikrokontrolerze za cenę batona.

Sprzęt: Proste początki

Główną rolę gra AVR64DD32. To nowoczesny 8-bitowy mikrokontroler za dolara. Specyfikacja wygląda tak:

  • CPU: 8-bitowy rdzeń AVR, max 24 MHz
  • RAM: 8 kB
  • Flash: 64 kB
  • Zasilanie: 1.8-5.5 V
  • Cena: Dolar. Bez żartów.

Jak na 8-bitowca to sporo miejsca. Tańszy i mocniejszy niż Atmega328 z Arduino. Łatwiejszy w programowaniu, z lepszymi peryferiami. Ale brakuje mu dostępu do sieci.

Problem z siecią: Ethernet odpada

Ethernet kusi. Jest standardem, udokumentowany. Ale fizyka nie pozwala. 10BASE-T to 10 Mb/s, z kodowaniem Manchester – faktycznie 20 Mb/s. Piny GPIO mikrokontrolera ledwo ciągną 12 MHz. Za wolno.

Można dołożyć chip Ethernet. Ale to podnosi cenę, komplikuje i każe czekać na paczkę. Nie o to chodzi w takim wyzwaniu.

Sprytne obejście: Protokół SLIP

Tu wchodzi SLIP – Serial Line Internet Protocol. Z czasów modemów dial-up (RFC 1055). Prosty jak drut. Pakiety opakowuje bajtami 0xC0. Specjalne znaki escapuje:

  • 0xC0 w pakiecie staje się 0xDB 0xDC
  • 0xDB0xDB 0xDD

Koniec. Żadnego wymyślnego sprzętu. Wystarczy adapter USB-serial na 115200 baud. Linux widzi to jako interfejs sieciowy:

stty -F /dev/ttyUSB0 115200 raw cs8
slattach -m -F -L -p slip /dev/ttyUSB0

Protokół z lat 90. wciąż działa w Linuksie. Mikrokontroler czerpie prąd z adaptera. Jeden kabel i gotowe.

Stack protokołów: Od zera

Tu robi się ciekawie. Sieć na 8 kB RAM.

IP: Łatwizna

Nagłówek IP to 40 bajtów rutyny: adresy źródłowy i docelowy, metadane. Fragmentacja? Nowe systemy jej nie używają. IPv6 jej nie ma.

Rozwiązanie? Odwróć adresy w pakiecie, zresetuj TTL i odeślij. Mikrokontroler nie musi rozumieć IP. Wystarczy odbijać.

TCP: Koszmar

TCP to inna bajka. Musisz śledzić stany połączeń, retransmitować zguby, radzić sobie z edge case'ami (jest ich masa), zarządzać timeoutami.

Debugowanie trwało dni. Implementacja ma swoje kaprysy. Ale serwuje stronę.

HTTP: Skrót myślowy

Proste: hardcoded odpowiedź HTTP. Zawsze ta sama statyczna treść. Jedna ścieżka URL i działa idealnie.

Ograniczenia wymuszają elegancję. Nie każdy problem wymaga pełnego frameworka.

Podłączenie do świata: Prawdziwy trik

Mikrokontroler siedzi na kablu serial z maszyną deweloperską. Ta łączy się z VPS w Helsinkach na publicznym IPv4.

Brak publicznego IP na mikrokontrolerze. IPv4 jest drogi i rzadki. Serial przez internet? Niemożliwe.

Rozwiązanie: WireGuard

WireGuard – nowoczesny VPN w Linuksie. Tworzy tunel, działa za NAT-em.

Ustawka:

  1. Maszyna deweloperska tuneluje do VPS przez WireGuard
  2. VPS przekierowuje /mcu/* przez lokalny tunel do mikrokontrolera
  3. Goście wchodzą na publiczny adres VPS
  4. VPS forwarduje do mikrokontrolera

Technika jak w streamingu Twitcha. Dla chipa za dolara i kabla. Mikrokontroler ukryty przed światem. Sprytne.

Co z tego wynika

Projekt celowo bez sensu. Właśnie dlatego cenny. Zrywa z abstrakcjami. Budujesz protokoły od podstaw.

Uczysz się, że:

  • Sieć to klocki. Serial zamiast Ethernet, UDP zamiast TCP – zasady te same.
  • Ograniczenia kreatywnością. 8 kB RAM dało czyste kody, które działają lepiej.
  • Stare protokoły żyją. SLIP z 1988. Linux go ma. Długowieczność ma sens.
  • Internet prosty. Bez warstw to bajty między adresami.

Prawdziwa lekcja

W NameOcean lubimy obalać mity o technologiach webu. Czy cloud, czy mikrokontrolery – znając podstawy (DNS, TCP handshake, HTTP) jesteś lepszym inżynierem.

To nie zastąpi hostingu w chmurze. Ale pokaże, czemu cloud jest genialny. Najlepiej docenisz abstrakcje, budując je na chipie za dolara.

Przepraszamy, ale musimy powstrzymać kogoś przed blogiem na smartwatchu.


Chcesz zgłębić sieć? Sprawdź nasze poradniki o DNS, podstawach TCP/IP i dlaczego domain ważniejszy niż hardware hostingu. A na serio – hosting bez lutowania? Mamy AI-powered opcje.

Read in other languages:

RU BG EL CS UZ TR SV FI RO PT NB NL HU IT FR ES DE DA ZH-HANS EN