Pull to refresh

Comments 50

Я видел такое, что вам, людям, и не снилось. Атакующие корабли, пылающие над Орионом; Лучи Си, разрезающие мрак у ворот Тангейзера. Все эти мгновения затеряются во времени, как... слёзы в дожде... Пришло время умирать.

Восемь лет назад, чтобы не "зашквариться" об Ардуино, я собирал под линуксом компилятор GGC с патчами для Tensilica Xtensa. Оптимизировал нашу прошивку, чтобы она полностью из RAM выполнялась, а не с флешки. Воевал с WiFi стеком, который цельнотянут с BSD. Эх, были времена...

Если АТ-команду существуют, должен же ими кто-то пользоваться

Обычно ими пользуются те, кто работает с такими железками как SIM900 и иже с ними. Ну или с железными диалап-модемами.

Или если так уже устроена и спроектирована система в которую внедряется "модем". В новых заработках не вижу особого смысла в сей абстракции, если только оно не должно отвечать каким-то строгим требованиям.

Это если зашквариться об Ардуино. Шутка. Для модемов типа sim800 есть замечательный компонент в esp-idf, который реализует PPP over serial. В Arduino ide, вроде, тоже можно использовать.

Понятно, что под ESP нашлось, но есп относительно молодая платформа, в то же время можно спаять простейший преобразователь уровня и воткнуть sim900 в com-порт 80486 компа и пообщаться в консоли. Даже смски отправлять. Или с AVR-а \PIC условного. Большинство сигнализаций (для зданий и помещений) именно так и устроены (те, которые ставят ЧОПы всякие).

не зашквариться об Arduino

Как говорится, вечер в хату, господа программисты. Кофе-брейк в радость, печенька в сладость.

Тогда "не оскоромиться". Аминь.

Зашквар. По моему вполне современное слово, без всякой уголовно-блатной окраски. Не только ли некоторые знают его происхождение.

Подозреваю, что в средние века переписчики книг в таком же духе о печатном станке отзывались. "Это что же теперь все кто хочешь книги читать смогу и грамоте учиться. Действительно, что же это делается!"

Мне нравится ваша аналогия. Действительно. Рукописные книги это - крутые иллюстрации (или нет, но все же), это - занятие для многих монахов, занятие прибыльное условному монастырю, опять же переписчика надо учить, и на выходе получаем каллиграфиста и художника в одном лице (или двух) - кроме переписи книг эти люди становятся грамотными специалистами. А станок - херак и в продакшн.

Но аналогия эта ложная. Ардуино - это как представьте дать людям из средневековья возможности самых навороченных сегодняшних или даже будущих LLM. Все, и картинки, сюжет и тексты будет генерировать она. А тебе достаточно скормить ей нужный промт. Возможно "заклинания" - это прообраз промта мечтателей того времени. "Эх, был бы я писателем, написал бы вот такую книгу, там вот это и вот то, а потом вот так, ух!". И вот заклинания такие люди ищут, собирают в сборники, пишут с их помощью книги...А потом удивляются, почему даже при самом навороченном промте их книги совершенно не хотят читать.

---передал вышенаписанное локальной нейронке "как ты видишь развитие этой истории дальше?"----

Затем нашелся упоротый чел, который настолько хотел стать писателем и написать книгу своей мечты, что писал промт 2 года. Но когда он его дописал, он не стал его отправлять LLM, а просто оформил в виде книги. И это стало бестселлером!

Нет эта аналогия работает не так. Раньше для книги отдельный специалист делал пергамент, переписчик каллиграфически писал текст, художник рисовал миниатюры, а переплетчик все это оформлял в красивый переплет из человеческой кожи. Все эти специалисты потратили годы на освоение своих ремесел, а на выходе получался предмет престижного потребления, который может себе заказать герцог или барон из тех, кто по богаче. А тут, кто-то взял и сделал дешевый букварь для крестьян так, что они теперь своими немытыми руками смеют кривенькие буквы на бересте царапать в меру своего разумения и так как им удобно в их конкретных условиях, а некоторые даже умудряются этот навык монетизировать. Разумеется, это вызывает раздражение у тех, кто чувствовал себя частью интеллектуальной элиты и кто видит, что оказывается не нужно тратить годы для того, что бы сделать, что-то подобное обычному результату их работы.

