0. Что не так с DPS5005?

Это — первая статья из цикла, посвященного программируемому модулю питания DPS5005. Автором материала является швед Йохан Канфло (Johan Kanflo). Я всего лишь занимаюсь переводом его труда на русский язык. Материала много, материал интересный. Затрагиваются технологии STM32, Линукс, OpenOCD, Python.

Авторский материал находится тут:
https://johan.kanflo.com/hacking-the-dps5005/

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

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

Кроме того, в последнее время по жизни у меня пошли какие-то совершенно дурацкие трудности. И я, честно говоря, нахожусь в непростом положении. Поэтому я на всякий случай предупрежу: хоть я и буду прилагать все усилия, но я не могу обещать, что я смогу осилить перевод до конца.

Ладно. Поехали!

Не так давно я бродил по AliExpress в поисках программируемого источника питания и наткнулся на модуль DPS5005. Честно говоря, я сначала откинул этот 5005-ый поскольку это не был законченный (готовый) блок питания. Потом в Декабре 2016-го на портале hackday.com появилась статья http://hackaday.com/2016/12/08/absolute-power/, посвященная DPS5005. И после просмотра видеоролика из этой статьи

я решил, что я всё-таки должен получить этот модуль в свои руки.

Общее впечатление от модуля, в целом, было не плохое. Но, вот, программное обеспечение, зашитое в модуле, оказалось немного «кривовастеньким». Помимо информационной «захламлённости» экрана, этим модулем нельзя было управлять через последовательный канал (по wi-fi).

Рассматривая более внимательно «бутерброд» из его печатных плат, я заметил, что модуль построен на базе микроконтроллера STM32. А это обстоятельство довольно-таки не плохо отвечает моим ожиданиям — добрый знак!. Таким образом, я начал работу над проектом OpenDPS, целью которого является замена фирменной прошивки (stock firmware) на свободную (free firmware).

Вот, что должно получиться в конечном итоге:

Теперь изменённый модуль DPS5005 может управляться как от кнопок, так и через модуль wi-fi, который подключён к последовательному порту. Также заметьте, что информация с экрана сейчас считывается значительно легче.

Описание проекта разбито на три части, не считая этой. В первой части описывается реверс-инжиниринг фирменного ПО, зашитого в STM32. Эта часть может оказаться интересной для тех, кто занимается этими проблемами.

Вторая часть посвящена разработке свободного ПО OpenDPS.

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

Оставьте комментарий