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, там можно оставить комментарии.

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

Предыдущие записи блогера :
Архив записей в блогах:
В принципе не думала писать, но на телефонных переговорах можно разориться... Когда 4 года назад, я, совершенно взрослая тетка, с мужем, двумя детьми, собакой, и кучей скарба перебралась из России в Латвию, из Москвы в небольшой городок под Ригой (в принципе - в деревню), большинство родст ...
Вы слушаете радио? Я очень люблю слушать радио в машине, особенно те радиостанции, где больше говорят, а не музыка, типа "КП", "Маяк" и особенно "Юмор FM", особенно, когда едешь долго. А еще это повод пересмотреть классный и смешной фильм "День радио", как раз для выходного. Доброго ...
"Мы живем вместе 9 лет. В последние два года, мою вторую половину как подменили, - письмо в рубрику_ответов В мою сторону только завышенные требования. Стал проявляться открытый эгоизм. При чем этот эгоизм распространяется не только на меня, но и на весь наш близкий круг общения. ...
Лолита - Часы 03:06  ...
Позавчера внезапно ушел из жизни сверхпопулярный в свое время солист группы "Ласковый май" Юрий Шатунов в возрасте 48 лет. Причем, ушел очень типично для современной России из-за неоказания своевременной медицинской помощи. За ним банально не приехала "Скорая помощь". В результате его ...