-
Notifications
You must be signed in to change notification settings - Fork 73
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Protocol implementation details are insufficiently abstracted over #224
Labels
enhancement
New feature or request
Comments
Hello, Thank you for reporting this , we are now actively looking into reproducing and fixing the issue and also looking into test cases and support for OTA on platforms with cellular connectivity. |
+1 and see #218 (comment) - this at least needs to be much better documented. |
No further development will be performed on this library. See the readme. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
The library expects that users provide some generic MQTT subscribe and unsubscribe functions, but doesn't really tell what to do with packets recieved in response to these subscriptions, which is a bit unfortunate as the application has to pass the data received using different events (
OtaAgentEventReceivedJobDocument
orOtaAgentEventReceivedFileBlock
). So one has to rifle through the source of the library to find out which topics it may subscribe to and then dispatch in the application code. And this is quite error prone as you have to very specific about which data you pass to the library, if you for example pass everything that matches"$aws/things/+/jobs/#"
as anOtaAgentEventReceivedJobDocument
event, you invariably run intowhich then aborts the current transfer, re-requests the next job and starts the transfer again, which then gets about as far as the attempt before. Also, the AppCallback is never called with
OtaJobEventProcessed
for these messages, so the buffers used for these messages are never freed (which can be seen as a saving grace in this case, as it prevents the code from downloading the first few blocks of the update in an endless loop until the included data volume on the SIM card is exhausted).The text was updated successfully, but these errors were encountered: