­
­

2014/08/27_prog - а вот вопросов пара

топ 100 блогов Леонид Каганов: блог27.08.2014

Друзья, нужен ваш совет!

1. Ситуация: Линукс DD-WRT на роутере ASUS, в него воткнуты несколько USB-устройств: пара звуковых карт, флешка, внешний диск и платка Ардуино. Звуковые карты и флешка ведут себя отлично. А внешний диск и Ардуино в течение суток пытаются перепрыгнуть на другое место:

lleo$ dmesg | grep ttyUSB
usb 2-2.2: FTDI USB Serial Device converter now attached to ttyUSB0
ftdi_sio ttyUSB0: FTDI USB Serial Device converter now disconnected from ttyUSB0
usb 2-2.2: FTDI USB Serial Device converter now attached to ttyUSB1
ftdi_sio ttyUSB1: FTDI USB Serial Device converter now disconnected from ttyUSB1
usb 2-2.2: FTDI USB Serial Device converter now attached to ttyUSB1
lleo$ mount
/dev/discs/discb/part1 on /tmp/mnt/discb_1 type ext3 (rw,noatime,errors=continue,data=ordered)
/dev/discs/discc/part1 on /tmp/mnt/discc_1 type ext3 (rw,noatime,errors=continue,data=ordered)
/dev/discs/discd/part1 on /tmp/mnt/discd_1 type ext3 (rw,noatime,errors=continue,data=ordered)

Попытка поставить хаб с внешним питанием эффекта не дала, поэтому решение нужно программное. Системные скрипты /usr/local/sbin/post-mount и pre-mount срабатывают лишь при загрузке. Оба устройства находятся постоянно под какими-то программами (внешний диск — Самба, Апач; с Ардуины — демоны висят и ждут сигналов).

Что посоветуете? Может, какие-то симлинки прописать заранее или в каком-то конфиге автомонтирования есть опция для резервирования конкретного места для конкретного ID? Наверняка я не первый сталкиваюсь с проблемой перескакивания устройств с места на место. Есть в Линуксе (конкретно: DD-WRT) какие-то наработки на этот счет, чтобы мне не изобретать велосипед?

2. Про Ардуину. Чудовищно неудобная среда разработки — этот гребаный текстовый редактор на джаве. Не хочу вообще никаких развесистых пакетов, хочу использовать простой текстовый редактор mcedit и скриптик, который состоит из вызова консольного компилятора, если нет ошибок — консольная заливка кода в Ардуину, а затем (если будет нужно) автоматического запуска всяких собственных скриптов по обмену информацией с Ардуиной (консоль в фирменной среде разработки — еще одна адская убогость). У вас есть готовый пример подобного консольного со всеми правильными ключами для процессора 328? Также интересует пример С-кода для Ардуины с вставками на ассемблере (просто понять, как это оформляется при линковке).

Заранее спасибо за советы.

PS: А пока по традиции расскажу про хозяйство.

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

2014/08/27_prog - а вот вопросов пара

Иван, 3D-принтер — это щастье! Освоил рисование деталек для хозяйственных целей и прочего моделирования. Оказалось, труЪ-программеру гораздо удобнее написать скрипт, чем рисовать кисточками. Для этого вместо всяких 3DMAX существует такой пакет, как OpenSCAD — в нем рисуешь чистой математикой, как программу пишешь: «нарисовать куб», «добавить балку», «вычесть из него шар», «пересечь с конусом»... Конечно, Чапаева на коне так не нарисуешь, зато всевозможные технические детальки рисуются на ура.

2014/08/27_prog - а вот вопросов пара

Есть, конечно, грабельки, если интересно, расскажу. Ну, пакет OpenScad для Убунты собран дебильно — в нем нет кнопки «Export», поэтому готовую модель в .STL не запишешь. Но ничего, сойдет пакет для простого Линукса. Чтобы перегнать готовую модель в формат gcode для принтера нужен слайсер. Слайсер — это такой большой, красивый и блестящий графический продукт (непременно написанный на каком-нибудь говне типа Перла или Джавы), который с виду как 3D-редактор, а на самом деле нужен лишь для того, чтобы перетранслировать файл из формата stl в gcode. Один слайсер называется Cura. Он хорошо настраивается под конкретный принтер и красиво рисует. Но почему-то не хочет делать детали со стенками тоньше 1мм. Для этого есть другой слайсер — Slic3r. Он рисует тонкие контуры. Зато детали получаются шероховатые и корявые.

Для печати (в принципе, посылать на принтер умеет и Cura, но криво) имеет смысл использовать OctoPrint — это такой сервер, куда потом заходишь браузером на http://127.0.0.1:5000, и там все красиво. Правда, браузер нужен Chrome. Который по своей несовместимости и эгоцентричности давно занял нишу IE. Такая нынче мода пошла у веб-быдлокодеров, когда половина сайтов отказывается работать с Firefox (особенно это касается всевозможных окологугловских сайтов типа 23andme). В общем, этот сервер OctoPrint ставится на любую машину (да хоть на Raspberry Pi с WiFi, приклеенную к самому принтеру), и ты на принтер ходишь печатать браузером. Вот только под DD-WRT нету сборки, а то бы я принтер в коридоре-то воткнул :)

Оригинал заметки находится по адресу http://lleo.me/dnevnik/2014/08/27_prog.html, там можно оставить комментарии.

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

Предыдущие записи блогера :
Архив записей в блогах:
Фонтан Айвазовского. Юбилейный парк. Феодосия. 12.07.2023. Фонтан Айвазовского в Юбилейном парке Феодосии. Построен в 1888 году по проекту и на средства Ивана Константиновича ...
Тоже фейсбучиком принесло. ...
Сонная проснувшаяся барышня. Детективная история с костью, веселый «Белый», и лисий утренний обход участка. Утренние белки тоже попали в кадр.  Чистый «Макс» тоже в кадре. Чуть было не был укушен за хвост рыжей хулиганкой.  Попытка разбойного проникновения в холодильник. ...
" Знаю, у всех свой уникальный путь и свое решение проблемы, но уже сил нет, - письмо в рубрику Страшно бесит муж. Любящий муж и отец, хороший человек, ничего не могу плохого сказать про его личность, но страшно бесит дома. И чем дальше, тем больше бесит. Страшная свинья, неряха, ...
То то, думаю, Дмитрий и Лев писать реже стали, а они вон куда забрались. ...