To connect multiple (including one) Kneron devices.


To connect multiple (including one) Kneron devices without any examinations of system info.


Disable firmware log of all devices with firmware log enabled.


To disconnect a Kneron device.

kp.core.enable_firmware_log(device_group, usb_port_id, log_file_path)

Enable firmware log from certain device.

kp.core.get_model_info(device_group, usb_port_id)

Get model information (crc, model id, etc.).

kp.core.get_system_info(device_group, usb_port_id)

Get system information (kn number and firmware version).


Get Kneron PLUS version


Install device driver on Windows

kp.core.load_encrypted_models(device_group, nef_buffer_list)

Upload encrypted NEF models data bytes to device through USB.

kp.core.load_encrypted_models_from_file(device_group, file_path_list)

Upload encrypted NEF Models to device through USB by encrypted NEF file path(s).

kp.core.load_firmware(device_group, scpu_fw_buffer, ncpu_fw_buffer)

Upload firmware data bytes to device through USB.

kp.core.load_firmware_from_file(device_group, scpu_fw_path, ncpu_fw_path)

Upload firmware to device through USB by firmware file path.

kp.core.load_model(device_group, nef_buffer)

Upload NEF models data bytes to device through USB.

kp.core.load_model_from_file(device_group, file_path)

Upload NEF Model to device through USB by NEF file path.


Load model from device flash (Please update NEF model in flash by Kneron DFUT).

kp.core.reset_device(device_group, reset_mode, sleep_secs=0)

Reset the device in hardware mode or software mode.


Scan all Kneron devices and report a list. This function can get devices connectivity information at runtime.

kp.core.set_timeout(device_group, milliseconds)

To set a global timeout value for all USB communications with the device.

kp.core.store_ddr_management_attributes(device_group, ddr_manage_attributes)

(Advance) Store DDR memory management attributes into DeviceGroup.