Terminé Message d erreur sous VSCODE avec platformIO

  • Auteur de la discussion drum22
  • Date de début
D

drum22

Apprenti
Bonjour,
suite a l utilisation de l IDE Arduino 1.8.16, j ai voulu essayer l environnement PlatFormIO sous Visual Code. (OS : Win 7 SP1)

Un sketch qui "tourne" sous Arduino 1.8.16 plante lors de la verification (build) sou sVSCode
avec les lignes suivantes :
Verbose mode can be enabled via `-v, --verbose` option
CONFIGURATION: https://docs.platformio.org/page/boards/atmelavr/uno.html
PLATFORM: Atmel AVR (3.4.0) > Arduino Uno
HARDWARE: ATMEGA328P 16MHz, 2KB RAM, 31.50KB Flash
DEBUG: Current (avr-stub) On-board (avr-stub, simavr)
PACKAGES:
- framework-arduino-avr 5.1.0
- toolchain-atmelavr 1.70300.191015 (7.3.0)
LDF: Library Dependency Finder -> http://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 5 compatible libraries
Scanning dependencies...
No dependencies
Building in release mode
Linking .pio\build\uno\firmware.elf
.pio\build\uno\src\main.cpp.o (symbol from plugin): In function `setup':
(.text+0x0): multiple definition of `setup'
.pio\build\uno\src\AU03.cpp.o (symbol from plugin):(.text+0x0): first defined here
.pio\build\uno\src\main.cpp.o (symbol from plugin): In function `setup':
(.text+0x0): multiple definition of `loop'
.pio\build\uno\src\AU03.cpp.o (symbol from plugin):(.text+0x0): first defined here
collect2.exe: error: ld returned 1 exit status

*** [.pio\build\uno\firmware.elf] Error 1

Comme le code s execute sous IDE Arduino, le probleme doit etre du cote de VsCode ...???
Quel(s) prametre(s) ai je oublies lors de l installation de PlatFormIO ?!
Merci de vos avis
a++
 
D

drum22

Apprenti
Bonjour,
Apres quelques recherches, je m auto-reponds avec un element de "solution", du moins d explication...
en esperant que ca serve a d autres qui pourraient buter sur le meme probleme...?! :wink:
Il semblerait (je prefere parler au conditionnel) avec Visual Studio Code qu il faille dans un "nouveau projet" ouvrir un et un seul "nouveau programme" (lui, meme place dans l arborescence SRC).
Cette arborescence de projet qui, elle meme, contient son propre platformio.ini ... (un projet autre a, par exemple, une communication a 115200 alors que ce projet la, en particulier, a une communication a 9600...)
La! la compilation s execute sans erreur.
Il s agirait donc d un environnement tres ferme et tres cloisonne entre chacun des projet et de leur repertoire rattache... :???:
Mais comme je n ai pas encore televerse le programme, le test n est pas effectif a 100 %.
a++
 
D

didierh

Ouvrier
Hello
systématiquement j'ouvre le dossier "racine" du projet. Si j'importe un .ino précédemment développé/compilé avec arduino, je crée un nouveau projet et j'y copie le .ino

