Hacker News Digest

Тег: #uip

Постов: 3

Hosting a website on a disposable vape (bogdanthegeek.github.io) 🔥 Горячее 💬 Длинная дискуссия

Хостинг сайта на одноразовой вейп-системе

Примечание: эта статья НЕ размещена на сервере, работающем на одноразовой вейп-устройстве. Реальный пример можно посмотреть здесь.

Предыстория

Я несколько лет собирал одноразовые вейпы от друзей и семьи, изначально извлекая из них батареи для «будущих» проектов. Современные устройства стали сложнее: с USB-C и перезаряжаемыми аккумуляторами. При разборе одного из таких устройств я обнаружил микроконтроллер PUYA — ARM Cortex-M0+.

Технические характеристики

Микроконтроллер PY32F002B имеет:

  • 24 МГц Cortex-M0+
  • 24 КБ флеш-памяти
  • 3 КБ оперативной памяти
  • Несколько периферийных устройств (не использовались)

Подключение к сети

Идея использовать вейп как веб-сервер пришла после экспериментов с semihosting — системными вызовами для embedded-микроконтроллеров.

Для связи использовался протокол SLIP (Serial Line Internet Protocol), эмулирующий модемное соединение через последовательный порт. С помощью pyOCD и socat создаётся виртуальный tty-интерфейс:

pyocd gdb -S -O semihost_console_type=telnet -T $(PORT) $(PYOCDFLAGS) &
socat PTY,link=$(TTY),raw,echo=0 TCP:localhost:$(PORT),nodelay &
sudo slattach -L -p slip -s 115200 $(TTY) &
sudo ip addr add 192.168.190.1 peer 192.168.190.2/24 dev sl0
sudo ip link set mtu 1500 up dev sl0

Для работы с TCP/IP был выбран легковесный стек uIP, не требующий RTOS и легко портируемый на другие платформы.

by BogdanTheGeek • 15 сентября 2025 г. в 17:53 • 1304 points

ОригиналHN

#arm-cortex-m0#slip#uip#pyocd#socat#qualcomm-msm8916#lte#bluetooth#nginx

Комментарии (441)

  • Обсуждается использование дешёвых и мощных китайских LTE-донглов и одноразовых вейпов (например, с чипом Qualcomm MSM8916) в качестве мини-компьютеров для нестандартных задач, включая хостинг веб-сервера.
  • Участники выражают возмущение расточительством и экологическим ущербом от одноразовых вейпов, содержащих полноценные микроконтроллеры, перезаряжаемые батареи и иногда даже цветные дисплеи или Bluetooth.
  • Подчёркивается технологический парадокс: устройства с вычислительной мощностью, превосходящей старые компьютеры (например, Commodore 64), становятся одноразовыми и массово выбрасываются.
  • Отмечается юридический и этический аспект: классификация устройств с USB-C и аккумулятором как "одноразовых" вызывает вопросы, особенно в регионах с запретом на подобные изделия.
  • Хакерский проект по запуску веб-сервера на вейпе воспринят как креативный и вдохновляющий пример вторичного использования электроники, характерный для духа Hacker News.
  • Обсуждаются технические детали реализации: использование SLIP/PPP, Perl, nginx для балансировки нагрузки, а также шуточные предложения вроде запуска Doom или облачного хостинга ("vaperware").
  • Упоминается проблема утилизации: несмотря на законодательные ограничения в ЕС, устройства часто выбрасываются с обычным мусором, что усугубляет проблему электронных отходов.
  • Участники шутят о "объятиях смерти" от трафика Hacker News (ошибка 503) и предлагают идеи для повторного применения устройств (например, автоматические кормушки для животных).
  • Поднимается вопрос о целесообразности столь мощных ядер (Cortex-M0) в одноразовых устройствах и дешевизне их производства, что делает их доступными для экспериментов.

Hosting a website on a disposable vape (bogdanthegeek.github.io) 🔥 Горячее 💬 Длинная дискуссия

Размещение сайта на одноразовой вейп-системе

Примечание: эта статья НЕ размещена на сервере, работающем на одноразовой вейп-системе. Настоящий пример можно посмотреть здесь.

Предыстория

Я несколько лет собирал одноразовые вейпы у друзей и семьи, изначально извлекая из них батареи для «будущих» проектов. Современные устройства стали сложнее: с USB-C и перезаряжаемыми аккумуляторами. Во время разборки я обнаружил микроконтроллер с маркировкой «PUYA» — это оказался ARM Cortex-M0+.

