Компиляция драйвера для микросхемы CH340g - мост для ардуины

Хочу начать программировать Arduino nano v3 под арчем с x86_64 Linux 4.16.6-1-ARCH ядром, но арч не видит мою плату.
На ардуине стоит мост USB-Serial в виде микросхемы CH340g. Я нашел для нее драйвер, но он не собирается make'ом:

make -C /lib/modules/4.16.6-1-ARCH/build M=/home/user/Downloads/CH341SER_LINUX
make[1]: Entering directory '/usr/lib/modules/4.16.6-1-ARCH/build'
CC [M] /home/user/Downloads/CH341SER_LINUX/ch34x.o
/home/user/Downloads/CH341SER_LINUX/ch34x.c: In function 'ch34x_close':
/home/user/Downloads/CH341SER_LINUX/ch34x.c:562:2: error: unknown type name 'wait_queue_t'; did you mean 'wait_event'?
wait_queue_t wait;
^~~~~~~~~~~~
wait_event
/home/user/Downloads/CH341SER_LINUX/ch34x.c:573:24: error: passing argument 1 of 'init_waitqueue_entry' from incompatible pointer type [-Werror=incompatible-pointer-types]
init_waitqueue_entry( &wait, current );

Как можно собрать этот драйвер под текущее ядро?
$ zcat /proc/config.gz | grep CH34*
Ошибки в тексте-неповторимый стиль автора©
Это китайская поделка, а поэтому лучше использовать первоисточник (это, конечно, не обязательно, но как правило, более новые версии и будет меньше ошибок)
Качай отсюда (версия от 2018-03-18). Пробовал собрать, выскочило несколько ошибок - достаточно внести два исправления и модуль собирается. Исправления описаны здесь (см. Changes), там же найдешь и другое.
Ошибки не исчезают с опытом - они просто умнеют
Aoizora
Я нашел для нее драйвер, но он не собирается make'ом
Штаааа??? CH340 всех вариантов нативно поддерживается ядром. Зачем что-то компилять ещё? Втыкаете железку, наблюдаете в /dev устройства вида ttyUSB* или ttyACM* и всё. Только надо не забыть прописать правило удев на их появление, чтобы присвоили права на чтения обычному юзеру. И всё!

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

Aoizora
Хочу начать программировать Arduino nano v3 под арчем
Не постесняюсь порекомендовать Вам вот эту и вот эту статьи

В арче из коропки и в репах есть всё необходимое, чтобы работать с ардуино
Да пребудет с нами Сила...!
CPU Intel Core i9 10900-KF/RAM DDR4 128 Gb/NVidia GForce GTX 1080 Ti Turbo 11Gb/SSD M2 512 Gb/HDD Seagate SATA3 2 Tb/HDD Toshiba 3Tb/HDD Toshiba 6Tb
http://rusrailsim.org
maisvendoo
CH340 всех вариантов нативно поддерживается ядром.
А я даже поленился и проверить, сразу стал пытаться собирать.
ЛАЖАНУЛСЯ ...

Поздно заметил
indeviral
$ zcat /proc/config.gz | grep CH34*
CONFIG_USB_SERIAL_CH341=m
Ошибки не исчезают с опытом - они просто умнеют
Aoizora
мост для ардуины
Простите занудство, но не люблю когда придумывают лишние сущности.

Это не мост для ардуино, а преобразователь usb <--> uart. Со стороны приложения, с помощью драйвера он становится виден как последовательный порт. На проводках протокол UART, который с помощью дополнительной обвязки может быть превращен в любой последовательный протокол физического уровня: RS232 / RS485 / RS422 и так далее. Либо введен непосредственно в UART, распаяный на плате ардуино.

"Язык ардуино" это обычный язык C++, в котором предурки маркетологи файлы именуют с расширением *.ino вместо *.cpp. Так что ардуинку можно прогать хоть стандартной средой для неё, хоть прямо на c/c++ или асме.
Да пребудет с нами Сила...!
CPU Intel Core i9 10900-KF/RAM DDR4 128 Gb/NVidia GForce GTX 1080 Ti Turbo 11Gb/SSD M2 512 Gb/HDD Seagate SATA3 2 Tb/HDD Toshiba 3Tb/HDD Toshiba 6Tb
http://rusrailsim.org
maisvendoo
Так что ардуинку можно прогать хоть стандартной средой для неё, хоть прямо на c/c++ или асме.
... и заливать программу хоть средой, хоть в лоб через avrdude: -carduino
извиняюсь, что влезу в тему. )
Есть такой вопрос. Имеем два девайса. На ардуино мега какой-то.. Не суть. На одном слетела прошивка, такое бывает.) Второй рабочий. Имеется ли возможность и как слить прошивку с рабочей и сунуть ее нерабочей.
Если важно, то девайс- двухканальный ТРМ Овен
Morisson
Второй рабочий. Имеется ли возможность и как слить прошивку с рабочей и сунуть ее нерабочей.
Имеется. Берем avrdude, читаем прошивку в файл с одного девайса и шьем в другой. Вопрос только в том, какой разъем там для программирования - ISP? Нужен соответствующий программатор
Да пребудет с нами Сила...!
CPU Intel Core i9 10900-KF/RAM DDR4 128 Gb/NVidia GForce GTX 1080 Ti Turbo 11Gb/SSD M2 512 Gb/HDD Seagate SATA3 2 Tb/HDD Toshiba 3Tb/HDD Toshiba 6Tb
http://rusrailsim.org
там вроде как обычный uart 6pin-вый на плате прям. У меня есть переходничок китайский, им ростелекомовскую приставку шил.
 
Зарегистрироваться или войдите чтобы оставить сообщение.