Jump to content
Sign in to follow this  
hikaru

How to install CH34x driver on 2S

Recommended Posts

I wanted to use an Arduino compatible machine and tried to make a driver for CH34x but couldn't.
(Tinker Board 2 Debian 10 V2.0.0)

I tried the method posted on this site.
https://learn.sparkfun.com/tutorials/how-to-install-ch340-drivers/linux

I put the linux header like this.

wget https://github.com/TinkerBoard2/kernel/releases/download/tinker_board_2-debian_10-2.0.0/linux-headers-4.4.194_4.4.194-1_arm64.deb
dpkg -i linux-headers-4.4.194_4.4.194-1_arm64.deb

Has anyone succeeded?
Or, if you have an installable ch34x.ko, I would appreciate it if you could share it.

sudo insmod ch34x.ko


As a side note, in the case of Tinker board S, Arduino compatible machines were recognized without installing any drivers.
(Tinker Board S Debian 10 V3.0.11)

Thank you.
 

Share this post


Link to post
Share on other sites

Hi @hikaru

I use Tinker2S version 2.0.0-20210413
CONFIG_USB_SERIAL_CH341=y
Actually insert CH340 USBtoUART
linaro@linaro-alip:~$ ls -al /dev/ttyUSB0
crw-rw---- 1 root dialout 188, 0 Dec ?8 04:04 /dev/ttyUSB0

If you have any questions, Please provide dmesg kernel log information.
Thanks

  • Like 1

Share this post


Link to post
Share on other sites

Thank you, Joe!

I didn't know how to set "CONFIG_USB_SERIAL_CH341 = y", so I sent a question via dmesg.🙏 

Share this post


Link to post
Share on other sites

Sorry, Joe.

I misunderstood dmesg as a direct message.
Rewrite in the thread.
I have little knowledge about linux and I don't know if I can ask the question correctly, but I investigated how to do it.

And I referred to the method on this page.
https://tinkerboarding.co.uk/forum/archive/index.php/thread-576.html

Yes, you need rebuild the kernel.

step 1. download kernel 
git clone https://github.com/TinkerBoard/debian_kernel.git

step 2. add the following line to arch/arm/configs/miniarm-rk3288_defconfig
CONFIG_USB_SERIAL_CH341=y

step 3. rebuild the kernel
make ARCH=arm miniarm-rk3288_defconfig
make zImage ARCH=arm CROSS_COMPILE=arm-linux-gnueabi-

then you will get a new zImage file under arch/arm/boot

step 4. replace the zImage file which is in your boot sdcard

When building the kernel Which file describes "CONFIG_USB_SERIAL_CH341 = y" on 2S version 2.0.0-20210413?

Or is there an easier way to get an OS with "CONFIG_USB_SERIAL_CH341 = y" set?

Thank you for your advice.

Share this post


Link to post
Share on other sites

I tryed this method on 2S version 2.0.0-20210413.

make ARCH=arm64 tinker2_defconfig

Then I got ".config" file.
And It have line "CONFIG_USB_SERIAL_CH341=y".

Next step

make ARCH=arm64 rk3399-tinker_board_2.img -j24

I got these errors.

drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/halrf/rtl8822b/halrf_iqk_8822b.o
drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/halrf/rtl8822b/halrf_iqk_8822b.c: In function '_iqk_reload_iqk_setting_8822b':
drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/halrf/rtl8822b/halrf_iqk_8822b.c:449:14: warning: '~' on a boolean expression [-Wbool-operation]
error, forbidden warning:halrf_iqk_8822b.c:449
     report = ~(p_iqk_info->IQK_fail_report[channel][path][idx]);
              ^
drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/halrf/rtl8822b/halrf_iqk_8822b.c:449:14: note: did you mean to use logical not?
     report = ~(p_iqk_info->IQK_fail_report[channel][path][idx]);
              ^
              !
drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/halrf/rtl8822b/halrf_iqk_8822b.c:453:14: warning: '~' on a boolean expression [-Wbool-operation]
error, forbidden warning:halrf_iqk_8822b.c:453
     report = ~(p_iqk_info->IQK_fail_report[channel][path][idx]);
              ^
drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/halrf/rtl8822b/halrf_iqk_8822b.c:453:14: note: did you mean to use logical not?
     report = ~(p_iqk_info->IQK_fail_report[channel][path][idx]);
              ^
              !
make[6]: *** [scripts/Makefile.build:277: drivers/net/wireless/rockchip_wlan/rtl8822be/hal/phydm/halrf/rtl8822b/halrf_iqk_8822b.o] Error 1
make[5]: *** [scripts/Makefile.build:484: drivers/net/wireless/rockchip_wlan/rtl8822be] Error 2
make[5]: *** Waiting for unfinished jobs....
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux.c: In function 'dhd_ethtool':
drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux.c:6965:39: warning: argument to 'sizeof' in 'strncpy' call is the same expression as the source; did you mean to use the size of the destination? [-Wsizeof-pointer-memaccess]
error, forbidden warning:dhd_linux.c:6965
   strncpy(drvname, info.driver, sizeof(info.driver));
                                       ^
make[7]: *** [scripts/Makefile.build:277: drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd/dhd_linux.o] Error 1
make[7]: *** Waiting for unfinished jobs....
make[6]: *** [scripts/Makefile.build:484: drivers/net/wireless/rockchip_wlan/rkwifi/bcmdhd] Error 2
make[5]: *** [scripts/Makefile.build:484: drivers/net/wireless/rockchip_wlan/rkwifi] Error 2
make[4]: *** [scripts/Makefile.build:484: drivers/net/wireless/rockchip_wlan] Error 2
make[3]: *** [scripts/Makefile.build:484: drivers/net/wireless] Error 2
make[2]: *** [scripts/Makefile.build:484: drivers/net] Error 2
make[1]: *** [Makefile:1036: drivers] Error 2

How Can I build kernel ?

Share this post


Link to post
Share on other sites

Hi @hikaru

Please try the following command
1)  wgethttp://releases.linaro.org/components/toolchain/binaries/6.3-2017.05/aarch64-linux-gnu/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.xz
2) tar -Jxvf gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu.tar.xz -C ~
3) make ARCH=arm64 rk3399-tinker_board_2.img -j24 CROSS_COMPILE=~/gcc-linaro-6.3.1-2017.05-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-

Thanks

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this  

×
×
  • Create New...