Кстати, уже после публикации этой стати я взялся за реализацию "мягкого пера". Библиотека с его поддержкой уже зарелизена, свежий репозиторй переведён на использование мягкого пера, надписи стали заметно более различимы. Шрифт тоже немного исправлен под правила движения рукой, некоторые буквы получили чуть более раздвинутые элементы (ш,m). В общем, даже после этой публикации я что-то не смог сходу остановиться...
ощущение, что статью написать было дольше, чем прошивку.
Это, кстати, ложное ощущение. Техническая заметка о моей борьбе с DSI дисплеем -- 1200 строк. С массой таблиц, замеров, перебора стратегий... Написать часы было действительно не сложно -- у меня все составляющие были уже раньше. Но эти "кирпичики" у меня тоже ушло очень много сил и времени.
Статья реально долго писалась. При этом "часы", собственно, просто демо-проект по реализации разных идей, которые тоже тут же допрограммировались... Это была работа над тремя проектами одновременно, плюс статья. DGX, HW-Fonts и, собственно, часы.
Статья получилась очень большой и я спросил чатжпт, как поступили бы марвелл, чтобы привлечь аудиторию. Он предложил разбить статью на три части:
ESP32: Начало. Герой обнаруживает, что обычные буквы способны менять форму.
ESP32: Возвращение Безье. Кривые вступают в борьбу с пикселями. Судьба шрифта висит на волоске.
ESP32: Последний дисплей. DSI. P4. 1024 × 600. Всё, что было раньше, вело к этому моменту.
Для эксперимента купил медный посеребрённый провод, но пока так и не провёл эксперимент — в моих условиях приём сигнала оказался очень даже хорошим и так. Но если бы понадобилось, то место в корпусе под это есть, можно было бы улучшить приём.
Эксперимент это не подтвердил. пробовал вместо встроенной керамической антенны посеребрённую медь, пытался по долям миллиметра подстраиваться под длину четверти волны 2.4ГГц, пытался по разному это припаивать -- бесполезно. Спросил знакомых опытных электронщиков, сказали то же самое, тоже пробовали тот же рецепт из интернета, где автору удавалось заметно улучшить приём, правда там была заведомо плохо разведённая плата, и тоже не получилось ничего. Так что вывод такой - берите плату с заведомо хорошей разводкой антенны, как по даташиту и будет всё хорошо. А лучше не будет.
Всё ещё непонятно нафига козе баян. MMU не несёт большой пользы для FreeRTOS, Linux не является основной ОС для ESP32-S31. Скорее всего, "проба пера", что пригодится в последующих чипах
Если нужен человек решающий сложную задачу - есть куча мидлов/синьоров без работы, если задача рутинная - подписка на нейросетку за 20$ баксов (которая умнее джуна).
Вы давно пробовали? 20 баксов нынче хватит на пару часов только. Я не так давно делал один проект. Подписку GitHub Copilot Pro+ на 39 баксов я сжёг за неделю на получение первого интерфейса, чтобы был минимально необходимый функционал. Затем я ждал неделю пока наступит новый месяц, проапгрейдил подписку до Макс+. Всю эту неделю я с бесплатными кодексом и клодом составлял туду для дальнейшего функционала, что необходимо добавить и как именно. В результате 1 сентября за 7 часов я добавил весь функционал - сжёг 60% подписки за первый же день. Ещё пару дней вылавливал баги более умными моделями, доведя расход до 75%. Ну то есть условно можно считать что нынешний расход на нейронки $10/h. Это всё ещё дешевле, чем программист, но уже далеко не "20 баксов за месяц". И это всё ещё не цена, которая окупила бы весь сервис, я предвижу повышение в несколько раз в ближайшем будущем.
Сейчас правда esp32 - это как Pentium MMX по мощности
Я честно говоря не знаю с чем его можно из тех лет сравнить, всё-таки совсем разные предназначения. И экраны на разных принципах. Чистая вычислительная мощность это одно, но оборудование вокруг очень много значит. Для меня перевес в сторону IBM PC наступил после 286/VGA, до этого я считал Yamaha MSX-2 просто лучше.
товарищ даже сделал некое подобие векторного графического редактора со своим форматом хранения
Я тоже сделал: hw-fonts, ничего устанавливать не надо, только хтмл файл открыть.
а мне карму уничтожают за грубое общение, ставят минусы
Не смотря на то, что мне не понравилась форма, в которой ставились вопросы, я сформулировал ответ какой смог и минус не ставил.
Не пробовали оптимизировать код под более слабые микроконтроллеры?
Я начинал свой путь в микроконтроллеры с ардуино уно, но когда понадобилась связь - перешёл на ESP32. Одно время девкит платы можно было с алиэкспресса чуть не по баксу за штуку брать, сейчас подороже, но они всё так же дешёвые. Поэтому, мотивации на другие контроллеры у меня пока мало. Есть идея для NRF из-за его поддержки ANT+, но пока не было времени.
Я, честно говоря, не знаю что ответить на Ваши вопросы. Мне нравится в свободное время программировать микроконтроллеры. Мне стало интересно сделать визуальный эффект, я его сделал и рассказал как, поделился приёмами оптимизации. Визуальные эффекты на микроконтроллерах всё-таки не так чтобы "вполне себе обычные задачи". Делать что-либо подобное на обычном ПК мне не интересно. "Обычного ПК" и серверов мне хватает на работе.
Я давно уже считаю себя "хобби-программистом-графоманом", просто иногда не только на гитхаб выкладываю, но и пытаюсь некоторую обратную связь получить публикуя статьи.
Возможное практическое применение эффекта я оставляю читателям. Эффекты из прошлых своих статей я применял в других проектах.
Прочитал из-за того, что "про Perl". В реальности, так и не понял про что, кроме как "теперь мы счастливы с Vue/Nuxt". Я лично вариантов действий как уйти от ТТ вижу куда больше одного и в действительности, проще всего было начать с перехода на Template::Alloy, который умеет в язык шаблонов ТТ, но при этом компилирует его во внутренний формат или в Perl, который исполняет его намного быстрее. Или перейти на Text::Xslate, который вообще супер быстрый.
Так или иначе, шаблон просто принимает данные, которые затем использует для генерации содержания. Это просто один из способов интерпретации данных. Другой способ, который пользуется теми же данными - JSON, который можно отдавать на фронт. Если всё равно переходить на Vue, то можно было аккуратно выделить бэк, который формирует данные, а затем уже Vue/Nuxt их получают и интерпретируют. Отказываться от Perl? Ну, если бизнесс видит в этом выгоду, то можно. Но, вообще, это опционально. Я не думаю, что переход с Perl на, извините, Python/Django хоть как-то ускорил бэк, есть большая вероятность, что наоборот, стал кушать больше и ворочаться медленнее.
Прочитал и понял. Но выбрал для комментирования ту часть, которая интересна лично мне. Вы ведь тоже в ответе мне сконцентрировались только на "неприменимости BLE" лично в Вашем случае, не обращая внимания на остальное содержание комментария.
Я тоже давно ломаю голову как лучше всего конфигурировать новые устройства. Моя последняя попытка описана в моей последней статье. Если кратко, то для конфигурирования я предполагаю лучше использовать BLE, поскольку поднимать веб-сервер на статичном 192.168.4.1:80 как-то не гибко выглядит. Например, что делать, если включились два устройства одновременно? Но, всё зависит от обстоятельств. Один из вариантов -- использовать MAC-адрес для вычисления айпи и как-то его демонстрировать. Например, на экране. Следующий вопрос: каким приложением конфигурировать? Для BLE лучше всего со смартфона, для веб-интерфейса можно откуда угодно. Даже просто указать где находится MQTT -- нужна начальная точка конфигурации. Я для себя пока что выбрал BLE (хотя в моём подходе так же можно и Soft AP) и стандартные приложения от Espressif, которые уже есть в App/Play Store: ESP BLE/SoftAP Provisioning. С их помощью настраивается начальный WiFi, а остальное уже через веб-интерфейс.
«Наши сотрудники обычно работают по 12 часов в день и приходят в офис шесть дней в неделю. Мы не отмечаем время прихода и ухода, и никого не заставляем работать здесь. Мы отбираем людей, которые хотят работать в такой среде. Многие из них — бывшие спортсмены первого дивизиона, предприниматели или люди, которые всегда стремились к очень высоким результатам», — говорит соучредитель.
Я один заметил этот абзац? Спортсмены-программисты без личной жизни...
Ну раз дело так серьёзно, можно добавить в настройки галочку "отключить автокалибровку". Дело в принципе не сложное совсем: дописать хтмл, добавить новый формат конфига и обработку автомиграции, обработку чекбокса, и так далее. Мелочи.
Кстати, уже после публикации этой стати я взялся за реализацию "мягкого пера". Библиотека с его поддержкой уже зарелизена, свежий репозиторй переведён на использование мягкого пера, надписи стали заметно более различимы. Шрифт тоже немного исправлен под правила движения рукой, некоторые буквы получили чуть более раздвинутые элементы (ш,m). В общем, даже после этой публикации я что-то не смог сходу остановиться...
Это, кстати, ложное ощущение. Техническая заметка о моей борьбе с DSI дисплеем -- 1200 строк. С массой таблиц, замеров, перебора стратегий... Написать часы было действительно не сложно -- у меня все составляющие были уже раньше. Но эти "кирпичики" у меня тоже ушло очень много сил и времени.
Вы хотите плавности? Их есть у меня:
https://youtu.be/nS5H00IZi-8
Статья реально долго писалась. При этом "часы", собственно, просто демо-проект по реализации разных идей, которые тоже тут же допрограммировались... Это была работа над тремя проектами одновременно, плюс статья. DGX, HW-Fonts и, собственно, часы.
Статья получилась очень большой и я спросил чатжпт, как поступили бы марвелл, чтобы привлечь аудиторию. Он предложил разбить статью на три части:
ESP32: Начало. Герой обнаруживает, что обычные буквы способны менять форму.
ESP32: Возвращение Безье. Кривые вступают в борьбу с пикселями. Судьба шрифта висит на волоске.
ESP32: Последний дисплей. DSI. P4. 1024 × 600. Всё, что было раньше, вело к этому моменту.
Кстати, памятка на будущее:
Эксперимент это не подтвердил. пробовал вместо встроенной керамической антенны посеребрённую медь, пытался по долям миллиметра подстраиваться под длину четверти волны 2.4ГГц, пытался по разному это припаивать -- бесполезно. Спросил знакомых опытных электронщиков, сказали то же самое, тоже пробовали тот же рецепт из интернета, где автору удавалось заметно улучшить приём, правда там была заведомо плохо разведённая плата, и тоже не получилось ничего. Так что вывод такой - берите плату с заведомо хорошей разводкой антенны, как по даташиту и будет всё хорошо. А лучше не будет.
Всё ещё непонятно нафига козе баян. MMU не несёт большой пользы для FreeRTOS, Linux не является основной ОС для ESP32-S31. Скорее всего, "проба пера", что пригодится в последующих чипах
Вы давно пробовали? 20 баксов нынче хватит на пару часов только. Я не так давно делал один проект. Подписку GitHub Copilot Pro+ на 39 баксов я сжёг за неделю на получение первого интерфейса, чтобы был минимально необходимый функционал. Затем я ждал неделю пока наступит новый месяц, проапгрейдил подписку до Макс+. Всю эту неделю я с бесплатными кодексом и клодом составлял туду для дальнейшего функционала, что необходимо добавить и как именно. В результате 1 сентября за 7 часов я добавил весь функционал - сжёг 60% подписки за первый же день. Ещё пару дней вылавливал баги более умными моделями, доведя расход до 75%. Ну то есть условно можно считать что нынешний расход на нейронки $10/h. Это всё ещё дешевле, чем программист, но уже далеко не "20 баксов за месяц". И это всё ещё не цена, которая окупила бы весь сервис, я предвижу повышение в несколько раз в ближайшем будущем.
Я честно говоря не знаю с чем его можно из тех лет сравнить, всё-таки совсем разные предназначения. И экраны на разных принципах. Чистая вычислительная мощность это одно, но оборудование вокруг очень много значит. Для меня перевес в сторону IBM PC наступил после 286/VGA, до этого я считал Yamaha MSX-2 просто лучше.
Я тоже сделал: hw-fonts, ничего устанавливать не надо, только хтмл файл открыть.
Не смотря на то, что мне не понравилась форма, в которой ставились вопросы, я сформулировал ответ какой смог и минус не ставил.
Я начинал свой путь в микроконтроллеры с ардуино уно, но когда понадобилась связь - перешёл на ESP32. Одно время девкит платы можно было с алиэкспресса чуть не по баксу за штуку брать, сейчас подороже, но они всё так же дешёвые. Поэтому, мотивации на другие контроллеры у меня пока мало. Есть идея для NRF из-за его поддержки ANT+, но пока не было времени.
Я, честно говоря, не знаю что ответить на Ваши вопросы. Мне нравится в свободное время программировать микроконтроллеры. Мне стало интересно сделать визуальный эффект, я его сделал и рассказал как, поделился приёмами оптимизации. Визуальные эффекты на микроконтроллерах всё-таки не так чтобы "вполне себе обычные задачи". Делать что-либо подобное на обычном ПК мне не интересно. "Обычного ПК" и серверов мне хватает на работе.
Я давно уже считаю себя "хобби-программистом-графоманом", просто иногда не только на гитхаб выкладываю, но и пытаюсь некоторую обратную связь получить публикуя статьи.
Возможное практическое применение эффекта я оставляю читателям. Эффекты из прошлых своих статей я применял в других проектах.
Прочитал из-за того, что "про Perl". В реальности, так и не понял про что, кроме как "теперь мы счастливы с Vue/Nuxt". Я лично вариантов действий как уйти от ТТ вижу куда больше одного и в действительности, проще всего было начать с перехода на Template::Alloy, который умеет в язык шаблонов ТТ, но при этом компилирует его во внутренний формат или в Perl, который исполняет его намного быстрее. Или перейти на Text::Xslate, который вообще супер быстрый.
Так или иначе, шаблон просто принимает данные, которые затем использует для генерации содержания. Это просто один из способов интерпретации данных. Другой способ, который пользуется теми же данными - JSON, который можно отдавать на фронт. Если всё равно переходить на Vue, то можно было аккуратно выделить бэк, который формирует данные, а затем уже Vue/Nuxt их получают и интерпретируют. Отказываться от Perl? Ну, если бизнесс видит в этом выгоду, то можно. Но, вообще, это опционально. Я не думаю, что переход с Perl на, извините, Python/Django хоть как-то ускорил бэк, есть большая вероятность, что наоборот, стал кушать больше и ворочаться медленнее.
Прочитал и понял. Но выбрал для комментирования ту часть, которая интересна лично мне. Вы ведь тоже в ответе мне сконцентрировались только на "неприменимости BLE" лично в Вашем случае, не обращая внимания на остальное содержание комментария.
Да, я знаю. Я не совсем понимаю смысл 8266, когда "за те же деньги" можно брать 32-c3. Ну и я добавил вариант SoftAP
Как и Вы мало сделаете удалённо на
192.168.4.1:80Это можно решить массой способов, после конфигурации вайфай. Мой комментарий именно о самой первой инициации прошивки.
Я тоже давно ломаю голову как лучше всего конфигурировать новые устройства. Моя последняя попытка описана в моей последней статье. Если кратко, то для конфигурирования я предполагаю лучше использовать BLE, поскольку поднимать веб-сервер на статичном
192.168.4.1:80как-то не гибко выглядит. Например, что делать, если включились два устройства одновременно? Но, всё зависит от обстоятельств. Один из вариантов -- использовать MAC-адрес для вычисления айпи и как-то его демонстрировать. Например, на экране. Следующий вопрос: каким приложением конфигурировать? Для BLE лучше всего со смартфона, для веб-интерфейса можно откуда угодно. Даже просто указать где находится MQTT -- нужна начальная точка конфигурации. Я для себя пока что выбрал BLE (хотя в моём подходе так же можно и Soft AP) и стандартные приложения от Espressif, которые уже есть в App/Play Store: ESP BLE/SoftAP Provisioning. С их помощью настраивается начальный WiFi, а остальное уже через веб-интерфейс.А мне нравится pinia
«Наши сотрудники обычно работают по 12 часов в день и приходят в офис шесть дней в неделю. Мы не отмечаем время прихода и ухода, и никого не заставляем работать здесь. Мы отбираем людей, которые хотят работать в такой среде. Многие из них — бывшие спортсмены первого дивизиона, предприниматели или люди, которые всегда стремились к очень высоким результатам», — говорит соучредитель.
Я один заметил этот абзац? Спортсмены-программисты без личной жизни...
Интересный у тебя профиль. Особенно про драйвер SCD4x...
Ну раз дело так серьёзно, можно добавить в настройки галочку "отключить автокалибровку". Дело в принципе не сложное совсем: дописать хтмл, добавить новый формат конфига и обработку автомиграции, обработку чекбокса, и так далее. Мелочи.
+-100 ппм обычно не играют роли, у этого сенсора считается хорошая точность показаний для "гражданского" применения. Автокалибровку можно отключить:
scd4x_perform_forced_recalibration()Forced recalibration to known CO2 referencescd4x_set_automatic_self_calibration()Enable/disable ASCПишут "фотоакустический". Спасибо, исправил. Я статью эн раз вычитывал, знакомые читали, "помошники", а всё равно ещё потом много правок внёс :)