Beste mede tweakers
Enige tijd geleden heb ik een xy plotter v2.0 van makeblock in elkaar gezet en via osx geprogrammeerd en bestuurd met de arduino IDE en de GRemoteFull java app van makeblock.
Om de xy plotter mobiel te kunnen gebruiken heb ik deze op raspberry 2B met debian aangesloten. Helaas lukt het niet om dit via de raspberry werkend te krijgen. Met de arduino IDE lukt het op de raspberry om GCodeParser.ino te uploaden naar de xy-plotter. De GRemoteFull Java app weigert. Nu dacht ik dat er misschien net als bij os x(http://learn.makeblock.cc/driver_installation/) nog een driver nodig zou zijn. Via het forum van makeblock kwam op de website van wch.cn te recht. De CH341 driver is daar ook voor linux te vinden (http://www.wch.cn/download/CH341SER_LINUX_ZIP.html) . Deze driver zou dmv een make command in de root terminal gecompileerd worden. Echter als ik dit doe krijg ik eerst de melding:
make: *** /lib/modules/4.1.7-v7+/build: No such file or directory. Stop.
make: *** [modules] Error 2
Dit heb ik opgelost door de directory build aan te maken in /lib/modules/4.1.7-v7+/ .
vervolgens komt make helaas in een loop zonder de .ko aan te maken.
Bij de driver zit , naast de ch34x.c en de readme de volgende makefile:
ifeq ($(KERNELRELEASE), )
KERNELDIR := /lib/modules/$(shell uname -r)/build
PWD :=$(shell pwd)
default:
$(MAKE) -C $(KERNELDIR) M=$(PWD)
clean:
rm -rf .tmp_versions Module.symvers *.mod.c *.o *.ko .*.cmd Module.markers modules.order
load:
modprobe usbserial
insmod ch34x.ko
unload:
rmmod ch34x
else
obj-m := ch34x.o
endif
De inhoud van de readme.txt:
// ChangeLog
// 1.0 - 1.1 modified to solve transmition between ch341 and ch341
// 1.1 - 1.2 Support high Linux kernel
Instructions
Note: 1.Please run followed executable programs as root privilege
2.Current Driver support versions of linux kernel range from 2.6.25 to 3.13.x
3.Current Driver support 32bits and 64bits linux systems
Usage:
(load or unload linux driver of CH34x)
//compile
#make
//load ch34x chips driver
#make load
//unload ch34x chips driver
#make unload
--
output van de make:
root@raspberrypi:/lib/modules/4.1.7-v7+/build# make
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[1]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[2]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[3]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[4]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[5]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[6]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[7]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
Hoe krijg ik het voor elkaar om de driver te compileren en te loaden?
Enige tijd geleden heb ik een xy plotter v2.0 van makeblock in elkaar gezet en via osx geprogrammeerd en bestuurd met de arduino IDE en de GRemoteFull java app van makeblock.
Om de xy plotter mobiel te kunnen gebruiken heb ik deze op raspberry 2B met debian aangesloten. Helaas lukt het niet om dit via de raspberry werkend te krijgen. Met de arduino IDE lukt het op de raspberry om GCodeParser.ino te uploaden naar de xy-plotter. De GRemoteFull Java app weigert. Nu dacht ik dat er misschien net als bij os x(http://learn.makeblock.cc/driver_installation/) nog een driver nodig zou zijn. Via het forum van makeblock kwam op de website van wch.cn te recht. De CH341 driver is daar ook voor linux te vinden (http://www.wch.cn/download/CH341SER_LINUX_ZIP.html) . Deze driver zou dmv een make command in de root terminal gecompileerd worden. Echter als ik dit doe krijg ik eerst de melding:
make: *** /lib/modules/4.1.7-v7+/build: No such file or directory. Stop.
make: *** [modules] Error 2
Dit heb ik opgelost door de directory build aan te maken in /lib/modules/4.1.7-v7+/ .
vervolgens komt make helaas in een loop zonder de .ko aan te maken.
Bij de driver zit , naast de ch34x.c en de readme de volgende makefile:
ifeq ($(KERNELRELEASE), )
KERNELDIR := /lib/modules/$(shell uname -r)/build
PWD :=$(shell pwd)
default:
$(MAKE) -C $(KERNELDIR) M=$(PWD)
clean:
rm -rf .tmp_versions Module.symvers *.mod.c *.o *.ko .*.cmd Module.markers modules.order
load:
modprobe usbserial
insmod ch34x.ko
unload:
rmmod ch34x
else
obj-m := ch34x.o
endif
De inhoud van de readme.txt:
// ChangeLog
// 1.0 - 1.1 modified to solve transmition between ch341 and ch341
// 1.1 - 1.2 Support high Linux kernel
Instructions
Note: 1.Please run followed executable programs as root privilege
2.Current Driver support versions of linux kernel range from 2.6.25 to 3.13.x
3.Current Driver support 32bits and 64bits linux systems
Usage:
(load or unload linux driver of CH34x)
//compile
#make
//load ch34x chips driver
#make load
//unload ch34x chips driver
#make unload
--
output van de make:
root@raspberrypi:/lib/modules/4.1.7-v7+/build# make
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[1]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[2]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[3]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[4]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[5]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[6]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
make[7]: Entering directory '/lib/modules/4.1.7-v7+/build'
make -C /lib/modules/4.1.7-v7+/build M=/lib/modules/4.1.7-v7+/build
Hoe krijg ik het voor elkaar om de driver te compileren en te loaden?