Eu gostaria de construir um dispositivo de gateway que use o ESP32. Isso deve se conectar à porta ModBus TCP de um sensor. Para esse propósito, eu gostaria de usar a implementação do Modbus Rust, que já existe. Mas há muito pouca informação sobre como eu poderia obter o código Rust em execução no ESP32.
Alguém pode lançar alguma luz sobre esse tópico?
Respostas:
Rust usa a cadeia de ferramentas LLVM , que é um conjunto de programas usados para compilar a representação intermediária (IR) do LLVM em código específico da plataforma. O processo funciona um pouco assim:
Atualmente, não há back-end para a arquitetura Xtensa usada pelo ESP32. Infelizmente, isso significa que você não pode compilar o código Rust para o ESP32 . Você disse install na sua pergunta, mas presumo que você não quis dizer isso - você deseja executar o código Rust no ESP32, não instalar o compilador Rust lá.
Se você está realmente desesperado para usar o Rust, você poderia, em teoria, usar o LLVM C Backend , que converte o LLVM IR -> C, e usar a cadeia de ferramentas fornecida pela Espressif para compilar o código da máquina ESP32. No entanto, isso será difícil e talvez nem funcione. Você achará muito mais fácil morder a bala e usar C nesse caso, o que é uma pena, porque Rust é uma ótima linguagem, mas seu suporte incorporado não é tão bom quanto os Cs no momento.
fonte
O Xtensa acaba de lançar um back-end oficial do ESP32 / Espressif LLVM e clang front end. Veja seu anúncio aqui: https://esp32.com/viewtopic.php?p=38466 Repos: https://github.com/espressif/llvm-xtensa & https://github.com/espressif/clang-xtensa As O rust é baseado no LLVM, esse novo back-end do ESP32 LLVM deve ajudar a aumentar a probabilidade de suporte ao Rust para o ESP32. O anúncio ainda sugere esse futuro suporte da Rust.
fonte
Como o Aurora0001 disse, você não pode executar o Rust em um ESP32 atualmente (ou o ESP8266 mais antigo).
Há um chip muito semelhante, o RTL8710, recomendado para uso em situações em que você usaria um ESP32, mas deseja usar o Rust.
Aqui está um site em que alguém analisa sua configuração.
fonte