
Оригинал этой статьи НЕ загружается с веб-сервера, работающего на одноразовом вейпе. Если вы хотите увидеть сам сервер, то это можно сделать здесь. В остальном контент идентичен.
Предыстория
Уже пару лет я собираю коллекцию одноразовых вейпов, полученных от друзей и членов семьи. Поначалу я только извлекал аккумуляторы для «будущих» проектов (это точно не синдром Плюшкина), но в последнее время одноразовые вейпы стали гораздо более продвинутыми. Не хотел бы я быть юристом, которому придётся доказывать, что устройство с разъёмом USB C и перезаряжаемым аккумулятором можно классифицировать, как «одноразовое». К счастью, в ближайшее время я не планирую подаваться в юриспруденцию.
В прошлом году я разбирал одну из этих технологичных сосок для взрослых и заметил нечто любопытное: вместо обычной чёрной капли, которой заливают ASIC (Application Specific Integrated Circuit), я увидел небольшую интегральную схему с маркировкой «PUYA». Не буду винить читателей, если это название не вызвало у вас того же восторга, что и у меня — большинство людей никогда его не слышало. Эта компания больше всего знаменита своими флэш-чипами, но впервые я узнал о них из поста Джея Карлсона о самом дешёвом флэш-микроконтроллере. Это довольно мощные крошечные микроконтроллеры ARM Cortex-M0+.
За последний год у меня скопилось довольно много таких одноразок с PY32; это были разные модели вейпов одного производителя. Я не буду бесплатно рекламировать табачный бренд, но выражу благодарность проектировщику за маркировку на отладочных контактах!
С чем мы работаем
Чип имеет не особо информативную маркировку PUYA C642F15. Я был практически уверен, что это PY32F002A, но, потыкавшись с помощью pyOCD, заметил, что флэш-память имеет размер 24 КиБ и в устройстве есть 3 КиБ ОЗУ. Лишняя флэш-память означала, что это, скорее всего, PY32F002B, то есть сильно отличающийся чип1.
Итак, вот спецификации микроконтроллера настолько плохого, что его, по сути, сделали одноразовым:
- Cortex M0+, 24 МГц 
- 24 КиБ флэш-памяти 
- 3 КиБ статической ОЗУ 
- периферия, которую я не буду использовать. 
Возможно, взглянув на спецификацию, вы решите, что здесь особо не с чем работать. Понимаю вас: мой телефон, которому уже десять лет, едва может загружать Google, а этот микроконтроллер примерно в сто раз медленнее. С другой стороны, я вижу в нём потрясающе быстрый веб-сервер.
Выходим онлайн
Мысль о хостинге веб-сервера на вейпе пришла мне не сразу. На самом деле, я уже какое-то время экспериментировал с ними, но после написания поста о semihosting меня озарило.
Если вы не хотите читать ту статью, объясню, что semihosting — это, по сути, системные вызовы для встроенных микроконтроллеров ARM. Мы записываем некие значения/указатели в регистры и вызываем команду контрольной точки. Прикреплённый отладчик интерпретирует значения в регистрах и выполняет некие действия. Большинство людей использует такую систему просто для вывода логов из микроконтроллера, но на самом деле она двунаправленная.
Если вы постарше меня, то можете помнить эпоху до появления Wi-Fi и Ethernet — тёмные века, когда для выхода в Интернет требовались модемы. Также вы можете знать, что призраки этих модемов до сих пор с нами. На самом деле, почти все последовательные устройства USB эмулируют эти модемы: модем на 56k — это просто последовательное устройство на 57600 бод. Данные между некоторыми из этих модемов передавались по протоколу SLIP (Serial Line Internet Protocol)2.
Возможно, вас не удивит, что Linux (а после дополнительной настройки — и macOS) поддерживает SLIP. Утилита slattach способна заставить любой /dev/tty* отправлять и получать IP-пакеты. Для этого достаточно лишь передавать данные в нужном формате и предоставить виртуальный tty. На самом деле, это проще, чем вы могли подумать: pyOCD может перенаправлять весь semihosting через порт telnet. Далее можно использовать 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, нам нужен IP-стек. Вариантов тут много; я выбрал uIP потому что он довольно мал, не требует RTOS и его легко портировать на другие платформы. Кроме того, у него уже есть минималистичный пример HTTP-сервера.
Портировав код SLIP для использования semihosting, я получил работающий веб-сервер, но… в половине случаев. Как часто бывает с сильно оптимизированными библиотеками, uIP спроектирован для 8- и 16-битных машин, редко имеющих требования выравнивания данных в памяти. Однако на ARM в случае разыменования u16 *, остаётся лишь надеяться, что адрес чётный, в противном случае возникнет исключение. В uip_chksum предполагается выравнивание u16, но оно не предполагается в скрипте, создающем файловую систему. Параллельно я решил немного изменить структуру файловой системы, чтобы сделать её чуть более портируемой. Это был мой первый опыт работы с perl, и должен сказать, что он вполне неплохо подходит для подобных задач.
Потрясающе быстрый
Насколько же быстрым может быть веб-сервер, работающий на одноразовом микроконтроллере? Ну, поначалу он был не очень быстрым. Пинги занимали около 1,5 с с потерей 50% пакетов, а простая страница загружалась более 20 с. Так плохо, что даже забавно; на самом деле, я подумывал на этом остановиться.
Однако оказалось, что всё это время проблема заключалась в прокладке между сиденьем и рулём. Первая реализация считывает за раз целый символ, с чем связан огромный оверхед. Ранее я выполнял бенчмаркинг semihosting на этом устройстве, и получал около 20 КиБ/с, но реализация SLIP в uIP проектировалась для устройств с очень малым размером памяти, поэтому она сериализировала данные побайтово. У нас же есть целых 3 КиБ ОЗУ, поэтому я добавил кольцевой буфер для кэширования чтения с хоста и передавал его в функцию опроса SLIP. Также я разделил операции записи на группы, чтобы обеспечить возможность экранирования.
И теперь сервер стал потрясающе быстрым! Пинги занимают 20 мс, пакеты не теряются, а вся страница целиком загружается примерно за 160 мс. Система занимает почти всю ОЗУ, но я вполне могу уменьшить размеры буфера, чтобы оставалось достаточно места для запуска других задач. В репозитории проекта всё настроено для удобного баланса между задержками и объёмом используемой ОЗУ:
Область памяти       Занятый размер Размер области   % занятого
           FLASH:        5116 Б        24 КиБ          20,82%
             RAM:        1380 Б         3 КиБ          44,92%Однако для этого блога я использовал всю ОЗУ.
