Немного тут занялся нарезкой трафаретов для паяльной пасты на плоттере Silhouette Portrait, этап с экспортом DXF в штатную программу Silhouette Studio прошел быстро и мне не понравился — так как Silhouette Studio понимает в этом формате только полилинии, экспорт из «обычных» CAD’ов для электроники оказался слегка неприспособлен для этого, приходилось дополнительно редактировать эти файлы — так что я быстренько перешел к применению gerber2graphtec:
https://github.com/pmonta/gerber2graphtec
Собственно, это уже давно не новость, самой утилите уже 12 лет, упоминаниям в рунете — не меньше 7, более того, даже в ACM про организацию кустарной мастерской с такой хренью писали. Естественно, держать хотя бы и виртуалку с линуксом для этой задачи мне показалось лишним, поэтому я творчески совместил руководства по применению скрипта gerber2graphtec в WSL — с выводом в файл, и запуск file2graphtec уже в Windows (к сожалению, WSL не видит подключенные по USB устройства). Один из необходимых на этом пути шагов — это замена драйверов с помощью известной утилиты Zadig — ну и в принципе оно работало, пока я не подумал — а ведь устройство endpoint’ов у плоттера — почти такое же, как и у USB-CDC, то бишь виртуального COM-порта! А почему бы не поставить этот драйвер с помощью Zadig принудительно?
И что самое интересное — оно заработало! После такой замены плоттер распознается в Windows, как «еще один» COM-порт, и при этом его можно использовать в WSL «штатными средствами», как устройство с именем /dev/ttySn
, где n — номер COM-порта.
В итоге стало возможно прямиком из WSL запускать команды вроде
./gerber2graphtec --media_size 8.5,11 --offset 0.5,0.5 file.gbr > dev/ttyS5
а с заранее подготовленным файлом с graphtec’овскими командами — использовать банальный cat вместо «отдельного» file2graphtec.
PS Понадобилось внести еще пару изменений в gerber2graphtec — но пока не могу понять, с чем они на самом деле связаны.