Secure and remote firmware update of cellular IoT micro devices with limited resources