Как вы могли заметить, у нас осталось всего меньше 20 КиБ (80%) на накопителе. Может, для выпуска целого React этого и не хватит, но, как видите, этого более чем достаточно для хостинга всего поста. И это не просто сервер статических страниц, на нём можно выполнять любой серверный код, если вы знаете C.
Ради развлечения я добавил конечную точку JSON API, чтобы получать количество запросов главной страницы (с последнего вылета) и уникальный ID микроконтроллера.
Ресурсы
- Собирая материалы для поста, я наткнулся на проект, который правильно идентифицировал эти микроконтроллеры, как PY32C642 (они практически одинаковы с 002B). 
- В более новых модемах использовался PPP (Point-to-Point Protocol). 
Комментарии (0)
 - THEOILMAN16.09.2025 06:00- С doom наигрались, теперь сервера. Ждем сервак на тесте для беременности. Спс.  - green_fenix16.09.2025 06:00- К сожалению, дум на тесте таки не запускали. От теста там использовали только экранчик, сам дум работал на другом девайсе. Но бейт вышел отличный у автора, теперь под каждым видео про запуск дума на чем-то есть коммент про тест на беременность  - DrMefistO16.09.2025 06:00- Каждый раз об этом не устаю напоминать каждому, кто только заикается на данную тему  - ropblha16.09.2025 06:00- На тестах экономят явно сильнее чем на вэйпах. Ставят OTP контроллеры. А так бы тоже можно было поковыряться. У меня вот тоже какой то вэйп лежит - думал, сейчас хелло ворлд на нем запилю - оказался однократно прошиваемый.  
 
 
  - Sib_KuKumber16.09.2025 06:00- Вы не поняли что это и зачем? Это СБУ объясняет предателям на территории России. Как создавать сеть из ненужного хлама.  - FreemanIsAlive16.09.2025 06:00- Нет, если это написано серьёзно, то я в полном ауте, какие в России порождения режима начали появляться... 
 
 
 - Indemsys16.09.2025 06:00- Чел забыл упомянуть, что свой SLIP он прогоняет через RP2040, а потом через PC чтобы достичь интернета. 
 Обкурился?
  - muxa_ru16.09.2025 06:00- Напоминает истории про "запустил Дум на", в которых от заявленного устройства использовался только экран. 
  - Inskin16.09.2025 06:00- С одной стороны, не упомянул, а с другой - тема-то "веб-сервер на вейпе", а не "прямой выход с вейпа в интернет". 
 
 - homesoft16.09.2025 06:00- Интересно, зачем в вейпе Cortex M0? Или там фирмварь на питоне, питон в виртуальной машине, а машина под гипервизором? Это же вейп, Карл!  - radiolok16.09.2025 06:00- Потому что ПИД регулятор на мелком камне сделать намного проще чем любым другим способом. К тому же кто-то должен управлять светодиодной подсветкой :)  - 1001100101001001016.09.2025 06:00- а что там ПИД-регулировать то?  - xSVPx16.09.2025 06:00- Нагрев вообще-то.  - homesoft16.09.2025 06:00- А компаратор с датчиком температуры не справляются?  - AlexMih16.09.2025 06:00- Похоже, человечество утрачивает знания о простых аналоговых технологиях. - Так же, как например утратило способность без электричества построить деревянный парусный корабль, способный совершить кругосветку...  - xSVPx16.09.2025 06:00- Вы всерьез предлагаете делать пид на аналоговой базе :)? Это дороговато выйдет боюсь. - Тут вот сверху человек предлагает заменить штуку, которая поддерживает температуру с заданной точностью на щёлканье с помощью компаратора. Что это как не утрата примитивных знаний ? - Еще можно вместо пид-регулятора вкорячить биметаллический размыкатель из чайника. Это если вообще результат не интересует.  - homesoft16.09.2025 06:00- Так а он нужен там, ПИД регулятор? Он высокочастотным ШИМом управляет или в итоге пересщёлкиевает раз в секунду? Сделайте маленький гистерезис и ШИМ у вас сам собой получится. И точность будет в пределах. Или там надо 0.00001 градуса? А термодатчик даёт такую точность? - А, надо интегральную ошибку чтоб учитывал? Так включите ТЭН на полуную и нагреется быстро быстро, без интегральной ошибки :) - Хотя нет, точности не будет из-за инерционности системы. Будет перегрев. Правда когда жидкость начинает испаряться, там уже не теплоёмкость, а теплота парообразования работает, что как бы даст отрицательную обратную связь некоторую. 
 Но вопрос открытый, а надо ли точность или надо чтоб испаряло и +- 5 градусов? Так уже в чайниках MCU ставят, без MCU уже никак. - xSVPx16.09.2025 06:00- У вас очень быстропротекающие процессы часто друг друга сменяют. Пока человек держит дулку в руках - не надо жарить на полную, глицерин загорится. А вот в момент, когда он начинает затягиваться вам вообще в целом пофиг на показания градусника - пора включать на 1000%, чтобы когда он затянется дым не кончился. - Вокруг всего этого с помощью мк, ПИД, показаний акселерометра (если есть), данных с датчика потока воздуха итд итп можно построить очень сложные алгоритмы. Кстати там вроде должны быть в том числе какие-то протоколы безопасности реализованы на уровне "если он уже минуту затягивается - выключиться". - Нужны ли они. Зависит от изделия. Вероятно без них можно обойтись, однако последний мой чайник в пид умеет, и если ему ставишь 80 градусов, то он готовит воду на 80, а не на 70 или 90... - Вопрос только в том, зачем обходится. Сейчас у вас есть возможность встроить магию даже в копеечный прибор, чем он будет лучше без нее ? Откуда желание сделать сложнее, дороже и хуже ?  - zuek16.09.2025 06:00- Описываемый Вами функционал больше характерен для "неодноразовых" дудок. В одноразках обычно всё сильно проще - есть даже без микроконтроллера (это те, которые прям совсем одноразки - даже порта USB не имеют), хотя попадаются и с полноценным тачскрином, и с вибросигналом и с термодатчиками... Я просто тоже их собираю второй год, сначала, как и автор, из-за аккумуляторов (очень удобно заменять 3 пальчиковые батарейки во всяких фонариках и "метеостанциях"), а когда пошли "умные" модели - стал задумываться о более рациональном переиспользовании, но мне не хватило настойчивости, так и коплю самые интересные экземпляры в разобранном виде.  - acc0unt16.09.2025 06:00- В совсем тупых "одноразках" тоже микроконтроллер есть. - Просто стоит этот микроконтроллер внутри "датчика затяжки", и наглухо зашит с завода фиксированной OTP-прошивкой. - Этот микроконтроллер как раз детектит затяжку, управляет нагревающим элементом, следит за током и температурой, мигает светодиодами, и блокирует работу при полной разрядке батареи. 
  - zuek16.09.2025 06:00- Ну, далеко не у всех - был у меня экземпляр, который я уронил в воду, и у него, видимо, "детектор затяжек" намок, так он включился минут на 5 - пока аккум не высадил в ноль - после разбора даже как донора аккумулятора использовать не получилось - ни одна из имеющихся зарядок не распознавала акк (и "дудка" была не совсем тупой - как раз на МК, подобном описываемому в статье). 
  - isden16.09.2025 06:00- Возможно это была совсем старая модель, или какой-то специфической сборки, хз. Насколько помню, требование ограничения на 10с уже давно почти везде ввели. Я очень давно видел "дудку" типа фломастер (егошка вроде) без этого. Даже в подах с кнопками не выйдет дольше 10с испаритель жарить. Разве что в совсем тупых мехмодах. - У меня, к слову, недавно была аналогичная ситуация - намочил микрофон. Оно жарило по 10с, потом отключалось на долю секунды, и снова жарило. 
  - zuek16.09.2025 06:00- Ну, модель была не супер-современная, но и не архаичная. А вот выключалась ли она "на долю секунды" - заручиться не готов - активность оценивал на слух - шипение испарителя, и шипение во времени менялось (но, вроде, не регулярно) - я это принял за неравномерность смачивания зоны испарения. Но нагрелась она вся знатно - я уже начал подискивать керамическую подставку, на случай воспламенения. 
  - isden16.09.2025 06:00- У меня была с цветомузыкой, так что отключение было заметно. Я сначала вообще крышку отковырнул и кусачки приготовил, провода батарейки откусывать. Но сильно не нагревалось, и за полчаса батарейка закончилась. 
  - isden16.09.2025 06:00- Это не то чтобы прямо требование ЕС, а необходимость. Порта нет только в совсем мелких, где заводского заряда хватает чтобы всю емкость бака высадить. В средних и крупных уже не хватает, и нужно акк заряжать. 
  - Sun-ami16.09.2025 06:00- Сама необходимость зарядки - это не требование ЕС, требование ЕС - это чтобы разъём зарядки был USB-C. 
  - zuek16.09.2025 06:00- Обновление прошивки в одноразках?! =) - Нет, это исключительно для зарядки - в подавляющем большинстве моделей пины данных даже не разведены (в некоторых продвинутых моделях на плате есть отладочные пятаки, а порой даже разъёмы, но у большинства нет даже и этого). Это если говорить про заряжаемые "дудки", а если говорить про совсем одноразовые (в моей коллекции неразобранная только некая "OXIDE" имеется), то там прям совсем грустно по обвязке - нагреватель, подключенный через микрофон (видимо, с интегрированным силовым ключом) напрямую к аккумулятору (обычно на 650 мАч/2.4 Втч). 
  - Sun-ami16.09.2025 06:00- Я имею в виду обновление прошивки не пользователем, а производителем или продавцом. Такая необходимость может появиться после какого-нибудь опасного происшествия, вместо того, чтобы отзывать уже отгруженные устройства, можно обновить им ПО. Другого смысла выводить на USB линии данных в серийном устройстве я не вижу. Если линии данных не выведены, то такая возможность однозначно не предусмотрена, а если выведены - думаю, о ней по крайней мере думали. В некоторых микроконтроллерах есть предпрошитый загрузчик с USB, там для обновления через USB не нужно писать специальный софт - всё уже есть, достаточно вывести линии данных. 
 
  - homesoft16.09.2025 06:00- Оно-то да, тут, как говорится, не с чем спорить. Но тенденция увеличения сложности простых вещей налицо. Сложнее алгоритмы - сложнее и баги в них. Раньше как-то запускали шатлы на простой элементной базе. И не сказать, что сейчас аппараты надёжней стали. Тот же Боинг 737 MAX. Сложность софта тоже не бесплатно даётся. Увеличивается сложность - увеличивются требования к железу. Прогрес-с-с. А вейп - он как был вейпом, так и остался. Скоро будет вейп с ИИ, когда его запакуют в МК за 0.08 рублей. Точнее когда МК за 0.08 рублей вместит 100500 коэффициентов :) А оно надо? :)  - xSVPx16.09.2025 06:00- Оо, вы зря про шатлы :). - Вы же знаете, что приходилось бортовые компьютеры перепрограммировать в полете потому, что памяти хватало либо на программу посадки, либо на программу взлета. С кассет загружали. По таким вещам скучаете :)? - Есть области, где сложность может привести к трагедиям, но вряд ли это про вейпы. - Да - скоро все вокруг станет умным. И да - это принесет не только удобства, но и проблемы. Но удобств всё-таки больше. 
  - omega-hyperon16.09.2025 06:00- Вы же знаете, что приходилось бортовые компьютеры перепрограммировать в полете потому, что памяти хватало либо на программу посадки, либо на программу взлета. С кассет загружали. По таким вещам скучаете :)? - Там еще память на ферритовых сердечниках была. - Это можно объяснить желанием американцев оставить человека в контуре управления. СССР же некоторое отставание в электронике не помешало чуть позже сделать полностью автоматический "Буран". Собственно, это главный минус шаттлов - очень активное участие экипажа в управлении, если они просто потеряли бы сознание в процессе полета, их просто не смогли бы безопасно посадить. Особую пикантность ситуации придает тот факт, что для работы с пультами управления в процессе посадке перчатки скафандра должны быть сняты. 
  - lehshik16.09.2025 06:00- чтобы вейп работал как надо, нужно мерять сопротивление нити, решать всякие дифуры и регулировать ток, едва ли это можно сделать на аналоговой базе 
  - wickated16.09.2025 06:00- Не нужно, там нет не пидов, ни градусника, ни токового шунта. Ничегошеньки этого кипятильнику не надо. Зато есть птц грелка, которая сам себе пид . - Более того, малые нагреватели без инерционной массы нормально не пидятся. 
  - homesoft16.09.2025 06:00- Можно. Мало кто в это умеет сейчас, потому, что надобность отпала. Получится дороже - да, скорее всего. Больше корпусов. Как минимум 4 ОУ и ШИМ. Хорошие ОУ жрут немерянно. 
  - randomsimplenumber16.09.2025 06:00- Как минимум 4 ОУ - 1 корпус кстати - Хорошие ОУ жрут немерянно - Не больше чем нагреватель ;) - В принципе ничего ракетно-сложного. Все формулы известны, только кодировать нужно сразу в железо. На Си проще. 
  - muxa_ru16.09.2025 06:00- Сложность софта тоже не бесплатно даётся. Увеличивается сложность - увеличивются требования к железу. - И уменьшение требований к человеку, который это разрабатывает - вместо множества разных физияеских явлений, достаточно уметь складывать в нужном порядке "циклы" и "условия". 
 
  - AlexMih16.09.2025 06:00- магию даже в копеечный прибор, чем он будет лучше без нее ? - Трудно сформулировать ответ, он у меня и в голове не очень-то сформулировался. - Просто есть какое-то смутное ощущение, что все эти вещи, типа сигарет на одноразовых микропроцессорах - какой-то очень неправильный вектор приложения человеческих усилий, и движения цивилизации в целом. Из-за чего неизбежны хоть и отложенные, но очень плохие последствия. Крохотное, но яркое свидетельство того, что люди тратят кучу усилий и ресурсов на ерунду, вместо того чтобы решать реальные проблемы. - У меня одного такое впечатление?  - randomsimplenumber16.09.2025 06:00- люди тратят кучу усилий и ресурсов на ерунду, вместо того чтобы решать реальные проблемы - Мода. Профессиональный спорт. Шоу-биз. 
  - venanen16.09.2025 06:00- Вот прямо сейчас stm8 в чип и дипе (!) в розницу (!!!) 12 рублей. И позволит это реализовать довольно сложные, ветвистые алгоритмы. Разумеется, все можно реализовать на обычной рассыпухе, просто это будет сильно дороже, сильно тяжелее, и если уж тут про вектор развития - то и с огромным перерасходом ресурсов. Зачем? Так вот и получается, что вектор выходит правильным, ведь всего за 12 рублей вам доступна буквально нанометровая магия. Всего один микроскопический МК за копейки и небольшая ПЗУ - и это будет мощнее контроллеров шаттлов. За 12 рублей. 
 А еще, развитие потребительского рынка неплохо финансирует отрасль, и если транзисторы и другая рассыпуха не сильно менялись, то МК развиваются довольно бодро в том числе благодаря спросу.
 Так что мысль про вектор мне понятна, инженерному мышлению свойственна оптимизация, и МК в штуке, которая просто греет спиральку кажется оверкиллом, но на практике же это не так как по финансам, так и весу и компактности и надежности.
 P.S. Недавно у друга видел вейп вообще следующего уровня. С экраном, графиками затяжки, анимациями, интерфейсом и так далее, и у меня вообще сложилось впечатление, что это UI поверх Linux/Android. За 3500. С полноценным сетевым стеком (WiFi + Bluethooth). Были бы у меня навыки, я бы его поковырял....
  - Tsimur_S16.09.2025 06:00- С полноценным сетевым стеком (WiFi + Bluethooth). - Это же можно каждые три затяжки останавливать процесс что бы показать рекламу фонбета. 
  - AlexMih16.09.2025 06:00- Зачем же так издеваться над людьми. Разумеется, будут варианты сигарет без рекламы. Оплатить можно будет либо позатяжечно, либо удобной подпиской в облаке. 
  - isden16.09.2025 06:00- С экраном, графиками затяжки, анимациями, интерфейсом и так далее, и у меня вообще сложилось впечатление, что это UI поверх Linux/Android. - Я такое еще лет 8 назад видел (если склероз не подводит, там еще и тачскрин был, похоже прикрутили вейп к смартфону), правда не за 3.5к =) Руки прямо чесались купить и поковырять, но жаба победила. 
  - muxa_ru16.09.2025 06:00- У меня одного такое впечатление? - Нет, не у одного, но это не гарантирует правильности впечатления. 
  - beliy116.09.2025 06:00- Просто есть какое-то смутное ощущение, что все эти вещи, типа сигарет на одноразовых микропроцессорах - какой-то очень неправильный вектор приложения человеческих усилий, и движения цивилизации в целом. - Кибер панк 
  - NutsUnderline16.09.2025 06:00- люди тратят кучу усилий и ресурсов на ерунду, вместо того чтобы решать реальные проблемы - Старость значит пришла ;) Так было почти всегда, НО иногда из подобных увлечений рождались революционные вещи. И вообще изначально наука в том виде что мы ее знаем была вполне себе развлечением для состоятельных господ которые могли себе это позволить. 
 
 
  - MountainGoat16.09.2025 06:00- Там нет термодатчика. Температура определяется по изменению сопротивления нагревающей проволоки. 
 
 
  - AuroraBorealis16.09.2025 06:00- Даже в случае ядерного локалхоста электричество можно добыть буквально из ничего - банальным партизанским котелком на биметалле, коего кругом будет в избытке. Далее итерационно. Алхимию пятнадцатого века мы тоже подзабыли, ничего страшного :)  - MountainGoat16.09.2025 06:00- Главное знать, что так можно. Я вот задумался: в принципе, мастеровые Древнего Египта легко могли бы сделать электрогенератор. Эмалированная медная проволока у них была в избытке, железо тоже уже водилось. Но вот - не додумались, и всё.  - muxa_ru16.09.2025 06:00- Кроме электрогенератора нужны потребители, соответствующие сопутствующие отрасли и экономическая целесообразность. - До электромобилей "додумались" сразу же, как только электродвигатели сделали. То, что это будут литиевые аккумуляторы было понятно ещё в середине 20-го века. - Только толку в этих "додумались" не было, пока не сошлись: 
 - экономика с ценой на аккумуляторы
 - материалы, делающие корпус автомобиля легче
 - урбанизация, уменьшившая необходимый суточный пробег
 - ровные дороги и сети автомастерских- Но "додумались" ещё в 19-м веке, да. - Вобщем, хз, до чего они там в Древнем Египте могли додуматься, но это "додуматься" не имеет сколь либо значительного влияния. Додуматься любой дурак может, а вот сделать пригодное и экономически целесообразное, серийное изделие, это гораздо сложнее.  - MountainGoat16.09.2025 06:00- Я сомневаюсь, что собиратели первых динамомашин задумывались об экономической целесообразности этого агрегата. Скорее, они их делали потому, что это ох***  - muxa_ru16.09.2025 06:00- Представьте какого-нибудь "собирателя динамомашины", который делал это не для бабла, а " потому, что это ох***". - Смоделируйте цепочку источников, благодаря которым, Вы об этом человеке узнали. - Для начала сделайте это для 19-го века, а к Древнему Египту перейдём потом. :) 
  - randomsimplenumber16.09.2025 06:00- Гальвани, который открыл (каламбур!:)) лягушку, вряд ли планировал заработать на ней денег ;) 
  - randomsimplenumber16.09.2025 06:00- Что значит открыл? Это тебе не консервы с бобами. - Что общего консервы с бобами и лягушки? Чтобы посмотреть что внутри- нужно открыть. (смех в зале) 
  - muxa_ru16.09.2025 06:00- Вопрос в том, открыл или нет, мы затрагивать не будем. в то время, много кто игрался в электричество, а Рихман даже смог от него умереть на рабочем месте. - Тут есть более интересная тема - то как мы воспринимаем прошлое. Вот Вы пишете - Гальвани, который открыл (каламбур!:)) лягушку, вряд ли планировал заработать на ней денег ;) - Прекрасная романтическая идея, построенная на концепции идейных подвижников жизнь которых посвящена чистому прогрессу и науке. - Давайте её немножко перефразируем. - Университетский профессор медицины, который занимался вопросом оживления мертвых тел с помощью электричества, вряд ли планировал заработать на этом денег - Ага, Гальвани занимался электрификацией лягушек в рамках своей профессиональной деятельности, за которую получал деньги. - Возможно, были и другие люди, которые этим занимались сугубо ради интереса и прогресса, но они книжек не опубликовали и мы про них ничего не знаем. - В этом суть многих историй про "открытия" - те люди пытались получить бабло и славу, и приложили усилия к тому, чтобы про них узнали. А про тех, кто делал это ради чистого познания, мы ничего не узнали - они что-то там познали, получили удовольствие и не стали тратить время и деньги на написание книг. 
  - isden16.09.2025 06:00- не для бабла, а " потому, что это ох***". - А давайте я напомню не про динамомашину, а про нечто более фундаментальное и более заметно подвинувшее прогресс в свое время. Геронов шар. Стимпанк мог бы настать еще в 1 веке нашей эры, но тогда это осталось лишь игрушкой. 
  - muxa_ru16.09.2025 06:00- ДВС продвинул прогресс в авиации, это понятно. - Литиевые аккумуляторы продвинули прогресс в электромобилях, это понятно. - Микроэлектроника продвинула прогресс в управлении чем угодно. - А как геронов шар продвинул прогресс в паровых двигателях? 
  - isden16.09.2025 06:00- Как внедрение и использование парового двигателя повлияло на развитие цивилизации вы можете самостоятельно почитать в интернетах, статей на эту тему написано дофига. Даже на хабре было. 
  - Cerberuser16.09.2025 06:00- Насколько я вижу, вопрос был не в этом, а, грубо говоря, "что такого случилось благодаря геронову шару [именно конкретно геронову шару, а не паровому двигателю вообще], что не случилось бы без него?" 
  - isden16.09.2025 06:00- А я сразу же и написал - Геронов шар так и остался игрушкой, хотя это был полноценный прототип парового двигателя, и перспективы были огого. 
  - Cerberuser16.09.2025 06:00- И, если я правильно понял, ваш собеседник утверждает, что, раз что-то "осталось игрушкой" - неправильно говорить, что это что-то "более заметно подвинувшее прогресс". Могло оказаться - да, но на практике не продвинуло. 
  - isden16.09.2025 06:00- Мне кажется, он просто не очень понял мысль. Геронов шар - это пример какой-то очень крутой революционной вещи (прототип парового двигателя, это именно "нечто более фундаментальное"), сделанной for fun. К сожалению, в данном случае, дальше fun дело не продвинулось и пришлось ждать еще очень долго. 
  - muxa_ru16.09.2025 06:00- Мне кажется, он просто не очень понял мысль. Геронов шар - это пример какой-то очень крутой революционной вещи (прототип парового двигателя, это именно "нечто более фундаментальное"), сделанной for fun. - Во-первых, мы про этот шар не знаем примерно ничего, и хз кем и зачем он был сделан. Даже если он был игрушкой, то это мог быть бизнес на игрушках. - Но более важно, что в процессе этой беседы, в подкрепление важности геронова шара, Вы сказали, что он "прототипа парового двигателя". - Но реактивная турбина не может быть прототипом парового двигателя, который является поршневой машиной. Это примерно как сказать, что велосипед это прототип парашюта, потому что и там и там ветер в лицо дует. 
  - isden16.09.2025 06:00- Во-первых, мы про этот шар не знаем примерно ничего, и хз кем и зачем он был сделан. Даже если он был игрушкой, то это мог быть бизнес на игрушках. - Кто "мы"? - Геро́нов шар (aeolipile, эолипил, геронова турбина) — прототип паровой турбины, созданный в I веке Героном Александрийским и описанный им в трактате «Пневматика» (Πνευματικά) под названием эолипил 
 В течение многих веков турбина Герона оставалась технической забавой или игрушкой.- реактивная турбина не может быть прототипом парового двигателя - Ну здрасьте - Парова́я маши́на или паровой двигатель — тепловой двигатель внешнего сгорания, преобразующий энергию водяного пара в механическую работу возвратно-поступательного движения поршня, а затем во вращательное движение вала. В более широком смысле паровая машина — любой двигатель внешнего сгорания, который преобразует энергию пара в механическую работу, таким образом к паровым машинам можно было бы отнести и паровую турбину, имеющую до сих пор широкое применение во многих областях техники. «Краеугольный камень» промышленной революции. 
  - muxa_ru16.09.2025 06:00- Кто "мы"? - "мы" это люди живущие в 2025 году. - В более широком смысле - Удобно, да. - Можно сказать, что "в более широком смысле, геронов шар является прототипом чего угодно". 
  - isden16.09.2025 06:00- "мы" это люди живущие в 2025 году. - Я даже не знаю что вам на это сказать. Вы альтернативщик? - Можно сказать, что "в более широком смысле, геронов шар является прототипом чего угодно". - Т.е. вас не устраивает определение паровой машины "любой двигатель внешнего сгорания, который преобразует энергию пара в механическую работу"? А почему? Дайте ваше определение, и подкрепите его чем-нибудь существенным. 
  - muxa_ru16.09.2025 06:00- Дайте ваше определение, и подкрепите его чем-нибудь существенным. - А Вы свои слова чем существенным подкрепили? :) 
  - muxa_ru16.09.2025 06:00- Вы можете проверить определение по ссылкам в гугле. А у вас что? - Больше всего в борцах с альтернативщиками мне нравится то, что они постоянно ссылаются на "где-то там написано", без указания конкретного источника и подтверждения его авторитетности. :) 
  - muxa_ru16.09.2025 06:00- Щас мы уйдём совсем не туда, хотя, на самом деле, именно туда. - Современная европейская цивилизация, частью которой мы являемся, считает себя наследницей античности. - Священная Римская Империя окончательно сломалась уже после Французской Революции, но римские цифры и изучение латыни были актуальны ещё какое-то время. - И рассказ об античных корнях чего угодно (театра, философии, электротехники) это жанр, который у нас сейчас реализован в виде "ещё в советские годы ...". - Но это не научный исторический жанр. - Это развлекательное вступление для увлечения читателя. 
 Это отмазка от копирайтных претензий "я не у вас украл, а научился у Архимеда".
 Это понты "Вы знаете насколько велик и умён был Платон? Так вот я его превзошёл!" (при отсутствии необходимости делить с Платоном прибыль).- То есть, древние античные технологии упоминаются в современных книжках не потому, что их реально связали с современными технологиями, а потому что это инерция процесса "поиск корней в античности". - У меня на эту тему есть очень простой метод - заменяем античного мудреца на "советские инженеры в закрытых НИИ" и смотрим, выглядит ли это нормальным объяснением или же "астральной байдой". 
  - isden16.09.2025 06:00- Это все конечно интересно, но не очень понятно что вы хотели сказать. Что Герон не делал эту штуку? Или что? У вас есть другие версии? 
  - muxa_ru16.09.2025 06:00- но не очень понятно что вы хотели сказать. Что Герон не делал эту штуку? - Я написал вполне чётко: "Во-первых, мы про этот шар не знаем примерно ничего, и хз кем и зачем он был сделан. Даже если он был игрушкой, то это мог быть бизнес на игрушках." - Но тут есть проблема. Дети воспитанные научпопом не способны сказать "я не знаю", поэтому, когда они видят непринятие их версии, они приписывают собеседнику анти-версию и требуют подтверждение этой, ими же выдуманной, анти-версии. - Давайте я вечером попробую отдельно подробно расписать. :) 
  - isden16.09.2025 06:00- Понятно, значит таки альтернативщик. Ну распишите, хоть узнаю что там у вас сейчас в тренде. 
  - muxa_ru16.09.2025 06:00- Скрасить томительные часы ожидания Вы можете следующим образом. - 1) Чётко сформулируйте ту версию, относительно которой Вы называете меня "альтернативщиком". 
 2) Напишите, откуда ЛИЧНО ВЫ про это знаете.
 
 
  - mcsimm16.09.2025 06:00- В детстве, в середине 80-х, читал в какой-то книге (название не помню, но что-то про изобретательство), что для создания фонографа были все материалы и технологии уже в Древнем Риме, и, возможно, мы бы послушали выступление Цицерона. Но нет. Не было задачи. Хотя, как мне кажется, природу звука уже тогда понимали (колебания).  - randomsimplenumber16.09.2025 06:00- Если бы древнеримских рабов усадить за конвеєр, они собирали бы айфоны ничем не хуже китайцев. Не было потребности в постановке задачи. 
  - muxa_ru16.09.2025 06:00- Был такой поджанр научпопа, рассказывать о том, как с помощью "примитивных технологий" сделать что-то современное. - Чисто развлекательное направление, сейчас процветающее в рамках жанра "попаданцев".  - randomsimplenumber16.09.2025 06:00- В ютубах есть канал, где пакистанские умельцы чинят что угодно инструментом из сельськой кузни 18 века. 
  - muxa_ru16.09.2025 06:00- Не 18 и и не сельской. - У них там полноценные заводы, по конструкции не ниже второй половины 19 века, а по энерговоружённости и материалам не ниже середины 20 века. - Чтобы они могли работать, кто-то должен был эти станки изготовить - там одна многотонная чугунина в качестве станины, не настолько тривиальная вещь. Плюс, это надо доставить. Плюс электричество. Плюс резцы. С прессами та же фигня, плюс там масло внутри. Печи надо разогревать и футеровку нормальную. - Кроме того, они же ЧИНЯТ и ПЕРЕРАБАТЫВАЮТ. - Чтобы они из мешка алюминиевых банок могли выплавить тарелку, надо чтобы кто-то этот алюминий произвёл, а это карьеры, самосвалы, печи, куча электричества и т.д. - Чтобы они могли починить что-то сложное, это сложное сначала должен кто-то произвести. Причём, и то что они чинят и то что используют для починки. - Ну и, в конце концов, у них должен быть рынок сбыта, который оправдает оборудование в их мастерской. То есть, если они чинят тормозные диски, то вокруг них должно быть много автомобилей. - Вобщем, это как термопасту на процессор намазать - всего-то и надо, что из тюбика выдавить и шпателем размазать, но врядли это могли сделать жители Древнего Египта, хотя шпатели то у них точно были. 
  - randomsimplenumber16.09.2025 06:00- Не 18 и и не сельской - В Пакистане и атомное оружие есть. Но есть и умельцы. 
  - muxa_ru16.09.2025 06:00- И эти умельцы работают на оборудовании не 18 века и сельского уровня, а на промышленном оборудовании уровня не ниже конца 19 века. Конец 19 века, напоминаю, это уже здоровенные стальные корабли, с нарезной артиллерией, которой они стреляли в другие корабли (или береговую инфраструктуру) на расстояние в десятки километров. И попадали. 
 
 
 
 
 
  - gxcreator16.09.2025 06:00- Там еще счетчик жижи, управление зарядкой аккума и индикация диодами.  - homesoft16.09.2025 06:00- Тут уже нужна мощь вычислительная. Желательно 32 бита да ещё с SIMD расширениями :)  - gxcreator16.09.2025 06:00- МК в статье 32-битный, но смысл брать что-то проще, если его цена $0.08?  - homesoft16.09.2025 06:00- Я думаю, проще уже скоро и не будет  - RTFM1316.09.2025 06:00- Будет достаточно долго. - Пока есть применения в которых МК надо год питать от 2032. Там не только ядро и мегагерцы, а каждый килобайт оперативки всё еще актуален. Другое дело что могут взлететь комбинированные чипы (навроде ESP32) если их доведут до ума. 
 
 
 
 
  - RTFM1316.09.2025 06:00- Ну чтобы харю не разворотило хорошо бы самодиагностику и пару защит. Да и при нынешних ценах на мк, мк с компаратором может быть дешевле компаратора. - Опять же, можно лохотрон с подписками замутить. 
 
 
 
  - pashka00016.09.2025 06:00- Но там же нет термодатчика. Нечем обратную связь считывать  - homesoft16.09.2025 06:00- Так а что тогда ПИД регулирует там? Обратная связсь какая?  - pashka00016.09.2025 06:00- Так я и думаю, что никакого ПИД нет там. Максимум мощность регулируется через ШИМ с учётом напряжения аккумулятора. Помимо этого МК мигает лампочками, отображает заряд акб, считает затяжки, чтоб вовремя заблокироваться. 
 
  - sappience16.09.2025 06:00- Сопротивление спирали можно замерять.  - isden16.09.2025 06:00- У типового кантала/фехраля сопротивление почти не меняется. Нужно как минимум из нержавейки.  - ciuafm16.09.2025 06:00- Но ведь длину пружинки никто не знает, кроме дядюшки Ляо из подвала. Поэтому контроллер с градусником и нужен. Кроме того чтобы нагревать спираль на разном напряжении, очень удобно менять скважность в широких пределах, так что МК там не зря стоит. Я правда видел такой же но с 3 МК. Так и не понял зачем там третий...  - isden16.09.2025 06:00- Так и не нужно длину знать. Просыпаемся через N минут после последнего срабатывания, измеряем, засыпаем. От этой базы дальше танцуем (материал (==коэффициент) же известен). - Тем более там сейчас уже не спиральки давно, а сеточки хитрой геометрии + толщина немного меняется из-за окисления металла.  - isden16.09.2025 06:00- Можно даже еще проще - делать измерение сразу после срабатывания датчика. Система достаточно инерционная и лишние 50мс никто не заметит. 
  - MountainGoat16.09.2025 06:00- s/минут/миллисекунд/g а в остальном подтверждаю.  - isden16.09.2025 06:00- Минуты нужно чтобы остыть.  - MountainGoat16.09.2025 06:00- Ааа. Достаточно просигналить пользователю, чтобы дунул. Остывает мгновенно. 
 
 
 
 
 
 
  - MountainGoat16.09.2025 06:00- Температура регулируется по изменению сопротивления нагревающего элемента. Для этого оный элемент делают не из кондового нихрома, а из специального сплава, который сильно меняет сопротивление.  - isden16.09.2025 06:00- из специального сплава - Это обычная нержавейка типа SS316/321. Есть еще варианты со сплавами на основе никеля или титана, но они обычно дороже, плюс из титана сложно сетку сделать. 
 
 
 
  - okhsunrog16.09.2025 06:00- Не Cortex M4 же) Современные микроконтроллеры на Cortex M0 отлично подходят для этого, т.к. это дёшево в разработке, дёшево в производстве, энергоэффективно  - josef_polak16.09.2025 06:00- В дешевых БТ-наушниках (цена той же одноразовой дуйки) насыпано аж 3 штуки Cortex M4+BT (по одному в каком ухе и один в зарядном кейсе. Понятно, что там это полностью оправданная мощность, но цена в сухом остатке определяется размером серии и содержанием базовых минералов 
 
  - LinkToOS16.09.2025 06:00- Интересно, зачем в вейпе Cortex M0? - Cortex M0 сегодня это ширпотреб. Чип дешевый, менее 10 рублей оптом. А модель вейпа скорее всего не самая дешевая, и несколько рублей не решают. 
 Зачем там контроллер в принципе? Может затяжки считает, и ведет обратный отсчет. Производитель решил выделиться, и добавил уникальные функции, которых нет в стандартных вейповых ASIC.
  - Yuriy_krd16.09.2025 06:00- Если бы мне 30 лет назад сказали, что на обычном паяльнике (это же обычный нагреватель!) можно будет обновить прошивку, я бы этому товарищу вызвал бы психиатричку.  - isden16.09.2025 06:00- Я лично видел паяльную станцию родом из середины-конца 90-х с тем самым ППЗУ с окошком. 
  - MountainGoat16.09.2025 06:00- Я недавно прошивал старушке утюг. А то он падал из-за деления на ноль.  - AKimovd16.09.2025 06:00- Падал с гладильной доски.  - josef_polak16.09.2025 06:00- ...и при этом каждый раз множил себя на ноль. А однажды помножил кота и тот необратимо сквантовался в ящик в строгом соответствии с заветами Шрёдингера 
 
  - entze16.09.2025 06:00- Утюг падал и не отправлял пуш что он не выключен когда старушка выходила, а заходила ее внучка и жучка. 
 
  - hw_store16.09.2025 06:00- Ну, это же не обычный паяльник.  - randomsimplenumber16.09.2025 06:00- Принцип действия тот же что и 200 лет назад. Всего то нужно расплавить припой. Ничего необычного. Но с микроконтроллером удобнее, чем с медным топором. 
 
 
  - arthuru116.09.2025 06:00- Там дисплейчики бывают довольно навороченные, плюс надо слушать микрофон который в качестве датчика тяги  - muxa_ru16.09.2025 06:00- микрофон который в качестве датчика тяги - Реально?  - MountainGoat16.09.2025 06:00- Да. Сначала пытались использовать микроскопические анемометры, но у парнишки где-то в Америке он оторвался и парень его вдохнул и сильно пострадал. Тогда от них резко отказались. А датчики давления ненадёжно срабатывали.  - muxa_ru16.09.2025 06:00- Через пару поколений, в контроллер зашьют сотовый интернет и будет сеть мобильных микрофонов? 
  - isden16.09.2025 06:00- Плюс емкостные микрофоны сильно дешевле чем вот это вот все.  - MountainGoat16.09.2025 06:00- Крыльчатка и датчик холла тоже не страшат бюджет, но микрофон в итоге просто надёжнее. 
 
  - josef_polak16.09.2025 06:00- Тысяча чертей! С вэйпами значит сразу решили проблему вдыхания анемометров, а язычками губных гармошек блюзмены давятся до сих пор. Расскажите уже "Хохнеру" про микрофоны! 
 
 
 
  - ropblha16.09.2025 06:00- Согласен, явно из пушки по воробьям. тут бы хватило 8051/avr. Но видимо разработка дешевле обходится на армах 
 
 - domage16.09.2025 06:00 - Обязательный комментарий  - iamkisly16.09.2025 06:00- В некоторых вещах не стоит искать смысл, они делаются по принципу "потому что я могу"  - Viacheslav0116.09.2025 06:00- Скорее потому, что забавно ) - Я сам уже который месяц занимаюсь похожей, невообразимой, никому не нужной х..ой, но интересно лично мне очень ))) 
 
  - RubberJohny16.09.2025 06:00- Если человек может запустить тетрис на электронном термометре, значит он сможет всë. 
 
 - altervision16.09.2025 06:00- Запускать на всём Doom - слишком скучно. Веб-сервер - вот это другое дело! А с него уже браузерный Doom раздать ... 
 
           
 




















Keks650
Шикарно )
Осталось запитать его от картофелины
webself
Далеко не все наверняка поняли тему про картофелину ) а были же времена...
VT100
Лимон! Лимон забыли...
Grey83
GLaDOS от лимона не работала.