Dans ce projet tu as différents sous dossiers:
  • lib : les libraires spécifiques à ton projet (si nécessaire)
  • include: les fichiers .h de ton projet (si nécessaire)
  • src: le dossier source (fichiers *.c, cpp, .ino)
  • test: dossier pour le "unit testing" (tu peux ignorer pour l'instant)
  • le fichier platfomrio.ini: la config de ton projet
Un example avec GRBL, ça ressemble à ça:
1637858511397.png

A+ Didier
 
D

drum22

Apprenti
Merci Didierh
j avais considere le repertoire Src pour mettre... les sources !! tous les fichiers source...
erreur !
C est bien en isolant un seul et unique programme que je me suis rendu compte que ca "passait".
je vais continuer a progresser dans cet environnement.
De toute facon, tous les autres IDE rencontrent de bugs, alors autant perseverer dans celui ci ... :wink:
a++

p.s: par contre, je ne sais par quelle operation, en utilisant le meme port USB, le port Com avait change et ce changement de port (dans Arduino guenino) etait completement grise.
Quant a VSCode, ca plantait lamentablement. j ai tout vire dans la "gestion de peripherique" et j ai recharge les drivers.
tout est rentre dans l ordre. Ouf !
 
D

drum22

Apprenti
Re bonjour a la communaute,
toujours avec VSC & PlatFormIO, je rencontre le souci suivant :
- apres avoir fait la sauvegarde du source dans son "bon" repertoire, Fait la verification, je fais "televerser"...
et la ! bien que le bon port Com (7) figure dans la liste de taches, les voyants cote Arduino Uno, clignotent, Uno se re-initialise et ... le programme conserve sa version "precedente" (en execution) !!
Comme si le nouveau televersement, bien que fait, n etait pas pris en compte....
du coup, je contourne en faisant un copier/coller dans l IDE arduino, sauvegarde, controle, televersement et la... la nouvelle mouture est prise en compte !!
Quel parametrage ai je oublie dans Visual Studio Code ?
Faut il fermer quelque chose terminal ou autre ?
(entre temps, j ai fait une maj de Arduino 1.8.3 (je crois !) vers Arduino 1.8.4... c est pas "ca" quand meme !! :|
Merci de votre aide
a++
 
S

speedjf37

Compagnon
Bonjour,

toujours avec VSC & PlatFormIO, je rencontre le souci suivant :

bien que le bon port Com (7) figure dans la liste de taches, les voyants cote Arduino Uno, clignotent, Uno se re-initialise et ... le programme conserve sa version "precedente" (en execution) :
Je n'ai pas rencontré ce problème .



J'ai utilisé VSC & PlatFormIO pour des "SonOff R2" avec Tasmota pour de la domotique non compilable sous IDE Arduino.
C'est une usine à gaz et c'est absolument ingérable au niveau des com.


Pour une histoire de versions c'était complètement inutilisable.

L'IDE Arduino est loin d'être parfait mais il fonctionne.
S'il pouvait gérer un environnement (carte et com) par Sketch ce serait plus souple.

Cordialement JF
 
D

didierh

Ouvrier
Hello

une des raisons pour passer à VSCode & PIO + la gestion des boards par projets (sketch) + la gestion des librairies par projet + la possibilité d'exécuter un scrip avant ou après le build, l'Intellisense dans l'éditeur, l'éditeur en lui même...
Par contre jamais eu de soucis au niveau de l'upload sur une board - que ce soit avec arduino ou PlateformIO - donc il doit y avoir un souci de config dans le projet de drum22 qui coince dans VScode/PIO
A+ Didier
L'IDE Arduino est loin d'être parfait mais il fonctionne.
S'il pouvait gérer un environnement (carte et com) par Sketch ce serait plus souple.
 
D

drum22

Apprenti
Merci a tous les 2 !
c est sur et certain que Visual Studio Code vire a la machine a gaz !!
Mais pour le tout debutant qui decouvre a la fois Arduino UNO (et) la syntaxe de C/C++, l auto-completion me tire d embarras dans de nombreux cas, sans oublier la "liste" des methodes que l on peut utiliser, on auto-apprend, quoi ! :wink:
PIO ? c est quoi ? un equivalent de PlatFormIO ? les +++ (gestion des boards, des librairies par projet,exécution d un scrip avant ou après le build) ce sont des complements a installer ou c est inclus dans ce PIO ?
Merci du complement d infos.
a++)

p.s: Etonnant quand meme cette situation "buggesque", c est assez recent ce "cafouillage", d autant que visuellement, le televersement se fait... mais l execution reste en V-1 !
a tel point, qu en creant une V2 d un programme, j ai cru que les modifs ne fonctionnaient pas (ce qui parfaitement envisageable !! :lol::lol::lol: )
alors que, pour en avoir le coeur net... apres televersement via IDE Arduino, ouf ! les ameliorations etaient "visibles"...
 
D

drum22

Apprenti
:wink: j ai lu trop vite !! Comme dans VSC, y avait aussi une possible install avec "Arduino"... j ai vu "PIO" comme un complement autre... voila tout !
J ai telecharge 2 autres IDE... DsNuino et Programino.
le premier gratuit, le second en ShareWare (mais pour, faut bien le reconnaitre, une somme tres modique ! :rolleyes:)
Pour le moment... :axe: Exit le couple de l annee : VSC & PlatFormIO
j'vais tester tout ca !!
Encore merci pour les retours !
a++
 
D

drum22

Apprenti
Faut re-poster pour pouvoir mettre "Resolu" ? :???:
edit : ben non ! j ai pas "plus d option" pour cocher "Resolu"...
a++
 

Sujets similaires

01power
Réponses
3
Affichages
13 816
01power
01power
D
Réponses
9
Affichages
3 049
David80
D
taratata
Réponses
4
Affichages
4 231
taratata
taratata
Haut