UNIT.City — місце, де люди працюють... КРАЩЕ! Обирай свій простір просто зараз 👉
Наталя ХандусенкоГаряченьке
16 вересня 2025, 11:46
2025-09-16
Інженер перетворив одноразовий вейп на вебсервер розміром 24 КБ, який завантажує сторінки за 160 мс
Інженер з Румунії Богдан Йонеску вже багато років збирає викинуті вейпи, щоб використовувати їхні акумулятори. Однак, коли він помітив, що «модніші» моделі мають просунутіші мікроконтролери, він вирішив поекспериментувати.
Інженер з Румунії Богдан Йонеску вже багато років збирає викинуті вейпи, щоб використовувати їхні акумулятори. Однак, коли він помітив, що «модніші» моделі мають просунутіші мікроконтролери, він вирішив поекспериментувати.
В одному із таких вейпів Йонеску знайшов чип PUYA C642F15. Після дослідження він з’ясував, що насправді це був PY32F002B, який працює на процесорі Arm Cortex M0+ (24 МГц). Чип також мав 24 КБ флешпам’яті та 3 КБ оперативної пам’яті, пише Interesting Engineering.
Інженер назвав цей базовий набір «таким поганим, що його можна просто викинути». Однак навіть у ньому він розгледів потенціал.
Йонеску вирішив використати чип, який підтримує старий протокол SLIP. Завдяки цьому він перетворив пристрій на дуже простий аналог модема 56К. Потім він додав код uIP 0.9, який дозволив вейпу працювати як вебсервер і передавати дані через TCP/IP.
Спочатку результати були невтішними. «Час пінгу становив приблизно 1,5 секунди, а половина пакетів даних взагалі не доходила. Проста сторінка завантажувалася понад 20 секунд. Це настільки погано, що аж смішно, і я подумав на цьому й зупинитися», — розповів Йонеску.
Але потім інженер зрозумів, що причина проблем — у його коді. Додавши спеціальний буфер, він значно пришвидшив передачу даних. Подальші налаштування скоротили час пінгу до 20 мс без втрати пакетів, а повна сторінка почала завантажуватися приблизно за 160 мс.
На сервер він завантажив свій допис із блогу про цей експеримент. Текст ледь вмістився в доступні 20 КБ флешпам’яті.
Відвідувачі могли заходити на сторінку, що працювала на крихітному вейп-сервері, але через велику кількість запитів він часто не справлявся. Коли на нього одночасно заходило багато людей, з’являлася помилка «503».