hi support team,
i have one question about DFU function question,:
in our ncs sdk , nrf5 desktop can dfu from hid feature(from configuration channel setting), if it can be accomplished in our nrf5 sdk?
Regards,
William.
hi support team,
i have one question about DFU function question,:
in our ncs sdk , nrf5 desktop can dfu from hid feature(from configuration channel setting), if it can be accomplished in our nrf5 sdk?
Regards,
William.
Hi!
I've reached out internally about this and will get back to you as soon as get an answer. From what I could find myself we don't have anything similar in the nRF5 SDK, but using Dual-bank updates background DFU should be possible using the experimental background DFU library. As for the HID configuration channel this seems to be a proprietary implementation for the nRF Desktop application, but it should be possible to implement something similar using the USB HID API of the nRF5 SDK.
Best regards,
Carl Richard
Thanks Carl,
So i have two questions:
1. configuration channel is developed by our RD,right? i thought it is open source, so i guess i was wrong.
2. this is new feature, will not add to nrf5 SDK according to our rules. right?
Regards,
William.
Hello again, William!
Apologies for a somewhat late answer.
1. You are correct that it's developed by our R&D, but it is actually open source. You can find the code under nrf_desktop/src/util.
2. This is most likely correct. I don't believe we will do a big addition like this to the nRF5 SDK.
Best regards,
Carl Richard
thanks, Carl,
one more question, "configurator_cli.py" under folder "ncs1.6.0\nrf\scripts\hid_configurator" is also provided by our R&D, right?
i tested usb hid feature DFU, it still costs about 5 minutes( ble hid feature dfu costs about 15 minutes),is it possible we can make this timer shorter? like 2 minutes for usb.
Regards,
William.
Hi again, William!
Yes, the HID configurator is also provided by our R&D.
For the DFU speed question I will need to reach out internally. I will get back to you soon!
Best regards,
Carl Richard
Hi William!
Thank you for your patience. I've finally got some input on this from the developers. Basically the speed of the HID DFU is determined by the poll interval defined in scripts/hid_configurator/NrfHidDevice.py. You can change the POLL_INTERVAL_DEFAULT value (for example to 0.002 to communicate with the device every 2ms). This may require that you increase the POLL_RETRY_COUNT (for example to 200) as well so that device communications isn't interrupted.
They have some further comments to:
The implementation was meant to be used as a background DFU. We wanted to reduce negative impact of DFU image transfer on user experience, so we communicated with longer poll interval to avoid making FLASH writes or providing HID configurator responses too often (when we operate on FLASH or provide response for HID configurator we actually delay providing HID input report)
The DFU could be delayed in case device provides HID input reports to host. If device provides the HID reports, we assume that user actively uses it and we delay writing data to FLASH to avoid delaying delivery of HID input report.
Best regards,
Carl Richard
Thanks a lot! i will feed it back to customer.
Regards,
William.
Thanks a lot! i will feed it back to customer.
Regards,
William.