Implementação do LoRaWAN 1.0.4 e 1.1 em micropython
Autor(a) principal: | |
---|---|
Data de Publicação: | 2023 |
Tipo de documento: | Dissertação |
Idioma: | por |
Título da fonte: | Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
Texto Completo: | http://hdl.handle.net/10400.21/17023 |
Resumo: | Dissertação para obtenção do Grau de Mestre em Engenharia Eletrónica e Telecomunicações |
id |
RCAP_722311e390b9125ecc5c567c07c1634c |
---|---|
oai_identifier_str |
oai:repositorio.ipl.pt:10400.21/17023 |
network_acronym_str |
RCAP |
network_name_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository_id_str |
7160 |
spelling |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropythonLoRaLoRaWANESP32. firmwarePycomMicroPythonLoRaLoRaWANESP32FirmwarePycomDissertação para obtenção do Grau de Mestre em Engenharia Eletrónica e TelecomunicaçõesA tecnologia tem vindo a evoluir e a tecnologia LoRa e o protocolo LoRaWAN não são exceção. Com esta evolução foram publicadas novas versões do protocolo LoRaWAN, porém nem todos os dispositivos que utilizam LoRaWAN evoluem ao mesmo ritmo quer seja por falta de necessidade ou por investimento noutros pontos relevantes do microcontrolador ou do kit de desenvolvimento em questão. Com a publicação das versões 1.1 e 1.0.4 do protocolo foram introduzidas novas funcionalidades e uma nova arquitetura. Ao atualizar o Stack LoRaWAN obtém-se uma ligação mais segura e mais funcionalidades introduzidas pelos novos comandos MAC. Tendo isto em conta, pretende-se atualizar o firmware dos dispositivos que utilizem o ESP32, no caso utilizar-se-ão dispositivos da Pycom. Os dispositivos escolhidos foram desenvolvidos pela Pycom e foram os selecionados para este projeto por utilizarem um microcontrolador ESP32, ter o firmware aberto e já utilizarem a modulação LoRa e que implementam o protocolo LoRaWAN. Inicialmente, utilizou-se uma versão beta do firmware da Pycom que implementa a versão 1.0.3 do protocolo LoRaWAN, porém as funcionalidades não estavam implementadas para o utilizador final. Para conseguir implementar estas funcionalidades foi necessário uma análise dos códigos das diferentes versões do firmware para perceber a interligação da Stack com o resto do código. Este processo consistiu observação detalhada do firmware utilizado e entender o contributo de cada "setor". Ao passar à atualização da Stack no firmware da Pycom, utilizou-se o conhecimento adquirido na análise do firmware de modo a efetuar as alterações necessárias no âmbito do projeto. Nesta fase apareceram as maiores dificuldades devido às diferenças da nova versão da Stack e como esta seria implementada no firmware. Após a resolução de todos os problemas, verificou-se o funcionamento das funções básicas referentes ao LoRa, sendo estas as funções de join e de envio de pacotes. Em seguida, implementaram-se as funções que permitiam a utilização dos comandos MAC e testaram-se as funções criadas. Por fim, utilizou-se um documento disponibilizado pela LoRa Alliance como guia para testes de conformidade dos comandos MAC. Este documentos especifica os testes que devem ser efetuados para averiguar o funcionamento das diferentes funcionalidades da versão 1.0.4 do protocolo LoRaWAN para certificar um dispositivo.Technology has been evolving, and LoRa technology and the LoRaWAN protocol are no exception. With this evolution, new versions of the protocol have been published, but not all devices that use LoRaWAN evolve at the same pace, either due to a lack of necessity or investment in other relevant aspects of the microcontroller or development kit in question. With the release of version 1.0.4 of the protocol, new features and a new architecture were introduced. Updating the LoRaWAN Stack provides a more secure connection and additional functionality due to the new MAC commands. In the release of versions 1.1 and 1.0.4 of the LoRaWAN protocol, new functionalities and a new architecture were introduced. Updating the LoRaWAN Stack ensures a more secure connection and additional features facilitated by the new MAC commands. Given this progression, the goal is to update the firmware of devices utilizing the ESP32, in this case, Pycom devices will be used. These Pycom devices were chosen for the project because they implent the ESP32 microcontroller, have an open-source firmware, and already feature devices using LoRa that implement the LoRaWAN protocol. Initially, a beta version of Pycom’s firmware, implementing LoRaWAN protocol version 1.0.3, was used. The funcionalities implemented by this new version wasn’t implementend in this firmware for the end-users. To implement these functionalities successfully, a thorough analysis of the firmware codes from different versions was conducted to understand the connection of the Stack with the rest of the code. Moving on to the Stack update in the Pycom firmware, the knowledge gained from the firmware analysis was applied to make the necessary changes within the project scope. This phase presented the greatest challenges due to the differences in the new Stack version and how it would be implemented in the firmware. After resolving all the problemas, the basic LoRa functions, such as join and packet sending functions, were confirmed to be operational. Subsequently, functions enabling the use of MAC commands were implemented and tested.Finally, a document provided by the LoRa Alliance was used as a guide for MAC command conformity tests. This document specifies the tests that should be performed to verify the functionality of different features of version 1.0.4 of the LoRaWAN protocol to certify a device.Duarte, RuiCasaleiro, JoãoRCIPLGuerreiro, Miguel Mário Inácio2024-01-26T15:00:15Z20232023-01-01T00:00:00Zinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfhttp://hdl.handle.net/10400.21/17023TID:203471474porGuerreiro, Miguel Mário Inácio - Implementação do LoRaWAN 1.0.4 e 1.1 em micropython. Lisboa: Instituto Superior de Engenharia de Lisboa, 2023. Dissertação de Mestradoinfo:eu-repo/semantics/openAccessreponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos)instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãoinstacron:RCAAP2024-01-31T02:16:25Zoai:repositorio.ipl.pt:10400.21/17023Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireopendoar:71602024-03-20T01:59:15.794069Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informaçãofalse |
dc.title.none.fl_str_mv |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropython |
title |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropython |
spellingShingle |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropython Guerreiro, Miguel Mário Inácio LoRa LoRaWAN ESP32. firmware Pycom MicroPython LoRa LoRaWAN ESP32 Firmware Pycom |
title_short |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropython |
title_full |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropython |
title_fullStr |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropython |
title_full_unstemmed |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropython |
title_sort |
Implementação do LoRaWAN 1.0.4 e 1.1 em micropython |
author |
Guerreiro, Miguel Mário Inácio |
author_facet |
Guerreiro, Miguel Mário Inácio |
author_role |
author |
dc.contributor.none.fl_str_mv |
Duarte, Rui Casaleiro, João RCIPL |
dc.contributor.author.fl_str_mv |
Guerreiro, Miguel Mário Inácio |
dc.subject.por.fl_str_mv |
LoRa LoRaWAN ESP32. firmware Pycom MicroPython LoRa LoRaWAN ESP32 Firmware Pycom |
topic |
LoRa LoRaWAN ESP32. firmware Pycom MicroPython LoRa LoRaWAN ESP32 Firmware Pycom |
description |
Dissertação para obtenção do Grau de Mestre em Engenharia Eletrónica e Telecomunicações |
publishDate |
2023 |
dc.date.none.fl_str_mv |
2023 2023-01-01T00:00:00Z 2024-01-26T15:00:15Z |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/masterThesis |
format |
masterThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10400.21/17023 TID:203471474 |
url |
http://hdl.handle.net/10400.21/17023 |
identifier_str_mv |
TID:203471474 |
dc.language.iso.fl_str_mv |
por |
language |
por |
dc.relation.none.fl_str_mv |
Guerreiro, Miguel Mário Inácio - Implementação do LoRaWAN 1.0.4 e 1.1 em micropython. Lisboa: Instituto Superior de Engenharia de Lisboa, 2023. Dissertação de Mestrado |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) instname:Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação instacron:RCAAP |
instname_str |
Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
instacron_str |
RCAAP |
institution |
RCAAP |
reponame_str |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
collection |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) |
repository.name.fl_str_mv |
Repositório Científico de Acesso Aberto de Portugal (Repositórios Cientìficos) - Agência para a Sociedade do Conhecimento (UMIC) - FCT - Sociedade da Informação |
repository.mail.fl_str_mv |
|
_version_ |
1799137076227080192 |