Bonsoir,
Merci beaucoup de vos réponses.
Finalement cette partie est bonne.
Bien cordialement,
Vincent D
Il y a 27 élément(s) pour vins86 (recherche limitée depuis 09-juin 13)
Posté par vins86 sur 28 juillet 2018 - 10:27 dans Autres projets inclassables
Bonsoir,
Merci beaucoup de vos réponses.
Finalement cette partie est bonne.
Bien cordialement,
Vincent D
Posté par vins86 sur 27 juillet 2018 - 06:09 dans Autres projets inclassables
Bonjour,
Je me permet de venir vers vous, car je n'arrive pas à mettre ce schéma en pratique.
Pouvez-vous m'aiguiller s'il vous plaît.
Vincent D
Posté par vins86 sur 29 juillet 2018 - 12:41 dans Autres projets inclassables
J'ai branché tranquillement comme le schéma et tout à fonctionné.
C'était la lecture du schéma qui me posait problème.
Posté par vins86 sur 27 juillet 2018 - 08:07 dans Autres projets inclassables
Bonjour Path,
j'ai un Breadboard, les leds, les resistances et boutons.
Maintenant, je n'arrive pas à comprendre comment sont branchés les leds et les boutons.
J'ai testé des choses et aucun résultat.
Si je comprend, faut mettre un élément par pin et entre chaque élément et le GND mettre une résistance?
Posté par vins86 sur 29 novembre 2018 - 12:01 dans Conseils et aide aux débutants, livres et kits en robotique
Merci Path d'avoir répondu.
Mais finalement, nous achetons une solution existante.
Posté par vins86 sur 27 novembre 2018 - 07:56 dans Conseils et aide aux débutants, livres et kits en robotique
Bonsoir Melmet,
Je suis preneur de toutes propositions.
J'ai une préférence pour du filaire.
Posté par vins86 sur 27 novembre 2018 - 02:37 dans Conseils et aide aux débutants, livres et kits en robotique
Merci Oracid.
Posté par vins86 sur 27 novembre 2018 - 10:21 dans Conseils et aide aux débutants, livres et kits en robotique
Je souhaite que çà soit filaire pour plusieurs chose.
Déjà ne pas être parasité par d'autres systèmes, et pour une fiabilité de long distance.
As-tu quelques choses à me proposer
Posté par vins86 sur 28 novembre 2018 - 09:27 dans Conseils et aide aux débutants, livres et kits en robotique
Bonjour gerardosamara,
Effectivement, je n'ai pas donné beaucoup de détail donc je comprend que pour me répondre c'est pas facile.
Je vais essayé d'être le plus clair possible.
Je souhaite créer un boitier intercom. C'est à dire 3 prises (1 pour le micro casque principale et 2 micro deux autres micros casques. Nous souhaitons que ces prises soient de préférence en RJ45 au lieu de XLR
Sur le boitier, nous avons la possibilité de parler que 1 une personne ou au 2.
Je parle actuellement, pour 3 casques mais notre projet à le but de s'étendre.
Voici un article d"exemple avec des prises xlr:
Posté par vins86 sur 27 novembre 2018 - 09:18 dans Conseils et aide aux débutants, livres et kits en robotique
Bonjour
Je me permet de venir vers vous car je souhaiterais réaliser un talkie-walkie avec deux arduino et un cable rj45. Est-ce réalisable
Je suis intéressé par toutes propositions.
Vincent.
Posté par vins86 sur 27 novembre 2018 - 11:51 dans Conseils et aide aux débutants, livres et kits en robotique
Merci de la réponse.
En faite, je voudrais pouvoir faire des conversations audio avec 2 arduino un micro un casque, avec un câble réseau.
Posté par vins86 sur 29 juillet 2018 - 05:59 dans Autres projets inclassables
Bonjour Mike,
Quand j'appuie sur un bouton le keypad ne me retourne pas de valeur et ne fonctionne pas du tout, j'ai l'impression.
Même, en faisant juste ceci:
#include <Keypad.h> const byte ROWS = 8; const byte COLS = 10; char keys[ROWS][COLS] = { {'1','9','h','p','x','G','O','W','$','>'}, {'2','a','i','q','y','H','P','X','%','?'}, {'3','b','j','r','A','I','Q','Y','^','/'}, {'4','c','k','s','B','J','R','Z','&','-'}, {'5','d','l','t','C','K','S','~','*','['}, {'6','e','m','u','D','L','T','!','(',']'}, {'7','f','n','v','E','M','U','@',')',';'}, {'8','g','o','w','F','N','V','#','<','+'} }; byte rowPins[ROWS] = {32,30,28,24,23,27,31,35}; byte colPins[COLS] = {1,3,4,5,6,8,9,10,11,12}; //not actually using these pins, just binary conversion to drive encoder Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); void keypadEvent(KeypadEvent key){ String echoMsg; String action; switch (keypad.getState()){ case PRESSED:{ action = "Down,"; echoMsg = action+key; Serial.println(key); break; } case HOLD:{ action = "Hold,"; echoMsg = action+key; Serial.println(key); break; } } } void setup(){ Serial.begin(9600); } void loop(){ char key = keypad.getKey(); if (key != NO_KEY){ Serial.println(key); } }
Cordialement,
Vincent D
Posté par vins86 sur 25 juillet 2018 - 01:09 dans Autres projets inclassables
Merci pour vos réponses.
Alors, j'ai fait plusieurs tests.
J'ai changé les ports; (sa fait planter mon atem)
j'ai modifié => pinMode(7, INPUT);
par
=> pinMode(7, INPUT_PULLUP) (rien ne change)
J'ai testé le pin7 avec la masse en 1 cable, j'obtiens 000000 puis 10101010101010101.
Je me demande si c'est pas ma function qui ne fonctionne pas. Pourtant sur un tuto en vidéo. pas de problème.
Voici mon code actuel :
/***************** * Example: ATEM Library Functional test * Connects to the ATEM Switcher and sends a new command everytime digital pin 7 is HIGH on the arduino (connect a button with pull-down res.) * This is mostly an example for debugging a development of the library. However, it may serve as a reference for how to operate various functions in the Switcher. * * - kasper */ /***************** * TO MAKE THIS EXAMPLE WORK: * - You must have an Arduino with Ethernet Shield (or compatible such as "Arduino Ethernet", http://arduino.cc/en/Main/ArduinoBoardEthernet) * - You must have an Atem Switcher connected to the same network as the Arduino - and you should have it working with the desktop software * - You must make specific set ups in the below lines where the comment "// SETUP" is found! */ #include <SPI.h> // needed for Arduino versions later than 0018 #include <Ethernet.h> // MAC address and IP address for this *particular* Ethernet Shield! // MAC address is printed on the shield // IP address is an available address you choose on your subnet where the switcher is also present: byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0xE8, 0xE9 }; // <= SETUP IPAddress ip(192, 168, 1, 99); // <= SETUP // Include ATEM library and make an instance: #include <ATEM.h> // Connect to an ATEM switcher on this address and using this local port: // The port number is chosen randomly among high numbers. ATEM AtemSwitcher(IPAddress(192, 168, 1, 105), 51707); // <= SETUP (the IP address of the ATEM switcher) void setup() { // Start the Ethernet, Serial (debugging) and UDP: Ethernet.begin(mac,ip); Serial.begin(9600); Serial.println("Serial started."); pinMode(7, INPUT); // Initialize a connection to the switcher: AtemSwitcher.serialOutput(true); AtemSwitcher.connect(); } boolean buttonState = false; int c = 0; void loop() { // Check for packets, respond to them etc. Keeping the connection alive! AtemSwitcher.runLoop(); // Detech press of a button on digital input 7: int t = digitalRead(7); Serial.println(t); switch(t) { // Program select case 0: Serial.println("entrer 1"); AtemSwitcher.changeProgramInput(1); break; case 1: Serial.println("entrer 2"); AtemSwitcher.changeProgramInput(2); break; } }
Posté par vins86 sur 04 août 2018 - 08:17 dans Autres projets inclassables
Du coup, problème résolu. tout fonctionne à la perfection.
Posté par vins86 sur 25 juillet 2018 - 01:10 dans Autres projets inclassables
Si je test une autre librairie, sa fonctionne mais elle représente 95% de la mémoire
Je sais pas si on peut augmenter la mémoire d'un arduino mais 95% fait pas mal
Posté par vins86 sur 03 août 2018 - 04:31 dans Autres projets inclassables
Bonjour,
Après un moment d'absence, me revoilà.
Déjà, je souhaiterais vous informer que mon projet avance très bien, je récupère les touches avec un programme un sale.
Je souhaite maintenant, découper le projet en plusieurs classes; pour les potentiomètres, j'ai eu aucun problème.
Mais encore un problème au niveau du keypad.
Voici les erreurs:
Detecting libraries used... "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_975374\sketch\GVG100.ino.cpp" -o "nul" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Keypad" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_975374\sketch\GVG100.ino.cpp" -o "nul" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Keypad" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Potentiometre" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_975374\sketch\GVG100.ino.cpp" -o "nul" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Keypad" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Potentiometre" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Touche" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_975374\sketch\GVG100.ino.cpp" -o "nul" Using cached library dependencies for file: C:\Users\DPCLive\Documents\Arduino\libraries\Keypad\Keypad.cpp Using cached library dependencies for file: C:\Users\DPCLive\Documents\Arduino\libraries\Keypad\utility\Key.cpp UsCompiling libraries... Compiling library "Keypad" Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_975374\libraries\Keypad\Keypad.cpp.o Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_975374\libraries\Keypad\utility\Key.cpp.o Compiling library "Potentiometre" Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_975374\libraries\Potentiometre\Potentiometre.cpp.o Compiling library "Touche" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Keypad" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Potentiometre" "-IC:\Users\DPCLive\Documents\Arduino\libraries\Touche" "C:\Users\DPCLive\Documents\Arduino\libraries\Touche\Touche.cpp" -o "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_975374\libraries\Touche\Touche.cpp.o" In file included from C:\Users\DPCLive\Documents\Arduino\libraries\Touche\Touche.cpp:12:0: C:\Users\DPCLive\Documents\Arduino\libraries\Touche\Touche.cpp:15:36: error: 'keys' was not declared in this scope Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, 8, 10); ^ C:\Users\DPCLive\Documents\Arduino\libraries\Keypad/Keypad.h:78:31: note: in definition of macro 'makeKeymap' #define makeKeymap(x) ((char*)x) ^ C:\Users\DPCLive\Documents\Arduino\libraries\Touche\Touche.cpp:15:43: error: 'rowPins' was not declared in this scope Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, 8, 10); ^ C:\Users\DPCLive\Documents\Arduino\libraries\Touche\Touche.cpp:15:52: error: 'colPins' was not declared in this scope Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, 8, 10); ^ C:\Users\DPCLive\Documents\Arduino\libraries\Touche\Touche.cpp: In member function 'void Touche::Init()': C:\Users\DPCLive\Documents\Arduino\libraries\Touche\Touche.cpp:32:37: error: invalid use of non-static member function keypad.addEventListener(keypadEvent); ^ Utilisation de la bibliothèque Keypad prise dans le dossier : C:\Users\DPCLive\Documents\Arduino\libraries\Keypad (legacy) Utilisation de la bibliothèque Potentiometre prise dans le dossier : C:\Users\DPCLive\Documents\Arduino\libraries\Potentiometre (legacy) Utilisation de la bibliothèque Touche prise dans le dossier : C:\Users\DPCLive\Documents\Arduino\libraries\Touche (legacy) exit status 1 Erreur de compilation pour la carte Arduino/Genuino Mega or Mega 2560
Voici le fichier Touche.cpp :
#if defined(ARDUINO) && ARDUINO >= 100 #include "Arduino.h" #else #include "WProgram.h" #endif #include <Keypad.h> #include <Touche.h> Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, 8, 10); Touche::Touche(){} void Touche::Init(){ pinMode(LEDwrite, OUTPUT); digitalWrite(LEDwrite, HIGH); pinMode(buttread, OUTPUT); digitalWrite(buttread, HIGH); pinMode(W0, OUTPUT); pinMode(W1, OUTPUT); pinMode(W2, OUTPUT); pinMode(W3, OUTPUT); for(int number =0;number<=11; number ++) { DecoderOut(number); } keypad.addEventListener(keypadEvent); } void Touche::keypadEvent(KeypadEvent key){ String echoMsg; String action; switch (keypad.getState()){ case PRESSED:{ action = "Down,"; echoMsg = action+key; //Firmata.sendString(echoMsg.c_str()); break; } case HOLD:{ action = "Hold,"; echoMsg = action+key; //Firmata.sendString(echoMsg.c_str()); break; } } } void Touche::DecoderOut(byte number) { for(int i =0;i<4; i ++) { digitalWrite(DecoderPins[i],BCD[number][i]); } delay(2); digitalWrite(LEDwrite, LOW); delay(2); digitalWrite(LEDwrite, HIGH); }
Et le fichier .h :
/* Copyright 2018 Vincent DESREUMAUX */ /** Version 1.0.0 **/ #ifndef Touche_h #define Touche_h #if defined(ARDUINO) && ARDUINO >= 100 #include "Arduino.h" #else #include "WProgram.h" #endif #define BITSB 8 #define TOLERANCE 10 #define Data0 32 //15 #define Data1 30 //16 #define Data2 28 //17 #define Data3 24 //19 #define Data4 23 // #define Data5 27 // #define Data6 31 // #define Data7 35 // #define W0 40 // #define W1 38 // #define W2 36 // #define W3 34 // #define AnalRead 33 //5 #define AnalConv 29 //7 #define LEDwrite 26 //18 #define buttread 22 //20 #define Display 25 //9 class Touche { public: int numTouche; int valeurTouche; private: int DecoderPins[4] = {40,38,36,34}; byte BCD[16][4] = {{0, 0, 0, 0}, {1, 0, 0, 0}, {0, 1, 0, 0}, {1, 1, 0, 0}, {0, 0, 1, 0}, {1, 0, 1, 0}, {0, 1, 1, 0}, {1, 1, 1, 0}, {0, 0, 0, 1}, {1, 0, 0, 1}, {0, 1, 0, 1}, {1, 1, 0, 1}, {0, 0, 1, 1}, {1, 0, 1, 1}, {0, 1, 1, 1}, {1, 1, 1, 1} }; //BCD code char keys[8][10] = { {'1','9','h','p','x','G','O','W','$','>'}, {'2','a','i','q','y','H','P','X','%','?'}, {'3','b','j','r','A','I','Q','Y','^','/'}, {'4','c','k','s','B','J','R','Z','&','-'}, {'5','d','l','t','C','K','S','~','*','['}, {'6','e','m','u','D','L','T','!','(',']'}, {'7','f','n','v','E','M','U','@',')',';'}, {'8','g','o','w','F','N','V','#','<','+'} }; byte rowPins[8] = {32,30,28,24,23,27,31,35}; byte colPins[10] = {2,3,4,5,6,8,9,10,11,12}; //not actually using these pins, just binary conversion to drive encoder public: Touche(); void Init(); void keypadEvent(KeypadEvent key); void DecoderOut(byte number); /******************************** * General Getter/Setter methods ********************************/ public: int getNumTouche(); void setNumTouche(int pnumTouche); int getValeurTouche(); void setValeurTouche(int pvaleurTouche); }; #endif
En espérant que vous puissiez m'aiguiller dans ces erreurs.
Cordialement,
Vincent D
Posté par vins86 sur 25 juillet 2018 - 08:57 dans Autres projets inclassables
Merci beaucoup pour votre aide.
En faite, c'est que sur le arduino, j'ai insérer en onglet les fichier atem.cpp et atem.h.
Du moins, je suppose car plus de message en les retirant.
Posté par vins86 sur 04 août 2018 - 03:04 dans Autres projets inclassables
J'ai mis toutes les variables dans le fichier cpp. et plus d'erreur.
Posté par vins86 sur 27 juillet 2018 - 02:46 dans Autres projets inclassables
Bonjour Mike,
Merci. Mais finalement, c'est que j'avais pas modifié le bon fichier. J'avais modifié une sauvegarde mais pas le fichier dans l'arduino.
A titre d'information, j'arrive depuis les boutons à communiquer avec le mélangeur.
Posté par vins86 sur 27 juillet 2018 - 10:30 dans Autres projets inclassables
Bonjour,
pour tout vous dire, la connexion ne se fait pas à chaque fois.
Donc afin de tester si c'est bien connecté je souhaiterais faire une vérification.
Tant que la connexion n'est pas établis, alors testé jusqu'à l'avoir.
J'ai une fonction qui s'appel isConnected dans Atem.ccp.
Hors, quand je fais appel à cette fonction boolean, j'ai cette erreur:
C:\Users\DPCLive\AppData\Local\Temp\ccOyL2Dk.ltrans0.ltrans.o: In function `main': ccOyL2Dk.ltrans0.o:(.text.startup+0x38e): undefined reference to `ATEM::isConnected()' collect2.exe: error: ld returned 1 exit status
Pourtant, elle est bien présente dans le fichier.
/** * If true, we had a response from the switcher when trying to send a hello packet. */ bool ATEM::isConnected() { return _isConnected; }
Cordialement,
Vincent D
Posté par vins86 sur 25 juillet 2018 - 11:11 dans Autres projets inclassables
Bonjour,
Nous avons bien le " Serial started" qui s'affiche dans le moniteur série ainsi que "Sending connect packet to ATEM switcher on IP 192.168.1.105 from port 51707
Posté par vins86 sur 25 juillet 2018 - 07:14 dans Autres projets inclassables
Bonsoir,
j'avance.
Maintenant, je suis confronté à un message d'erreur et je ne comprend pas pourquoi, le voici :
Arduino : 1.8.5 (Windows 7), Carte : "Arduino/Genuino Mega or Mega 2560, ATmega2560 (Mega 2560)" C:\Program Files (x86)\Arduino\arduino-builder -dump-prefs -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\DPCLive\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\DPCLive\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\DPCLive\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -vid-pid=0X2341_0X0042 -ide-version=10805 -build-path C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456 -warnings=none -build-cache C:\Users\DPCLive\AppData\Local\Temp\arduino_cache_633834 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2 -prefs=runtime.tools.arduinoOTA.path=C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\arduinoOTA\1.1.1 -prefs=runtime.tools.avrdude.path=C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9 -verbose C:\Users\DPCLive\Documents\Arduino\Libraries\ATEM\examples\ATEMbasicControl\ATEMbasicControl.ino C:\Program Files (x86)\Arduino\arduino-builder -compile -logger=machine -hardware C:\Program Files (x86)\Arduino\hardware -hardware C:\Users\DPCLive\AppData\Local\Arduino15\packages -tools C:\Program Files (x86)\Arduino\tools-builder -tools C:\Program Files (x86)\Arduino\hardware\tools\avr -tools C:\Users\DPCLive\AppData\Local\Arduino15\packages -built-in-libraries C:\Program Files (x86)\Arduino\libraries -libraries C:\Users\DPCLive\Documents\Arduino\libraries -fqbn=arduino:avr:mega:cpu=atmega2560 -vid-pid=0X2341_0X0042 -ide-version=10805 -build-path C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456 -warnings=none -build-cache C:\Users\DPCLive\AppData\Local\Temp\arduino_cache_633834 -prefs=build.warn_data_percentage=75 -prefs=runtime.tools.avr-gcc.path=C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2 -prefs=runtime.tools.arduinoOTA.path=C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\arduinoOTA\1.1.1 -prefs=runtime.tools.avrdude.path=C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino9 -verbose C:\Users\DPCLive\Documents\Arduino\Libraries\ATEM\examples\ATEMbasicControl\ATEMbasicControl.ino Using board 'mega' from platform in folder: C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21 Using core 'arduino' from platform in folder: C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21 Detecting libraries used... "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEMbasicControl.ino.cpp" -o "nul" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI\src" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEMbasicControl.ino.cpp" -o "nul" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\Ethernet\src" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEMbasicControl.ino.cpp" -o "nul" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\Ethernet\src" "-IC:\Users\DPCLive\Documents\Arduino\libraries\ATEM" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEMbasicControl.ino.cpp" -o "nul" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\Ethernet\src" "-IC:\Users\DPCLive\Documents\Arduino\libraries\ATEM" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp" -o "nul" Using cached library dependencies for file: C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI\src\SPI.cpp Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\Ethernet\src\Dhcp.cpp Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\Ethernet\src\Dns.cpp Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\Ethernet\src\Ethernet.cpp Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\Ethernet\src\EthernetClient.cpp Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\Ethernet\src\EthernetServer.cpp Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\Ethernet\src\EthernetUdp.cpp Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\Ethernet\src\utility\socket.cpp Using cached library dependencies for file: C:\Program Files (x86)\Arduino\libraries\Ethernet\src\utility\w5100.cpp Using cached library dependencies for file: C:\Users\DPCLive\Documents\Arduino\libraries\ATEM\ATEM.cpp Generating function prototypes... "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -flto -w -x c++ -E -CC -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\Ethernet\src" "-IC:\Users\DPCLive\Documents\Arduino\libraries\ATEM" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEMbasicControl.ino.cpp" -o "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\preproc\ctags_target_for_gcc_minus_e.cpp" "C:\Program Files (x86)\Arduino\tools-builder\ctags\5.8-arduino11/ctags" -u --language-force=c++ -f - --c++-kinds=svpf --fields=KSTtzns --line-directives "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\preproc\ctags_target_for_gcc_minus_e.cpp" Compilation du croquis... "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\Ethernet\src" "-IC:\Users\DPCLive\Documents\Arduino\libraries\ATEM" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp" -o "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o" "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-g++" -c -g -Os -w -std=gnu++11 -fpermissive -fno-exceptions -ffunction-sections -fdata-sections -fno-threadsafe-statics -MMD -flto -mmcu=atmega2560 -DF_CPU=16000000L -DARDUINO=10805 -DARDUINO_AVR_MEGA2560 -DARDUINO_ARCH_AVR "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\cores\arduino" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\variants\mega" "-IC:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI\src" "-IC:\Program Files (x86)\Arduino\libraries\Ethernet\src" "-IC:\Users\DPCLive\Documents\Arduino\libraries\ATEM" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEMbasicControl.ino.cpp" -o "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEMbasicControl.ino.cpp.o" Compiling libraries... Compiling library "SPI" Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\SPI\SPI.cpp.o Compiling library "Ethernet" Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\Dhcp.cpp.o Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\Dns.cpp.o Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\Ethernet.cpp.o Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\EthernetClient.cpp.o Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\EthernetServer.cpp.o Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\EthernetUdp.cpp.o Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\utility\socket.cpp.o Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\utility\w5100.cpp.o Compiling library "ATEM" Utilisation du fichier déjà compilé : C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o Compiling core... Using precompiled core Linking everything together... "C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\tools\avr-gcc\4.9.2-atmel3.5.4-arduino2/bin/avr-gcc" -w -Os -g -flto -fuse-linker-plugin -Wl,--gc-sections,--relax -mmcu=atmega2560 -o "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456/ATEMbasicControl.ino.elf" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEMbasicControl.ino.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\SPI\SPI.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\Dhcp.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\Dns.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\Ethernet.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\EthernetClient.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\EthernetServer.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\EthernetUdp.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\utility\socket.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\Ethernet\utility\w5100.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o" "C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456/..\arduino_cache_633834\core\core_arduino_avr_mega_cpu_atmega2560_215a597a7c1553c9dc2a390ff2795696.a" "-LC:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456" -lm C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getATEMmodel()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here c:/users/dpclive/appdata/local/arduino15/packages/arduino/tools/avr-gcc/4.9.2-atmel3.5.4-arduino2/bin/../lib/gcc/avr/4.9.2/../../../../avr/bin/ld.exe: Disabling relaxation: it will not work with multiple definitions C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::ATEM()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::ATEM()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::begin(IPAddress, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::ATEM(IPAddress, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::ATEM(IPAddress, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getSessionID()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::isConnectionTimedOut()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::_wipeCleanPacketBuffer()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::serialOutput(bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::hasInitialized()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getATEM_lastRemotePacketId()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getProgramInput()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getPreviewInput()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getProgramTally(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getPreviewTally(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getUpstreamKeyerStatus(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getUpstreamKeyerOnNextTransitionStatus(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getDownstreamKeyerStatus(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getTransitionPosition()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getTransitionPreview()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getTransitionType()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getTransitionMixTime()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getFadeToBlackState()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getFadeToBlackFrameCount()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getFadeToBlackTime()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getDownstreamKeyTie(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getAuxState(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getMediaPlayerType(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getMediaPlayerStill(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getMediaPlayerClip(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getAudioLevels(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::getAudioChannelMode(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::setAudioLevelReadoutChannel(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::ver42()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::connect()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::_sendAnswerPacket(unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::_sendCommandPacket(char const*, unsigned char*, unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeTransitionPosition(unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeTransitionPositionDone()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeTransitionPreview(bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeTransitionType(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeTransitionMixTime(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeFadeToBlackTime(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeUpstreamKeyNextTransition(unsigned char, bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDownstreamKeyOn(unsigned char, bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDownstreamKeyTie(unsigned char, bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::doAutoDownstreamKeyer(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeAuxState(unsigned char, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::settingsMemorySave()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::settingsMemoryClear()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeColorValue(unsigned char, unsigned int, unsigned int, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::mediaPlayerSelectSource(unsigned char, bool, unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::mediaPlayerClipStart(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeSwitcherVideoFormat(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDVESettingsTemp(unsigned long, unsigned long, unsigned long, unsigned long)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDVEMaskTemp(unsigned long, unsigned long, unsigned long, unsigned long)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDVEBorder(bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDVESettingsTemp_Rate(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDVESettingsTemp_RunKeyFrame(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeKeyerMask(unsigned int, unsigned int, unsigned int, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDownstreamKeyMask(unsigned char, unsigned int, unsigned int, unsigned int, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeUpstreamKeyFillSource(unsigned char, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeUpstreamKeyBlending(unsigned char, bool, unsigned int, unsigned int, bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDownstreamKeyBlending(unsigned char, bool, unsigned int, unsigned int, bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDownstreamKeyFillSource(unsigned char, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeDownstreamKeyKeySource(unsigned char, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::_sendPacketBufferCmdData(char const*, unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeProgramInput(unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changePreviewInput(unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::doCut()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::doAuto(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::doAuto()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::fadeToBlackActivate()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeUpstreamKeyOn(unsigned char, bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeAudioChannelMode(unsigned int, unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeAudioChannelVolume(unsigned int, unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::changeAudioMasterVolume(unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::sendAudioLevelNumbers(bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::setWipeReverseDirection(bool)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::_readToPacketBuffer(unsigned char)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::_readToPacketBuffer()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::_parsePacket(unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::runLoop()' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\libraries\ATEM\ATEM.cpp.o (symbol from plugin): In function `ATEM::getATEMmodel()': (.text+0x0): multiple definition of `ATEM::delay(unsigned int)' C:\Users\DPCLive\AppData\Local\Temp\arduino_build_940456\sketch\ATEM.cpp.o (symbol from plugin):(.text+0x0): first defined here collect2.exe: error: ld returned 1 exit status Utilisation de la bibliothèque SPI version 1.0 dans le dossier: C:\Users\DPCLive\AppData\Local\Arduino15\packages\arduino\hardware\avr\1.6.21\libraries\SPI Utilisation de la bibliothèque Ethernet version 1.1.2 dans le dossier: C:\Program Files (x86)\Arduino\libraries\Ethernet Utilisation de la bibliothèque ATEM prise dans le dossier : C:\Users\DPCLive\Documents\Arduino\libraries\ATEM (legacy) exit status 1 Erreur de compilation pour la carte Arduino/Genuino Mega or Mega 2560
Merci d'avance.
Vincent D
Posté par vins86 sur 25 juillet 2018 - 11:28 dans Autres projets inclassables
Merci.
Malheureusement, aucun changement, les mêmes textes sont affichés.
Posté par vins86 sur 25 juillet 2018 - 10:54 dans Autres projets inclassables
Bonjour,
Je suis nouveau sur le forum.
Je me permet de venir vers vous car nous avons un problème de fonctionnement de notre code.
Afin de faire le nécessaire, nous avons téléchargé une librairie qui contient des fichiers d'exemple.
Nous avons testé un fichier d'exemple, mais nous avons aucun résultat.
A titre d'information, notre shield internet ne contient pas d'adresse MAC, nous avons donc laissé celui en exemple.
Voici le fichier d'exemple :
/***************** * Example: ATEM Library Functional test * Connects to the ATEM Switcher and sends a new command everytime digital pin 7 is HIGH on the arduino (connect a button with pull-down res.) * This is mostly an example for debugging a development of the library. However, it may serve as a reference for how to operate various functions in the Switcher. * * - kasper */ /***************** * TO MAKE THIS EXAMPLE WORK: * - You must have an Arduino with Ethernet Shield (or compatible such as "Arduino Ethernet", http://arduino.cc/en/Main/ArduinoBoardEthernet) * - You must have an Atem Switcher connected to the same network as the Arduino - and you should have it working with the desktop software * - You must make specific set ups in the below lines where the comment "// SETUP" is found! */ #include <SPI.h> // needed for Arduino versions later than 0018 #include <Ethernet.h> // MAC address and IP address for this *particular* Ethernet Shield! // MAC address is printed on the shield // IP address is an available address you choose on your subnet where the switcher is also present: byte mac[] = { 0x90, 0xA2, 0xDA, 0x00, 0xE8, 0xE9 }; // <= SETUP IPAddress ip(192, 168, 1, 99); // <= SETUP // Include ATEM library and make an instance: #include <ATEM.h> // Connect to an ATEM switcher on this address and using this local port: // The port number is chosen randomly among high numbers. ATEM AtemSwitcher(IPAddress(192, 168, 1, 105), 56417); // <= SETUP (the IP address of the ATEM switcher) void setup() { // Start the Ethernet, Serial (debugging) and UDP: Ethernet.begin(mac,ip); Serial.begin(9600); Serial.println("Serial started."); pinMode(7, INPUT); // Initialize a connection to the switcher: AtemSwitcher.serialOutput(true); AtemSwitcher.connect(); } void loop() { // Check for packets, respond to them etc. Keeping the connection alive! AtemSwitcher.runLoop(); AtemSwitcher.changeProgramInput(0); }
Dans l'attente de vous lire.
Bien cordialement,
Vincent D
Posté par vins86 sur 28 juillet 2018 - 11:00 dans Autres projets inclassables
Bonsoir,
Je me permet de revenir. Mon projet avance bien. Maintenant je suis confronté à un problème et sans réponse.
J'essaye de faire fonctionner le keypad, mais impossible. Tous les potentiomètres fonctionnent, mais pas les boutons.
Les différents numéros de pin sont bon.
#include <Wire.h> #include <Keypad.h> #include <Firmata.h> #define BITSB 8 #define TOLERANCE 10 #define Data0 32 //15 #define Data1 30 //16 #define Data2 28 //17 #define Data3 24 //19 #define Data4 23 // #define Data5 27 // #define Data6 31 // #define Data7 35 // #define W0 40 // #define W1 38 // #define W2 36 // #define W3 34 // #define AnalRead 33 //5 #define AnalConv 29 //7 #define LEDwrite 26 //18 #define buttread 22 //20 #define Display 25 //9 #define ON 1 #define OFF 0 int DecoderPins[] = {40, 38, 36, 34}; int BlinkCount = 0; int BlinkStatus = 0; byte AnalogPreviousValues [] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Keypad setup // const byte ROWS = 8; const byte COLS = 10; char keys[ROWS][COLS] = { {'1', '9', 'h', 'p', 'x', 'G', 'O', 'W', '$', '>'}, {'2', 'a', 'i', 'q', 'y', 'H', 'P', 'X', '%', '?'}, {'3', 'b', 'j', 'r', 'A', 'I', 'Q', 'Y', '^', '/'}, {'4', 'c', 'k', 's', 'B', 'J', 'R', 'Z', '&', '-'}, {'5', 'd', 'l', 't', 'C', 'K', 'S', '~', '*', '['}, {'6', 'e', 'm', 'u', 'D', 'L', 'T', '!', '(', ']'}, {'7', 'f', 'n', 'v', 'E', 'M', 'U', '@', ')', ';'}, {'8', 'g', 'o', 'w', 'F', 'N', 'V', '#', '<', '+'} }; byte rowPins[ROWS] = {32, 30, 28, 24, 23, 27, 31, 35}; byte colPins[COLS] = {2, 3, 4, 5, 6, 8, 9, 10, 11, 12}; //not actually using these pins, just binary conversion to drive encoder //BCD to drive decoder pins for LED and Keyboard row select byte BCD[16][4] = {{0, 0, 0, 0}, {1, 0, 0, 0}, {0, 1, 0, 0}, {1, 1, 0, 0}, {0, 0, 1, 0}, {1, 0, 1, 0}, {0, 1, 1, 0}, {1, 1, 1, 0}, {0, 0, 0, 1}, {1, 0, 0, 1}, {0, 1, 0, 1}, {1, 1, 0, 1}, {0, 0, 1, 1}, {1, 0, 1, 1}, {0, 1, 1, 1}, {1, 1, 1, 1} }; //BCD code int bussLEDs[] = {8, 9, 10, 11, 12, 13, 14, 15, 34, 35}; int previewLEDs[] = {16, 17, 18, 19, 20, 21, 22, 23, 32, 33}; int programLEDs [] = {24, 25, 26, 27, 28, 29, 30, 31, 36, 37}; int patternLEDs[] = {68, 69, 66, 65, 64, 76, 77,74, 73, 72}; Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); void keypadEvent(KeypadEvent key) { String echoMsg; String action; switch (keypad.getState()) { case PRESSED: { action = "Down,"; echoMsg = action + key; Firmata.sendString(echoMsg.c_str()); break; } case HOLD: { action = "Hold,"; echoMsg = action + key; Firmata.sendString(echoMsg.c_str()); break; } } } //Led status array #define LedBITSB 8 // number of bits per byte, used for code clarity #define LedDATABITS 80 const int arrayLen = (int)((LedDATABITS - 1) / LedBITSB) + 1; //byte LEDArray[arrayLen]; // for GVG100, length is 10 and that could hold 80 values int LEDArray[LedDATABITS]; int BlinkLEDArray[LedDATABITS]; void initLEDarray() { for (int i = 0; i < LedDATABITS; i++) { LEDArray[i] = 0; } } void initBlinkLEDarray() { for (int i = 0; i < LedDATABITS; i++) { BlinkLEDArray[i] = 0; } } void stringCallback(char *myString) { String lcdString = String(myString); int Line1Index = lcdString.indexOf(','); int Line2Index = lcdString.indexOf(',', Line1Index + 1); // more than one comma? String Line1 = lcdString.substring(0, Line1Index); String Line2 = lcdString.substring(Line1Index + 1); // update led int LEDSelRow = 0; LEDSelRow = Line2.toInt() / 8; //find row number - this rounds automatically //SelectLedRow(LEDSelRow); int LedSelCol = 0; LedSelCol = (Line2.toInt() % 8); //use MOD to find bit position digitalWrite(buttread, HIGH); switch (Line1.toInt()) { case 0: { //set all off initBlinkLEDarray(); WriteData(); digitalWrite(Data0, LOW); digitalWrite(Data1, LOW); digitalWrite(Data2, LOW); digitalWrite(Data3, LOW); digitalWrite(Data4, LOW); digitalWrite(Data5, LOW); digitalWrite(Data6, LOW); digitalWrite(Data7, LOW); for (int number = 0; number <= 11; number ++) { DecoderOut(number); } break; } case 1: { //set LED off LEDArray[Line2.toInt()] = 0; WriteData(); for (int i = 0; i < 8; i++) { digitalWrite(rowPins[i] , LEDArray[(LEDSelRow * 8) + i]); } delay(1); DecoderOut(LEDSelRow); delay(1); break; } case 2: { //Set LED On LEDArray[Line2.toInt()] = 1; WriteData(); for (int i = 0; i < 8; i++) { digitalWrite(rowPins[i] , LEDArray[(LEDSelRow * 8) + i]); } delay(1); DecoderOut(LEDSelRow); delay(1); break; } case 3: { //set LED blink off BlinkLEDArray[Line2.toInt()] = 0; LEDArray[Line2.toInt()] = 0; break; } case 4: { //set LED blink on BlinkLEDArray[Line2.toInt()] = 1; break; } case 5: { //set all KeyBus leds to blink (1) or no blink (0) if (BlinkStatus == 1) { //leds are already on so update blinking and set state off blinkLEDs(); BlinkStatus = 0; } for (int i = 0; i < 10; i++) { BlinkLEDArray[bussLEDs[i]] = Line2.toInt(); } break; } case 6: { //turn off all led and bling state for specified program, preview or keybus //if(BlinkStatus == 1){ //leds are already on so update blinking and set state off //blinkLEDs(); //BlinkStatus = 0; //} for (int i = 0; i < 10; i++) { if (Line2 == "program") { BlinkLEDArray[programLEDs[i]] = 0; LEDArray[programLEDs[i]] = 0; WriteData(); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(0) + j]); } DecoderOut(0); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(8) + j]); } DecoderOut(1); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(32) + j]); } DecoderOut(4); } if (Line2 == "preview") { BlinkLEDArray[previewLEDs[i]] = 0; LEDArray[previewLEDs[i]] = 0; WriteData(); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(0) + j]); } DecoderOut(0); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(32) + j]); } DecoderOut(4); } if (Line2 == "keybus") { BlinkLEDArray[bussLEDs[i]] = 0; LEDArray[bussLEDs[i]] = 0; WriteData(); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(8) + j]); } DecoderOut(1); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(24) + j]); } DecoderOut(3); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(48) + j]); } DecoderOut(6); } if (Line2 == "patterns") { BlinkLEDArray[patternLEDs[i]] = 0; LEDArray[patternLEDs[i]] = 0; WriteData(); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(64) + j]); } DecoderOut(8); for (int j = 0; j < 8; j++) { digitalWrite(rowPins[j] , LEDArray[(72) + j]); } DecoderOut(9); } } break; } case 7: { //Set Pattern Control leds //0 = all off, 1= all blink if (BlinkStatus == 1) { //leds are already on so update blinking and set state off blinkLEDs(); BlinkStatus = 0; } for (int i = 0; i < 10; i++) { BlinkLEDArray[patternLEDs[i]] = Line2.toInt(); if (Line2.toInt() == 0) { //if turning off blink, also turning off leds alltogether LEDArray[patternLEDs[i]] = 0; } } break; } case 9: { readAnalogValues(); break; } } } void SetDataBit(int bit) { switch (bit) { case 0: { digitalWrite(Data0, HIGH); digitalWrite(Data1, LOW); digitalWrite(Data2, LOW); digitalWrite(Data3, LOW); digitalWrite(Data4, LOW); digitalWrite(Data5, LOW); digitalWrite(Data6, LOW); digitalWrite(Data7, LOW); break; } case 1: { digitalWrite(Data0, LOW); digitalWrite(Data1, HIGH); digitalWrite(Data2, LOW); digitalWrite(Data3, LOW); digitalWrite(Data4, LOW); digitalWrite(Data5, LOW); digitalWrite(Data6, LOW); digitalWrite(Data7, LOW); break; } case 2: { digitalWrite(Data0, LOW); digitalWrite(Data1, LOW); digitalWrite(Data2, HIGH); digitalWrite(Data3, LOW); digitalWrite(Data4, LOW); digitalWrite(Data5, LOW); digitalWrite(Data6, LOW); digitalWrite(Data7, LOW); break; } case 3: { digitalWrite(Data0, LOW); digitalWrite(Data1, LOW); digitalWrite(Data2, LOW); digitalWrite(Data3, HIGH); digitalWrite(Data4, LOW); digitalWrite(Data5, LOW); digitalWrite(Data6, LOW); digitalWrite(Data7, LOW); break; } case 4: { digitalWrite(Data0, LOW); digitalWrite(Data1, LOW); digitalWrite(Data2, LOW); digitalWrite(Data3, LOW); digitalWrite(Data4, HIGH); digitalWrite(Data5, LOW); digitalWrite(Data6, LOW); digitalWrite(Data7, LOW); break; } case 5: { digitalWrite(Data0, LOW); digitalWrite(Data1, LOW); digitalWrite(Data2, LOW); digitalWrite(Data3, LOW); digitalWrite(Data4, LOW); digitalWrite(Data5, HIGH); digitalWrite(Data6, LOW); digitalWrite(Data7, LOW); break; } case 6: { digitalWrite(Data0, LOW); digitalWrite(Data1, LOW); digitalWrite(Data2, LOW); digitalWrite(Data3, LOW); digitalWrite(Data4, LOW); digitalWrite(Data5, LOW); digitalWrite(Data6, HIGH); digitalWrite(Data7, LOW); break; } case 7: { digitalWrite(Data0, LOW); digitalWrite(Data1, LOW); digitalWrite(Data2, LOW); digitalWrite(Data3, LOW); digitalWrite(Data4, LOW); digitalWrite(Data5, LOW); digitalWrite(Data6, LOW); digitalWrite(Data7, HIGH); break; } } } void initFirmata() { // Uncomment to save a couple of seconds by disabling the startup blink sequence. Firmata.setFirmwareVersion(FIRMATA_FIRMWARE_MAJOR_VERSION, FIRMATA_FIRMWARE_MINOR_VERSION); Firmata.attach(STRING_DATA, stringCallback); Firmata.disableBlinkVersion(); Firmata.begin(57600); } void setup() { initLEDarray(); initBlinkLEDarray(); pinMode(13, OUTPUT); digitalWrite(13, LOW); pinMode(AnalRead, OUTPUT); digitalWrite(AnalRead, HIGH); pinMode(AnalConv, OUTPUT); digitalWrite(AnalConv, HIGH); pinMode(LEDwrite, OUTPUT); digitalWrite(LEDwrite, HIGH); pinMode(buttread, OUTPUT); digitalWrite(buttread, HIGH); pinMode(Display, OUTPUT); digitalWrite(Display, HIGH); pinMode(W0, OUTPUT); pinMode(W1, OUTPUT); pinMode(W2, OUTPUT); pinMode(W3, OUTPUT); //turn off all lamps WriteData(); digitalWrite(Data0, LOW); digitalWrite(Data1, LOW); digitalWrite(Data2, LOW); digitalWrite(Data3, LOW); digitalWrite(Data4, LOW); digitalWrite(Data5, LOW); digitalWrite(Data6, LOW); digitalWrite(Data7, LOW); for (int number = 0; number <= 11; number ++) { DecoderOut(number); } //set initial analog values in array ReadData(); for (int pot = 0; pot < 15; pot++) { byte currentPotValue = AnalogIn(pot); AnalogPreviousValues[pot] = currentPotValue; } initFirmata(); delay(10); //READY FOR KEYBOARD keypad.addEventListener(keypadEvent); } void loop() { WriteData(); while (Firmata.available()) { Firmata.processInput(); } readAnalogValues(); delay(50); keypad.getKeys(); //serial.update(); //delay(10); BlinkCount ++; if (BlinkCount > 6) { blinkLEDs(); BlinkCount = 0; if (BlinkStatus == 0) { BlinkStatus = 1; } else { BlinkStatus = 0; } } } void ReadData() { pinMode(Data0, INPUT_PULLUP); pinMode(Data1, INPUT_PULLUP); pinMode(Data2, INPUT_PULLUP); pinMode(Data3, INPUT_PULLUP); pinMode(Data4, INPUT_PULLUP); pinMode(Data5, INPUT_PULLUP); pinMode(Data6, INPUT_PULLUP); pinMode(Data7, INPUT_PULLUP); } void WriteData() { pinMode(Data0, OUTPUT); pinMode(Data1, OUTPUT); pinMode(Data2, OUTPUT); pinMode(Data3, OUTPUT); pinMode(Data4, OUTPUT); pinMode(Data5, OUTPUT); pinMode(Data6, OUTPUT); pinMode(Data7, OUTPUT); } void DecoderOut(byte number) { for (int i = 0; i < 4; i ++) { digitalWrite(DecoderPins[i], BCD[number][i]); } delay(2); digitalWrite(LEDwrite, LOW); delay(2); digitalWrite(LEDwrite, HIGH); } void SelectLedRow(byte number) { for (int i = 0; i <= 4; i ++) { if (bitRead(number, 1) == 1) { digitalWrite(DecoderPins[i], HIGH); } else { digitalWrite(DecoderPins[i], LOW); } } } void setLight(int pin, byte val) { byte arrayElem = int((pin) / BITSB); // which element of the ledArray is pin in byte byteElem = (pin - (arrayElem * BITSB)); // and which bit in that byte is the pin //LEDArray[arrayElem] |= (val << byteElem); // zero vals require a two-step process, //if(val == 0) { // first we set them to a one and then // ledArray[arrayElem] ^= (1 << byteElem); // toggle them //} byte temp1 = LEDArray[arrayElem]; bitWrite(temp1, byteElem, val); LEDArray[arrayElem] = temp1; } void blinkLEDs() { for (int i = 0; i < LedDATABITS; i++) { if (BlinkLEDArray[i] == 1) { if (BlinkStatus == 1) { LEDArray[i] = 0; } else { LEDArray[i] = 1; } int LEDSelRow = 0; LEDSelRow = i / 8; //find row number - this rounds automatically //SelectLedRow(LEDSelRow); int LedSelCol = 0; LedSelCol = (i % 8); //use MOD to find bit position digitalWrite(buttread, HIGH); WriteData(); for (int i = 0; i < 8; i++) { digitalWrite(rowPins[i] , LEDArray[(LEDSelRow * 8) + i]); } delay(1); DecoderOut(LEDSelRow); } } } void readAnalogValues() { int AnalogCurrentValues [14]; ReadData(); for (int pot = 0; pot < 15; pot++) { //int area = AnalogIn(pot); //if new value <> old value, send itto serial byte currentPotValue = AnalogIn(pot); int diff = abs(currentPotValue - AnalogPreviousValues[pot]); //need high res for t-bar so don't care about jitter if ((pot == 2) && (diff > 0)) { AnalogPreviousValues[pot] = currentPotValue; String action = "Pot"; String echoMsg = action + pot + ',' + currentPotValue; Firmata.sendString(echoMsg.c_str()); } if ((pot != 2) && (diff > 1)) { AnalogPreviousValues[pot] = currentPotValue; String action = "Pot"; String echoMsg = action + pot + ',' + currentPotValue; Firmata.sendString(echoMsg.c_str()); } } } byte AnalogIn(int number) { for (int i = 0; i < 4; i ++) { digitalWrite(DecoderPins[i], BCD[number][i]); } delay(1); digitalWrite(AnalConv, LOW); delay(1); digitalWrite(AnalConv, HIGH); delay(1); digitalWrite(AnalRead, LOW); //read all 8 bits and write value to array of the pot number byte inByte = 0; for (int r = 0; r < 8; r++) { bitWrite(inByte, r, digitalRead(rowPins[r])); } digitalWrite(AnalRead, HIGH); //return value as int return inByte; }
Après son fonctionnement, je ferais le ménage dans la classe.
En espérant, que ma demande ne soit pas trop complexe.
Dans l'attente de vous lire.
Cordialement,
Vincent D.