Лапша из if не читаема. Воспользовались бы switch-case вариантом.

Велосипедов полон код. Особенно доставило ваше "!0".

С комментариями переборщили, следует писать код так чтобы он был понятен с минимумом комментариев.

"Магических" констант в коде не должно быть, ваша переменная SostWiFi постоянно сравнивается с этими "магическими" константами.

Лапша из if не читаема. Воспользовались бы switch-case вариантом.

Не читаема? ну и не читайте! Я бы воспользовался switch-case, но мне нужен if.

Велосипедов полон код. Особенно доставило ваше "!0".

Некоторые пишут false-true, я предпочитаю 0 и !0, Меньше букв, больше смысла. В первом стандарте Си они и были так определены, привычка.

С комментариями переборщили, следует писать код так чтобы он был понятен с минимумом комментариев.

Кому следует? Последствия многократного код ревью и рефакторинга

"Магических" констант в коде не должно быть, ваша переменная SostWiFi постоянно сравнивается с этими "магическими" константами.

Это вы программистам на бейсике скажите, там в каждой строке магическая константа.

Вы очень болезненно отреагировали на мой комментарий. Я тоже на критику болезненно реагировал сразу после вуза.)

Если вы пишете для себя то пишите как вам удобно и как вам красиво. А если пишете для других людей, а опубликованная статья подразумевает, что вы написали этот код не только для себя, то пишите код так, чтобы другим людям было приятно его читать. А то получится, что вы "изобрели вечный двигатель открытого типа", но никто не смог в документации разобраться как он работает.

Касательно комментирования кода. Многие имена переменных совершенно ни о чем не говорят при первом взгляде, когда в голове еще нет контекста. Я бы даже предложил провести минификацию исходного кода, и меньше объема занимать будет, и читаемость не ухудшится.)

О магических константах - 42. Вы сразу же должны понять что это за константа такая.)

UFO landed and left these words here

если бы у рыбы была шерсть..

Если есть устройство, умеющее в команды модема..

UFO landed and left these words here

в заголовке же сказано, чтоб не зашкварится.

Зачем мне осваивать Ардуино?

У меня в стеке освоенные МК, с кучей наработок.

Лепить на ардуино сервер, лепить какой-то протокол для обмена данными между основным МК и ESP... Плодить слои абстракций, привязанных к конкретному устройству...

Уж лучше возьму готовое устройство WiFi-модем, напишу универсальную библиотеку и подключу к своей системе, в последствии и к другим системам. И буду счастлив.

Имхо, паять на плату модуль питания с Aliexpres это кратно больший "зашквар", чем Arduino.

Ни разу нет. Они там вылизаны, как яйца леопарда, если брать в местах с хорошими отзывами и долгим акком. А оптом вообще любое качество заранее заказать можно, от мусора до отличного.

Сделать свой дизайн питалова с первого раза без ошибок, даже по дш - это задача уровня "сеньор проектирования". Если человек по этой ветке работает в крупной компании и качает скилы, да, ему некошерно использовать модуль: экономика против, да и в целом это тупость. Если же это любитель или "китайский подвальчик" - бери модуль, если хочешь сделать красиво. Ну или скопируй его 1 в 1, если предполагается полностью автоматическая сборка. Не надо ходить по граблям.

Прекрасно. Мы увидели возможности ESP-шки. Но у меня остался один вопрос: ЗАЧЕМ?... Вот я сейчас достану из коробки одну из кучки 8266, подключу ее к своей рабочей системе... Чтобы ЧТО? Я, конечно, могу вспомнить AT-команды, которыми мучал свой старенький Zyxel, но этот Зухель уже давным давно в своем кремниевом раю...
А давайте на базе ESP-шки соберем Спектрум и будем в него шпилить с осознанием высоты своего величия... Или вернемся к DOS, телефонным модемам на 2400 и FIDO. Развернем эволюцию вспять и посрамим дедушку Дарвина!
Извините. Вырвалось прямо на клавиатуру.

А давайте на базе ESP-шки соберем Спектрум

Было уже, кстати:

Потому что на ESP8266 есть недорогой доступный WiFi-модем.

Когда возился с этим ESP, то насколько помню, то там была куча примеров с помощью которых запустил все что мне надо минут за 5...
Зачем эта портянка тут? Кто-то будет это использовать? Не думаю...

