LINUX.ORG.RU

Сообщения Vit

 

platform.io под stm32. Куда выложить и как патчить firmware?

Форум — Development

На platform.io пишется прошивка под stm32f103c8t6. Внутри есть емулятор EEPROM (стандартный append-only log на пару секторов FLASH).

Мне хочется сделать вебню, которая позволит юзеру поправить дефолтные настройки, подкрутив значения EEPROM (генерим веб-страничку прям с прошивкой внутри, она показывает формочку, патчит, и дает из себя бинарник скачать, без всякого сервера). Вопросы:

1. Как мне узнать адреса секторов FLASH, где лежит контент EEPROM? Сканировать по уникальным байтам - так себе идея :).

2. Прошивки собираются в подкаталогах `.poienvs`, которые заигнорены. В целом одобряю, но у меня всего один таргет, и я хочу готовый бинарник публиковать в репе в папке `/firmware`, чтобы юзерам не надо было ничего компилять. И чтобы platform.io мог его подхватить для аплоада. Как бы это покорректнее сделать?

 platform.io,

Vit
()

Hetzner ку-ку (24.05.2018)

Форум — Talks

https://www.hetzner-status.de/en.html

На хетцнере какой-то глобальный факап с питанием и в 3 сараях серверов что-то капитально повышибало. Кого еще задело? У меня 1 самый нужный сервер с 11 утра тю-тю и до сих пор в нефритовом сосуде.

PS. Уходить пока не собираюсь, это какой-то совсем большой форс-мажор, каких за 10 последних лет точно не было.

 ,

Vit
()

Расскажите как и чем нынче паяют с помощью фена

Форум — Talks

Поигрался тут с паяльным феном, очень понравился результат пайки. Есть вопросы:

- Надо ли на фен надевать насадку, или лучше без нее учиться платы запаивать? Мне показалось с насадкой удобнее - виднее куда дует, но возможно это из-за отсутствия практики.

- Стоит ли использовать Sn42/Bi58 пасту (T плавления = 130С)? Нигде не нашел про недостатки таких припоев.

- Какую температуру фена лучше выставлять, чтобы не повредить компоненты? Пока пробовал на 250С, SnPb пастой. Показалось что как-то неспешно нагревается.

- https://youtu.be/mDViWoll_eo?t=55s - вот тут чел запаивает феном пластиковую кнопку. Это как вообще? Почему пластик не течет?

 

Vit
()

rust для embedded - почти готов

Форум — Talks

https://github.com/rust-lang-nursery/embedded-wg/issues

Не так давно задавался вопросом, готов ли раст к программированию микроконтроллеров. Прошло всего 2 месяца, но изменилось очень много.

- Сделали embedded workgroup, и поставили четкую цель закрыть все косяки к выпуску rust 2018 edition.
- В трекере EW запротоколировали все хвосты
- Начали размечать книжку по embedded rust.
- В RTFM запланировали к лету добавить виртуальные таски, эвенты и прочий сахар, чтобы было не хуже классических RTOS. RTFM вообще интересная концепция, для простеньких систем подходящая идеально (когда добавят что запланировали)
- Из кучи хвостов, из-за которых эмбеды не компилировались на stable, закрыли все кроме одного (он в процессе).
- Я не понял, в каком состоянии генераторы, но макросы await! есть, и вроде все это должно нормально приземлиться в stable к edition 2018.

В общем, теперь есть конкретное место, где можно наблюдать прогресс, и сам прогресс очень радует.

Также стоит отметить, что нужен не только язык, но и библиотеки. Из того что пригорает у меня лично

- заметный пробел по гуям
- нема клавиатурной абстракции для фильтрации дребезга и приворачивания енкодеров вроде EC11 (по крайней мере мне так показалось)

 ,

Vit
()

Посоветуйте графических библиотек для embedded

Форум — Development

Сейчас в расте туго с графическими библиотеками для микроконтроллеров, и я пытаюсь систематизировать, что надо написать. Подскажите пожалуйста, что есть в природе, что можно было бы взять за основу. В первую очередь, под мелкие дисплеи типа OLED 128*64 spi/i2c. Интересуют эти направления:

1. Что-то низкоуровневое, типа u8g2 (рисование текстов и базовых примитивов).
2. Рисование менюшек
3. Рисование графиков (особо не надо, но посмотрел бы что-то простенькое)

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

 ,

Vit
()

Посоветуйте на чем делать вебсервер для esp8266, чтобы потом легко прошивался

Форум — Development

Возможно дурацкий вопрос... Мне хочется сделать для esp8266 вебсервер, который бы легко заливался из командной строки (чтобы потом простые юзеры осилили). Хотя все кажется простым, на практике всплывает следующее:

- надо прошить «операционку» (если есть)
- надо прошить сам код (либо полный образ, либо аплет)
- надо залить файлы вебсервера (html/js)

Как ни странно, файловую систему почему-то везде заливают отдельно (либо я не вкурил как ее вмержить в общий образ).

Пока из самого простого нашел Mongoose OS. Там есть утилита «mos» под все операционки, которая умеет делать все операции. Какие еще варианты? Главный критерий - чтобы потом юзеру было не сложно запрограммировать.

 

Vit
()

Проверьте схемы и разводку самоделок пожалуйста

Форум — Development

Давно не занимался электроникой, а с stm32 вообще дел не имел. Посмотрите пожалуйста свежим взглядом, не накосячил ли чего в схеме и разводке.

1. Регуль для бормашинки (со стабилизацией оборотов) - https://easyeda.com/speed/AC_speed_control_for_grinder-55eba57594ea46788b39b1...

2. Компактный девайс для пайки волной (на инфракрасном нагревателе) - https://easyeda.com/reflow/Mini-reflow-soldering-heater

 ,

Vit
()

Чем смотреть дебажный выхлоп с кристалла в линупсе?

Форум — Development

Хочется просто смотреть результаты printf() на компе, без навернутой IDE, отладки и т.п. Родная приблуда только под венду, опенсорсная байда для китайского St-Link не умеет SWO (только прошивает).

Посоветуйте, что оптимальнее купить + поставить, чтобы заработало. Только без доработки плат, как в разных статьях пишут. По железу пока нарыл такие штуки:

- Альтернативный китайский программатор - больше сигналов на разъеме, но не знаю, хватит или нет.
- Точная (вроде) копия оригинального ST-Link
- J-Link - вроде закос под Onboard J-Link, по идее поддерживает RTT (хотя он кажется медленнее SWO).
- J-Link v8 - что-то еще, фик знает какого качества

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

 

Vit
()

Посоветуйте IDE + билиотеки под STM32 на C/C++

Форум — Development

Я в курсе про CubeMX, но это только драйверы, а у проекта чуть больше задач:

- пакетный менеджер для библиотек (чтобы не копировать ручками)
- библиотеки uart, LCD (хз, как выбрать качественные и поддерживаемые)
- какое-то совсем примитивное подобие async/await и эвентов, можно через «псевдо-rtos». Грубо говоря, чтобы проверка состояния кнопки с контролем дребезга выглядела как линейный код, а не FSM.
- IDE (?).

С виду platform.io - «прям то што хотел». Но когда начал копать - запутался в библиотеках и погиб. Там протухшая свалка какая-то. Искать актуальные версии терпения не хватило, пошел плакаться сюда :)

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

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

 

Vit
()

rust вообще готов для embedded?

Форум — Development

http://blog.japaric.io/embedded-rust-in-2018/

Кто-нибудь может по-простому объяснить, стоит ли развлекаться с переписыванием мелкого проекта на rust или нет? Все проекты - регуляторы для моторчиков на stm32f103c8t6. В принципе, вся память выделяется заранее, поэтому обычные плюсы тоже сойдут.

