This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

need DFU description explanations

Hello,

I'm started implementing DFU over serial port and see documentation from this link:
https://infocenter.nordicsemi.com/index.jsp?topic=%2Fcom.nordic.infocenter.sdk5.v14.2.0%2Flib_dfu_transport_serial.html

And for me is misunderstanding about little and big endian in your descriptions. In examples I see is big endian format (PRN number is 02 01 00 - it means 256) but in description is mentioned little endian format ("Value (uint16, little endian) "). What I should believe? Example or description?

Same situation is with MTU message, where is the true?

And other think if in other messages not mentioned little endian format it does it mean that it is in big endian format?

Then how it understand that some messages value (Create and PRN) fields is in little endian format and another  all messages is in big endian format?

It does it mean that  DFU protocol mixing endian between messages?

Wait for comments!

FW developer

Remigijus

Parents Reply
  • I have one additional question according DFU start packets sending. I've found something strange. COuld You explain me please what's happen?

    I'm trying to send:
    nrfutil dfu serial -pkg d:\nRF5_SDK_14.2.0_17b948a\examples\dfu\secure_dfu_test_images\serial\nrf52832\ble_app_buttonless_dfu_without_bonds_s132.zip -p COM14

    and sniffing on serial port and found hexadeciomal bytes:
    C0 D1 4E 01 E0 03 00 00 00 04 00 00 00 00 00 00 00 00 00 00 00 FC 9D 00 00 7C 45 C0

    I read DFU documentation from here:
    infocenter.nordicsemi.com/index.jsp

    I don't found 0xD1 in second byte and other bytes. What does it mean this hexadecimal bytes?
    C0 in begining and end is SLIP protocol markers this point I understand bytes what means other bytes I totaly not understand.

    Maybe I in wrong way and don't understand main DFU things..

    Wait for comments!

Children
Related