03-20-2013 08:13 AM
Hello,
I am trying to read the ID of my Arduino UNO boards using Labview, but I can not find the right way how to do that.
I tried sending a "*IDN?" command, but I am getting errors.
Does anybody know how can I read the ID of an Arduino board using Labview?
Thanks,
03-20-2013 08:40 AM
*IDN? is a GPIB command and is not supported by the Arduino.
-Sam K
LIFA Developer
03-21-2013 02:51 AM
I appreciate your indication Sammy_K.
But how can I read the ID of an Arduino board using Labview?
03-21-2013 01:42 PM
What are you wanting to use the ID for? In my project, I needed to initiate two arduinos and identify them uniquely so that the correct functions were sent to each. So, what I did was made a custom LIFA function that would return an ID that I hardcoded in each of the firmwares. It was actually quite simple. I used the same firmware for both but I had a #define ARDUINO_ID or something near the top that I changed for each of the Arduinos. We had a total of 8 arduinos and each had it's own ID from 1 to 8.
03-22-2013 03:00 AM
Thanks Nathan_B.!
The application that I will do is quite the same as what you wrote. I need to connect several Arduino's to a computer. Each Arduino has a different functionality (some turn on LEDs, some move motors...) and I want to control them with the same Labview program. The problem is that when I connect more things the Arduinos are changing of port and I don't want to look to it everytime.
What I want is that when I connect the Arduinos to the computer the program looks wich is the right Arduino (reading the ID of each). In this case you will always control the right one.
So, I'm only interested in a way that the Labview can read the ID of each Arduino to use the right one everytime.
I'm not that expert. The problem that I have is that I don't know how can I create this LIFA to read the ID of the Arduinos. I can imagine that you have to send a command with a Visa write block and then Read what is on the bus, but wich commands do I have to use for that?
What I tried is to add the "#define ARDUINO_ID 1" to the LIFA_Base in the LabWIEWInterface.h tab. I loaded it in the Arduino without errors. Is that correct? But now, how can I read the ID from the Labview?
Can you send me a more detailed mail with the procedure that I have to follow?
Thanks,
03-22-2013 02:57 PM
Below is what I wrote for this.
Notes:
LabVIEWInterface.h
// Arduino Identity
#define ARDUINO_ID 5
LabVIEWInterface.pde (inside of "switch(command[1])")
case 0x20: // Identify Self
Serial.print( (unsigned char)ARDUINO_ID, BYTE);
break;
Get Arduino Identity.vi
03-25-2013 07:55 AM
Thank you Nathan_B.!!
You solved the problem I had. I followed this steps and it is working perfect!
03-25-2013 02:45 PM
If you mark my post as "the answer" it will be easier for others to find it when searching for similar issues that you were having.
03-26-2013 03:22 AM
Sorry, but I can not find the option to mark it as "the answer". It does not appear below the messages.