Skip to content
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

Estabelece restrições para trabalhos da Arduino Compile para placas sem interface Serial nativa #73

Merged
merged 9 commits into from
Apr 7, 2021
Merged

Conversation

SteffanoP
Copy link
Contributor

@SteffanoP SteffanoP commented Mar 30, 2021

Sumário

Esta Pull Request visa estabelecer restrições de trabalhos (jobs) para placas sem interface Serial nativa (Ex.: Arduino Gemma e Franzininho).

Outras Informações

Além disso, insere os códigos controleGradual.ino e ASCII.ino para compile, por meio da Action Arduino Compile.

EDIT (03/04/2021):

Limita a versão da arduino-cli para a versão 0.17.0, pois versões superiores apresentaram mudanças com quebra.

Testes

Foram realizados testes em minha fork, disponível em SteffanoP/Brasilino.

Nas Actions deste projeto é possível visualizar alguns testes.

Como também nas Actions de minha fork para ver todos os testes.

Descrição das mudanças

  • Individualiza as etapas (steps) para cada Sketch (e353950)
  • Restringe o Compile dos códigos para placas com interface serial nativa (6a6c762 e bda3c7a):
    • analogicoSerial.ino
    • quarentaedois.ino
    • Luminosidade.ino
    • Temperatura.ino
    • Ultrassom-HC-SR04.ino
  • Volta a testar os Sketches (bda3c7a):
    • controleGradual.ino
    • ASCII.ino

Benefícios

Estabelece compatibilidade da Integração Contínua Arduino Compile com placas de interface serial não nativa, ou seja, as placas arduino-gemma e micronucleus-franzininho irão ser restringidos em etapas (steps) do trabalho (job), resolvendo os problemas constatados em #68. A restrição do compile se vale apenas para exemplos em que a interface Serial não é nativa (exemplos com comandos como iniciarSerial() e escreverSerial() passam a não ser válidos de teste para essas placas).

Possíveis desvantagens

Ainda há a necessidade de adicionar um script para realizar o compile de forma automática, atualmente é necessário alterar manualmente o destino de compile no ./.github/workflows/compile.yml sempre que for adicionado um exemplo.

Problemas Relacionados

Resolves #68

*compatibilidade para placas sem comunicação Serial (Ex.: Arduino Gemma, Franzininho)

*Cria uma variável para as placas que diz se a placa possui comunicação serial
*condição para executar jobs (trabalhos) caso a placa não tenha comn Serial habilitado
Se refere as placas que possuem comunicação serial por meio de interface USB padrão do Arduino, que é a mesma serial do Monitor Serial. Essa variável é necessária, pois há placas (arduino-gemma e micronucleus-franzininho) que trabalham com processador que não suporta o comando `iniciarSerial()` dos exemplos.
Volta a testar com Arduino Compile programas que estavam descontinuados em #68
Retira a restrição de compile para interface serial, visto que este código não usa interface Serial.
@SteffanoP
Copy link
Contributor Author

SteffanoP commented Apr 3, 2021

@ErickSimoes e @OtacilioN, corrigi os bugs com a versão da arduino-cli. Agora limitei a Action Arduino Compile para a versão arduino/[email protected]; visto que, a partir da próxima versão são inseridos mudanças que quebram o estado do código atual. Como a arduino-cli não possui uma versão 1.0, pretende-se manter esta por hora: garantir estabilidade e funcionamento.

A PR está pronta para Review e Merge!

Copy link
Owner

@OtacilioN OtacilioN left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Perfeito para Merge, @ErickSimoes pode revisar e apertar o botão ✅

@OtacilioN OtacilioN merged commit 5063d60 into OtacilioN:master Apr 7, 2021
@SteffanoP SteffanoP deleted the test-compatibilidadeserial branch April 7, 2021 20:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Alguns Exemplos foram descontinuados nas versões mais recentes
3 participants