Технические характеристики

Микроконтроллер PY32F002B имеет:

  • 24 МГц Cortex-M0+
  • 24 КБ флеш-памяти
  • 3 КБ ОЗУ
  • Минимальный набор периферии

Подключение к сети

Идея использовать вейп в качестве веб-сервера пришла после экспериментов с semihosting — системными вызовами для ARM через отладчик. Для передачи данных использовался протокол SLIP (Serial Line Internet Protocol), эмулирующий модемное соединение через последовательный порт.

Настройка в Linux:

pyocd gdb -S -O semihost_console_type=telnet -T $(PORT) $(PYOCDFLAGS) &
socat PTY,link=$(TTY),raw,echo=0 TCP:localhost:$(PORT),nodelay &
sudo slattach -L -p slip -s 115200 $(TTY) &
sudo ip addr add 192.168.190.1 peer 192.168.190.2/24 dev sl0
sudo ip link set mtu 1500 up dev sl0

Для реализации TCP/IP стека выбрана легковесная библиотека uIP, не требующая RTOS и поддерживающая базовый HTTP-сервер.

by dmazin • 15 сентября 2025 г. в 13:13 • 576 points

ОригиналHN

#arm-cortex-m0+#slip#tcp-ip#http#uip#embedded-systems#iot

Комментарии (228)

Вот краткое содержание обсуждения:

  • Участники обсуждают китайские 4G-донглы и одноразовые вейпы как примеры невероятно дешевых, но мощных вычислительных устройств, которые содержат микроконтроллеры, память и даже GPS.
  • Основная мысль: подобные устройства, будучи одноразовыми, представляют собой огромную проблему электронных отходов, и их статус «одноразовых» считается абсурдным и расточительным.
  • Обсуждается технический парадокс: эти устройства обладают вычислительной мощью, о которой можно было только мечтать несколько десятилетий назад, но теперь они массово выбрасываются после одного использования.
  • Многие пользователи восхищаются техническим достижением автора проекта (запуск веб-сервера на таком устройстве) и духом хакерства, но при этом испытывают смешанные чувства из-за контекста их применения.
  • Поднимается вопрос о том, как законно утилизировать такие устройства (батареи и электронику), и выражается сомнение, что люди следуют этим правилам.
  • В целом, текущее состояние технологий, где ИИ создает искусство, а веб-серверы работают на вейпах, характеризуется как «странное».

Website is hosted on a disposable vape (ewaste.fka.wtf)

Веб-сервер на одноразовой вейпе

Сервер, с которого вы читаете этот текст, работает на микроконтроллере внутри одноразового вейпа.
Внутри — чип PUYA C642F15 (на деле PY32F002B): Cortex-M0+ 24 МГц, 24 КБ флеш, 3 КБ ОЗУ.
Для выхода в сеть используется старый протокол SLIP: pyOCD перенаправляет semihosting-вызовы в telnet, socat делает из этого виртуальный tty, slattach поднимает интерфейс sl0.
IP-стек — uIP 0.9, пришлось подправить выравнивание структур и чексуммы.
Файловая система упакована прямо во флеш; веб-страница, которую вы сейчас читаете, весит меньше 3 КБ.
Питание — от самого вейпа: 3,7 В, 550 мА·ч, хватает на сутки бесперебойной работы.
Скорость 115200 бод, latency < 20 мс — быстрее, чем модем 90-х.

by BogdanTheGeek • 14 сентября 2025 г. в 22:14 • 162 points

ОригиналHN

#cortex-m0+#uip#slip#pyocd#socat#tailscale#vps#iot

Комментарии (83)

  • Участники обсуждают «одноразовые» вейпы с USB-C и перезаряжаемой батареей: юридически их продают как «многоразовые», чтобы обойти запреты, хотя по факту выбрасываются после 1-3 циклов.
  • Пост Богдана с анализом внутренностей вейпа (Cortex-M0+ за копейки) лёг от нагрузки, подняли зеркало на GitHub и копию в Wayback Machine.
  • Шутки про «вейп-кластер» и «Android на вейпе» сменились идеей собирать выброшенные девайсы для самодельных проектов: кормушки, mesh-сети, добыча бесплатных микроконтроллеров.
  • Спор о безопасности хостинга домашнего сервера: кто-то открывает порт, кто-то DMZ или VPS + Tailscale, главное — изолировать VLAN/контейнер.
  • Пользователи признают зависимость от никотина и бессмысленность выбрасывания техники, но всё равно продолжают покупать.