Емнип esp01 искаропки прошита как модем. т.е. если нужен модем с АТ командами - можно просто взять готовый. Где должен запускаться предложенный автором веб-сервер - на модеме, или на внешнем контроллере, я что-то не очень понял.

У автора веб-сервер крутится на внешнем контроллере, ESP используется как WiFi модуль, управляется АТ командами.

Мной таким же образом сделан MQTT клиент, с двумя вариантами беспроводной сети GSM или WiFi

Спасибо. Хоть кто-то прочитал статью.

это примерно как в анекдоте про того чудо-хирурга, который удалял гланды через анус... Чего б не сделать веб сервер на ESP и общаться с ним по уарту

2024 год - уже как 11 лет "професионналы" продложают хоронить Arduino.
...to be continued

Почему писать в Arduino IDE - зашквар (сам в свое время поднабравшись опыта перешел на AVR Studio и чистый C) - но это же просто набор макросов, а под капотом тот же avr-gcc? И что, всех кто пытается делать минимальные реализации Python/JS делать для AVR - сразу "под шконку и в петушиную масть"?

Ардуино это не зашквар. Это суперклей и синяя изолента мира железа/программирования. Вот прямо сейчас парой килобайт своего кода я завел связку ESP32 + EINK 7' - оно подписывается на mqtt топики устройств умного дома и показывает результат. Что-то считает. Сколько я такое делал бы без ардуино и модулей? Полгода? А с ардуино два вечера вместе с печатью корпуса. Да, бинарь весит полтора метра, а не пять килобайт, как хотелось бы гуру - но модули ESP32 настолько дешевые и мощные, что как бы пофиг на эту неоптимальность. Стабильность? Собрал весь умный дом на этих самых модулях - на многих аптайм уже по полгода... Разве что никаких болтающихся проводков, все паяю, прикручиваю, или заливаю пластиком, если нельзя закрепить нормально.

Так что всему свое место. Иногда нужно делать что-то дендрофекальным способом, и ничего плохого в этом нет. Лишь бы было понимание, где так можно, а где нет.

UFO landed and left these words here

Чет дорогие штуки

на алике за 9k рублей за 7 цветов в 7 дюймов и драйвером в комплекте - дорого?

UFO landed and left these words here

Главное чтобы старый планшет прожил эти полгода ;) Как у него с деградацией батареи и дисплея?

А хобби-:проект и не должен окупаться.

Висит леново и самсунг, уже больше года - полет нормальный. Брал их уже столетними б\у, смотрел только на внешний вид и версию андроида. Самсунг олед, но ничего за год не выгорело... Батарею вообще можно снять, заменив подходящим ионистором, чтобы при мигании света планшет не вырубался.

UFO landed and left these words here

7 дюймов, черно-красные. На авито накопал дохлые электронные ценники из какого-то супермаркета, но экраны в них живые. Плюс экраны ровно те, которые подходят под либу для esp32. Повезло.

Старые планшеты 2 штуки использую как пульты управления, тоже взял по тыще каждый, перешил на AOSP, сделал лончером openhab и повесил на стену - уже год как идеально. Но в спальню, например, вешать планшет плохая идея - он светит сильно очень. Там для показометра eink идеально подходит.

UFO landed and left these words here

Харбрардунинодетект дает отрицательные результаты. Не все потеряно!

Грешен. Занимался такой же херью. Чтобы не связываться с ардуиной.

Изгалялся с AT командами и отловом состояния неонки внутре родной прошивки от Экспресиф. Исплевался.

А потом перешел на framework = arduino в platformio. И забыл как страшный сон и AT гемморой, и заморочки Arduino ide

platformio ништяк. В нем и Arduino core не зашкварно трогать за хидеры.

Сначала подумал что у меня в новостях всплыл какой то старенький проект пяти - семи летней давности. Потом смотрю на дату...)) Ну хз, по мне так AT команды избыточны да и теряется тонкая настройка модулей.
Потом на те же модулях можно например поднять модбас - разгрузив основной модуль или еще какой протокол обмена. Да и при желании на весь проект можно использовать одну ESP-ху без посредников.

Что по статье - в целом не плохо, но немного устарело.))

Sign up to leave a comment.

Articles