понедельник, 21 июля 2014 г.

Ложка дёгтя в бочке freemobus

С помощью метода пристального гуглежа я пришёл к выводу, что самой распространённой имплементацией ModBus-стека для контроллеров является Freemodbus. Всё ж в ней здорово, наверное, но...

2006 год. Ориентация на Linux, Windows и различные микроконтроллеры. И туда же - гора кода на Си... в венгерской нотации. Уфф. И самое смешное и грустное одновременно - в именах функций та же штука.

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

UPD: А ещё местные мастера ухитрились наплодить кучу глобальных переменных, которые, к тому же, не описаны в документации (по крайней мере, я не нашёл). Ох. Кажется, это будет моим пособием по тому, как не надо писать код на Си. Это оказались слегка документированные пользовательские функции. Ладно-ладно. Но всё равно всё это навевает тоску. Надо будет сделать для этого обёртки-регистраторы с передачей указателя на функцию.

четверг, 17 июля 2014 г.

Высокоуровневая прослойка для AVR: реально ли?

Все, конечно же, знают про Arduino. О том, что она максимально проста и понятна даже для неискушённых в вопросах контроллеров программистов. Всё хорошо до тех пор, пока нет необходимости "копнуть глубже", то есть, залезть в сам механизм. Опять же, всё довольно ясно, если библиотека не использует периферию контроллера. Но как только вам вдруг понадобился таймер...

пятница, 11 июля 2014 г.

И немножко про обновления

Да, стоило только раз загрузить Windows на своём ноуте. Сразу отовсюду визг и писк, мол, обновляться хотим! Ладно, обновляйтесь, пойду чаю попью. Как это, ещё не готово? Чего вы там наобновляли на гигабайт? Хмм. Ну да, теперь ещё и не получится поиграть в steam, потому что у них на самом интересном месте упал сервер обновлений.

Ну и ладно, пойду делом заниматься. Перезагружаемся... что? Опять обновления? Ар-р-р...

Через десять минут наконец-то вижу загрузчик Debian. Ещё через минуту - десктоп KDE. О, доступны обновления. На здоровье, тут же куча посвежевшего софта, а ещё наконец-то убрали вот этот назойливый костыль. Устанавливайтесь, а я пока полез в код.

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

Конечно, иногда может не повезти, и придётся некоторое время разгребать последствия установки кривого пакета... но это уже совсем другая история.

HP LaserJet P1102 vs. CubieTruck: печатаем в Debian без hplip

Когда я покупал CubieTruck, я планировал сразу использовать его на всю катушку как домашний сервер для всего: печати, музыки, файлохранилища и так далее. Интересным аспектом настройки софта на нём является то, что архитектура отлична от привычной всем x86 (благо, большинство никсового софта в Debian портировано на ARM).

Принтер у меня стоит довольно простой: HP LaserJet Professional P1102, чем-то похожий внешне на легендарный LaserJet 1020.

До недавних пор всё это нагромождение работало практически безукоризненно. Но пару дней назад мои шаловливые ручки полезли чинить долгую печать больших PDF-файлов, что закончилось, увы, эпичным фейлом: печатать оно перестало совсем.

Несколько дней подряд я перековыривал cups, hplip и всё остальное. Дело уже шло к тому, чтобы сносить почти полностью настроенную операционку и поднимать всё заново. На такие жертвы ради принтера я не готов, поэтому сел внимательно разбираться.

И разобрался! Теперь сохраню ценные указания для грядущих поколений.

четверг, 10 июля 2014 г.

Не работает? Уже ночь? Не лезь - хуже будет!

Уже сотый раз себе напоминаю об этой простой истине. И сотый раз наступаю на те же грабли.

Ещё вчера я просто жаловался на то, что печать больших PDF-файлов с моего компьютера идёт непростительно медленно. И какая нелёгкая дёрнула меня лезть в конфиги принт-сервера?

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

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

пятница, 4 июля 2014 г.

Боремся с ВВ-фобией, или Приручаем ток в розетке

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

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

А что, если прикрутить ROS к "умному дому"?

ROS - это не только ценные библиотеки, которые могут пригодиться в робототехнике, но ещё и очень изящная и удобная среда обмена сообщениями. В общем-то, как мне кажется, ничто не ограничивает нас в том, чтобы использовать ROS не только в роботах.

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

А что, если...

Привет, мир!

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