Kneron DFUT and Kneron Plus Related

Hi Ethon,

I am currently working with the Kneron KLM730A30 EVM board and using Kneron SDK v2.0.0 for development. My host PC is running Ubuntu 24.04.

I would like to understand the complete development environment and the correct workflow for using the tools and IDE provided with the SDK.

I have also tried using Kneron DFUT (Device Firmware Update Tool) to update the KDP firmware on the EVM board, but the board is not being detected by DFUT.

Could you please guide me through the correct setup and workflow for development on the KLM730A30 EVM?

Specifically, I would appreciate your guidance on the following:

  1. Which IDE/tools are recommended for KLM730A30 development with SDK v2.0.0.
  2. if the SPI NAND is completely empty then how to put first piece of code or OS on the Board?
  3. The correct procedure for using Kneron DFUT to update the KDP firmware.
  4. What is the recommended end-to-end development workflow from setting up the SDK environment to running an application on the KLM730A30 EVM.

If there is an official step-by-step procedure specifically for KLM730A30 EVM + SDK v2.0.0, please share it as well.

I am new to this specific Kneron development environment, so a complete step-by-step explanation of the tools, IDE, firmware update process, and development workflow would be very helpful.

Thank you for your support.

Comments

  • Hello,

    1. There are no IDE tools for KL730 SDK, you just need to prepare a host PC and install the toolchain to compile the SDK.

    /KL730_SDK_v2.0.0/01_BSP/01_Document/KL730_Development_Environment_User_Guide.pdf

    2. GETTING STARTED

    5. BUILDROOT


    2. There are many ways to put the demo_out (applications) to the board, the simplest one is that you can put the demo_out onto the SD card in advance and mount the SD card after entering the linux kernel environment. Or you can transfer file via ethernet.


    3. The DFUT is a simple tool to upload fw during PLUS mode. The KL730 would only be a usb companion device while using PLUS mode. Users usually use PLUS mode to develop the model inference flow. 

    You can find more details about PLUS mode in our Document Center:

    https://doc.kneron.com/docs/#plus_c/


    4. It depends on what kind of applications you want to develop. If you just want to get familiar with the EVM, you can refer to the document in HDK.

    /HDK_v2.0.0/02_Hardware/01_Document/KL730_EVM_Board_User_Manual.pdf

  • Thank you for your response.

    Currently, the board does not have an SSH server available/running, so I am unable to access the KLM730A30 EVM through SSH.

    I would like to connect the board to the Ethernet network and transfer files between the Ubuntu 24.04 host PC and the board for development and debugging purposes.

    Could you please guide me on the recommended procedure for the KLM730A30 EVM with Leipzig SDK v2.0.0?

    Specifically, I would like to understand:

    1. How should I configure the Ethernet connection between the host PC and the KLM730A30 EVM?
    2. What IP address/network configuration should be used on the board and the host PC?
    3. If SSH is not supported or recommended in the current rootfs, what is the recommended alternative for transferring files?
    4. Can TFTP be used for transferring files between the Ubuntu host and the board? If yes, could you please provide the required configuration and procedure?
    5. Are there any other recommended methods, such as FTP, SCP, NFS, HTTP, serial transfer, or a Kneron-specific utility, for transferring files to/from the board?
    6. If the required network service depends on the rootfs configuration, could you please let me know which configuration/package needs to be enabled in the Leipzig SDK v2.0.0 build?

    At present, I can access the board through the available console/UART interface, but I cannot access it through SSH.

    My development environment is:

    • Board: Kneron KLM730A30 EVM
    • SDK: Leipzig SDK v2.0.0
    • Host OS: Ubuntu 24.04
    • Current access: UART/serial console
    • SSH: Currently unavailable on the board

    baudrate=115200

    bootdelay=3

    bootcmd=fatload mmc 0:0 0x800000 Image; fatload mmc 0:0 0x2A00000 leipzig.dtb; fatload mmc 0:0 0x7400000 rootfs.squashfs; booti 0x800000 - 0x2A00000

    bootargs=console=ttyS0,115200 root=/dev/ram0 initrd=0x7400000,32M ramdisk_size=65536 earlycon

    ethact=ethernet@c4000000

    ethaddr=00:00:00:00:00:00

    fdt_high=0xFFFFFFFFFFFFFFFF

    gatewayip=172.23.0.1

    ipaddr=0.0.0.0

    netmask=255.255.0.0

    phy_mode=rmii

    serverip=172.17.0.12

    stderr=serial

    stdin=serial

    stdout=serial

    using SD CARD Boot.

    using the above uboot.env file.

    [  5.556508] dwmac-leipzig c4000000.dweqos eth0: Link is Up - 100Mbps/Full - flow control off

    # ip addr

    1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue qlen 1000

      link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00

      inet 127.0.0.1/8 scope host lo

        valid_lft forever preferred_lft forever

    2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq qlen 1000

      link/ether 02:00:06:00:00:06 brd ff:ff:ff:ff:ff:ff

    # 

    above UART_logs for your refrence.

    Please provide the recommended step-by-step procedure for establishing Ethernet connectivity and transferring files between the Ubuntu host PC and the KLM730A30 EVM.

    Thank you.

  • Hello,

    1. To set for the Ethernet connection, you have to enter uboot and use "setenv" to set ethaddr, gatewayip and ipaddr in advance. It's not the specific operation for KL730, but the standard command in the uboot / linux environment.

    2. The IP configuration depends on your ethernet environment, please consult your company's IT team.

    3. As mentioned previously, the simplest way is putting the files in the SD card and mounting it to file system.

    4. We don't have the corresponding document for TFTP.

    5. It's recommended to use an SD card to transfer files.

  • Thank you for your response, Ethon.

    We are using the KLM730A30 EVM for an industrial-grade camera project. During development, we frequently modify and update files on the Ubuntu host PC, and we need to transfer these updated files to the board for testing and debugging.

    Currently, our workflow requires removing the SD card from the board, mounting it on the host PC, copying the updated files, and then inserting it back into the board. This is quite inconvenient and time-consuming, especially during continuous development and debugging.

    Therefore, we would like to establish a direct Ethernet-based file transfer mechanism between the Host PC and the KLM730A30 EVM, so that we can update files without physically removing the SD card each time.

    Our primary requirement is to have a convenient development workflow such as:

    Host PC → Ethernet → KLM730A30 EVM → File transfer/update

    Could you please provide the recommended configuration and step-by-step procedure to enable Ethernet-based file transfer on the board? In particular, if SSH/SCP or TFTP requires any specific packages, rootfs configuration, network configuration, or SDK build options, please let us know.

    This would significantly improve our development and debugging workflow, as we need to frequently update files on the target during the camera application development.

    Thank you for your guidance.

  • For your requirement, maybe NFS is the proper way for you.

    After you build the ethernet connection between the EVM and your host PC, you can assign a directory to be mounted on the KL730 with the following nfs command:

    mount -o nolock -t nfs "host_ip":"assigned_directory" "directory_on_kl730"


    e.g.

    mount -o nolock -t nfs 192.168.100.100:/mnt/data/Ethon/ /mnt/nfs/

    Then all the files in the directory you assigned will be accessible on the KL730.

Sign In or Register to comment.