Rust хотелось попробовать потому что без приключений жить скучно, и потому что там есть пакетный менеджер. Но в принципе под плюсы пакетопроблемы решаются через platform.io. В rust смутило, что похоже надо будет ставить nightly builds. КМК это остановит желающих слать патчи. Есть подозрения, что жизнь может стать продвинутой, но весьма неудобной :).

Кто-нибудь уже делал опенсорсную эмбедщину на расте? Пора на раст валить или не выделываться?

 , ,

Vit
()

Кажется в хроме канвас доломали

Форум — Talks

https://jsfiddle.net/uyczfLdk/21/

При нажатии на resize лиса работает, а хром и савари отжирают памяти сколько могут и потом пендык.

В ресайзилке точно зацикливаться нечему (я с тем кодом слегка знаком, гы). Похоже что-то с записью в канвасы размером меньше 6х6.

 

Vit
()

Кто хочет покодить под ESP8266 на lua/js?

Форум — Job

https://easyeda.com/speed

Нужно запрограммировать модуль конфигуривания регуляторов скорости через WiFi. Это Wemos D1 mini.

Как оно должно работать:

- Читается конфигурация через serial port, в формате JSON Form.
- Наружу выставляется точка доступа с вебсервером.
- Юзер заходит с любого девайса и видит форму, которая сгенерирована на основе конфигурации.
- После заполнения и отправки формы девайс генерит пачку команд в serial port.

Дополнительные нюансы:

- Нужно привернуть captive portal для редиректа на нужную страницу
- Нужно отделить содержимое веб-страниц, чтобы можно было отдельно разрабатывать html/js и потом включить файлы в прошивку
- Команды имеют формат modbus («В ячейку A записать значение B»)
- Название точки доступа и пароль надо хранить отдельно, чтобы их можно было подпатчить без пересборки прошивки (я потом сделаю веб-страничку для кастомизации)

Особых сложностей вроде не предвидится:

- Плата Wemos D1 Mini полностью независима от остальных частей проекта и шьется по USB
- Все модули есть либо в виде встроенных бибилиотек (access point, web server, dns), либо в виде отдельных проектов (captive portal)
- С вебнёй готов помочь (чтобы формочки красиво показывались)

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

Кто хочет поучаствовать - пишите на vitaly@rcdesign.ru

 , ,

Vit
()

Посоветуйте формат для описания форм

Форум — Web-development

Нужно сделать приблуду на ESP8266 (плата Wemos D1 mini), которая бы по JSON-конфигу генерился формочку, и при отправке потом генерила пачку команд в UART.

Вопрос чисто архитектурный - откуда можно потырить готовый формат, который позволял бы описывать и валидировать формы? Надо что-то такое:

- Поля для ввода чисел, с ограничением по диапазону
- Чекбоксы
- Селектбоксы

Я в курсе про JSON Schema, но его явно мало чтобы описывать тексты к полям и как потом сгенерить команду (приклеивать к описанию переменных метаданные). Лисапедить можно, но не хочется. Может есть что-то готовое?

 

Vit
()

google's woff2 -> node.js webassembly

Форум — Web-development

https://github.com/fontello/wawoff2

Иногда так складывается, что код написан на сишечке, и переписывать его на жыэс не рационально. Было интересно разобраться, как лепить в ноде подобие бинарных биндингов без необходимости пересборки. То есть, через webassembly.

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

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

Как-то так.

 

Vit
()

Каким «дисплеем» можно прикинуться по USB, без драйверов?

Форум — Development

Есть девайс, регулятор скорости для мотора (на самом деле - несколько разных девайсов под разные типы моторов). Нужно как-то реализовать возможность настройки (значения крайних положений ручки скорости и т.п.). Т.к. операция одноразовая, то городить кастомные клавиатуры и т.п. очень не хочется.

Надо чтобы работало на разнообразных операционках (девайсах?) без гимора для пользователя (с установкой драйверов и т.п.).

Пока пришли в голову такие варианты:

- Использовать внешний комп, прикинуться по USB COM-портом и присоединяться эмулятором терминала.
- Прицепить по UART ESP8266 (nodemcu mini за 3 бакса) и сделать на нем веб-сервер c конфигуратором (по окончании настройки отцепить девайс, чтобы не светил вафлей)
- Прикинуться по USB сетевой картой, которая видит сетку с вебсервером, как yota-вские модемы.

Какие еще возможны современные хипстерские варианты?

 , ,

Vit
()

Кто пробовал китайские аналоги STM32?

Форум — Development

https://lcsc.com/product-detail/GigaDevice_GD32F103C8T6_C77994.html

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

Я из внушающего доверия пока нашел только https://olimex.wordpress.com/2015/12/21/gd32f103rbt6-the-stm32-pin-to-pin-com...

Вопрос в студию, почему все еще не свалили с ST на гигадевайсы? Цена очень вкусная. Даже в «дорогом» LCSC всего полтора бакса (на али по баксу).

 gd32,

Vit
()

Есть ли альтернативы Nextion?

Форум — Development

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

Для этого прекрасно подходят дисплеи Nextion, но там софт не опенсорсный и некоторые заморочки со шрифтами.

Есть ли у Nextion альтернативы? Опенсорсные. Либо хотя бы с разработкой из браузера, как в easyeda.

 , nextion

Vit
()

Посоветуйте как прокинуть периферию между микроконтроллерами.

Форум — Development

Нужно сделать оптоизоляцию на входах управления в регуляторе оборотов. Если развязывать высоковольстную часть в лоб - будет до фига оптронов и усилителей.

Вроде получается намного проще поставить 2 микроконтроллера с отдельными питаниями, и соединить цифровым каналом (тогда надо всего 2 опторазвязки). Один контроллер на силовую часть, и второй на ручки-кнопочки. Звучит странно, но проще и по деталям и по размерам.

А теперь вопрос - есть ли для C и/или Rust решения, чтобы прозрачно прокидывать пины, АЦП и UART в подобных связках? То есть, чтобы дергать в коде регулятора HAL и не заморачиваться, что данные на самом деле берутся из буфера, куда они прилетели от другого микроконтроллера.

Можно конечно на коленке это все накостылять, но что-то мне подсказывает, что подобное должны были давно сделать и как следует отладить.

 , ,

Vit
()

Железячники есть? Помогите нарисовать схему регулятора DC мотора 220v

Форум — General

Я сильно отстал от современной элементной базы, и не силен в высоковольтных цепях. Кто-нибудь может нарисовать схему регулятора оборотов для щеточного двигателя с магнитами, от постоянного напряжения 220v (да, я не перепутал, мотор высоковольтный)?

Вот под такие хотелки:

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

Ну или скажите где какие-нибудь app notes на эту тему можно посмотреть.

 привод

Vit
()

Покритикуйте коробку для выключателя 220в к дельта-принтеру

Форум — General

https://www.thingiverse.com/thing:2671454

Попытался нарисовать симпатичный бокс для выключателя с гнездом 220 вольт. Посмотрите пожалуйста, что еще надо учесть.

Расчитывал что печать будет со сплошным заполнением, стенки сделал везде 3мм. Внизу крышка лежит на 1мм выступах, зазор 0.1мм с каждой стороны. Решил не извращаться с печатью без поддержек, т.к. без них нормального вида трудно добиться, да и выламывать не много.

Насчет зазоров и стенок не уверен - не печатал ни разу. Можно еще сделать трапецию на нижней крышке, чтобы поддержек не было, но не знаю стоит ли.

Из готовых моделей было только это страховидло https://www.thingiverse.com/thing:1000217, поэтому решил налисапедить свое.

 ,

Vit
()

RSS подписка на новые темы