Open Crudough opened 2 years ago
Why do you want to get the type, if I may ask?
Also, why do you need #396 exactly? For sending the firmware to Flutter? Serializing to protobuf?
Hi @philips77,
Thank you for responding here!
I need a way to programmatically detect the application type from the initPacket data to direct internal behaviour and sequencing. We use this in other ways but not through the iOS DFU Manager (ex. by using nrfutil pkg display
as mentioned above).
As far as I'm aware #396 is the only way of accessing the initPacket from an incoming DFU package. After accessing the initPackage I am hoping to deserialize the data to protobuf using InitComand(serializedData: stream.initPacket
from the Swift code generated from dfu_cc.proto
. If there is an alternate way to access the type that does not drive a change please do let me know. Forking and manipulating the class to test has proven problematic with the Swift Package Manager.
So you'll be more interested in getting the fw type than the data, right?
Correct, apologies for the slow response!
I can see what can be done. Thank you for opening the issue.
Appreciate that @philips77! Looking forward to hearing back from you!
DFU Bootloader version (please complete the following information):
Device information (please complete the following information):
Your question Waiting on PR#396 to expose the initPacket as public through the
DFUFirmware
class. In the meantime, I have forked the repo, made the change locally and continued my testing and development. I am unsure as to how best to dissect the information stored in theinitPacket
with my current interest being thetype
field.I have been utilizing the protobuf message definitions listed in Nordic's nrfutil repo here. The current workflow I'm attempting is as follows, select my DFU Package -> create my
DFUFirmware
object in code through theDFUManager
-> if successful then deserialize the initPacket into theInitCommand
to find the packet type (**) -> continue with the rest of the DFU as normal.(**) This deserialization into the protobuf structure is successful however I cannot seem to extract the type out of the
initPacket
which I have confirmed as.externalApplication
throughnrfutil pkg display
command.