ArduinoGeneral

Romeo v2 and XBee

userHead Eric 2013-01-27 06:50:03 9014 Views19 Replies
Hello,

I can't have XBee work with my new Romeo v2.

This configuration is the following :
- XBee connected to the PC via XBee explorer USB interface
- XBee plugged on the connector of the Romeo

XBees are serie 1 and are working (checked just before), and configured at 9600 bauds. I've just written a basic sketch, printing every second a string on Serial1. The same string is printed on Serial too. I can see the message sent to Serial, but nothing a the other end of the XBee connection.

Just to narrow my background, I'm quite fluent in micro-controllers, XBee operation, programming, et al... ;)

Thanks in advance for any suggestion.

Best regards

Eric
2013-02-11 02:21:34 Hi asifadam93,

I don't have such a program at hand, but if you are just starting with Arduino and XBee, I'll strongly suggest you to buy an USB interface  board such as [url=https://www.dfrobot.com/index.php?route=product/product&filter_name=xbee%20usb&product_id=588#.URdxk5HsPpQ]this one[/url]. With the help of a terminal emulator on the PC side (picocom, minicom,...), you'll be able to check easily the communication by half (ie one Arduino at a time).

Once you've checked that you are able to communicate without any trouble between the Arduino and the PC going through the XBee link, the communication between the two Arduinos will work out of the box.

In addition, if you want to configure the XBee modules themselves, using XCTU tool provided by DIGI for instance, you'll need such an USB interface board.

Believe me, it is a mandatory tool if you plan do work with XBees and go a bit further than just sending and receiving some bytes. And since it costs less than $20...

If you don't want to go this way, the other option is to connect your Arduinos by wires, without installing the XBees on the sockets. Just connect grounds, Rx and Tx (crossing Tx and Rx of course) using simple wires. Remember then to use [b]Serial1[/b] for communicating via this link. When it will work, just replace the wires by the XBees. If they are configured with the factory settings, it will work the same directly, since by default XBees are set in transparent mode (ie acting as a wireless serial link).

With respect to code example, you can have a look at the SerialCallResponse in the example sketches provided with the IDE for instance. It will not be very difficult to modify it so that the reception of a given byte will turn the LED on or off. The other serial comm example sketches will also help understanding how serial comms are used with Arduinos. As said before, just remember that you'll need to use [b]Serial1[/b] to communicate through the XBee (or anything connected to the AP220 socket too), since Serial represents the serial link using the USB connection.

Best regards

Eric
userHeadPic Eric
2013-02-11 02:21:34 Hi asifadam93,

I don't have such a program at hand, but if you are just starting with Arduino and XBee, I'll strongly suggest you to buy an USB interface  board such as [url=https://www.dfrobot.com/index.php?route=product/product&filter_name=xbee%20usb&product_id=588#.URdxk5HsPpQ]this one[/url]. With the help of a terminal emulator on the PC side (picocom, minicom,...), you'll be able to check easily the communication by half (ie one Arduino at a time).

Once you've checked that you are able to communicate without any trouble between the Arduino and the PC going through the XBee link, the communication between the two Arduinos will work out of the box.

In addition, if you want to configure the XBee modules themselves, using XCTU tool provided by DIGI for instance, you'll need such an USB interface board.

Believe me, it is a mandatory tool if you plan do work with XBees and go a bit further than just sending and receiving some bytes. And since it costs less than $20...

If you don't want to go this way, the other option is to connect your Arduinos by wires, without installing the XBees on the sockets. Just connect grounds, Rx and Tx (crossing Tx and Rx of course) using simple wires. Remember then to use [b]Serial1[/b] for communicating via this link. When it will work, just replace the wires by the XBees. If they are configured with the factory settings, it will work the same directly, since by default XBees are set in transparent mode (ie acting as a wireless serial link).

With respect to code example, you can have a look at the SerialCallResponse in the example sketches provided with the IDE for instance. It will not be very difficult to modify it so that the reception of a given byte will turn the LED on or off. The other serial comm example sketches will also help understanding how serial comms are used with Arduinos. As said before, just remember that you'll need to use [b]Serial1[/b] to communicate through the XBee (or anything connected to the AP220 socket too), since Serial represents the serial link using the USB connection.

Best regards

Eric
userHeadPic Eric
2013-02-10 17:40:29 Hi guys, i am new to arduino and especially to romeo v2 and xbee.
I am having some troubles to do a serial communication between my 2 romeo v2 through xbee s1.
I want a simple programme (Ex : turn on or off led 13) to make sure that there is a connection between my two romeo v2.
Thanks
userHeadPic asifadam93
2013-02-10 17:40:29 Hi guys, i am new to arduino and especially to romeo v2 and xbee.
I am having some troubles to do a serial communication between my 2 romeo v2 through xbee s1.
I want a simple programme (Ex : turn on or off led 13) to make sure that there is a connection between my two romeo v2.
Thanks
userHeadPic asifadam93
2013-02-09 15:01:56 Hello,
[quote]You have to send serial data out of Serial1 for it to go out to the XBee.[/quote]Yep of course.
[quote]The problem I am seeing is that my Romeo V2 came with it's XBee socket soldered wrong.  It seems that solder has wicked up the pins and I can't reliably seat the XBee....I have to rock it a bit before it works.  I may have to return it for a replacement.[/quote]I didn't report this problem to the forum, but sent it to DFRobot team. I too had trouble with the XBee female headers of the board which seemed not to be the right model. Since XBee pins are a bit thinner than common ones, you have to pick the right model for these 2mm sockets, since not all of them will provide reliable electrical connection with the pins [i](I had the problem some years ago when designing and assembling XBee based boards for my work)[/i]. For instance my board was opposing a quasi null insertion force when plugging the XBee, and this resulted in no contact with the DIN (Tx) pin. Pulling the XBee a bit back allows the contact to be established,  but this was not quite satisfying as a situation.

A possible different origin of poor connection (in case the socket model is the right one) can be in the soldering process. When I was mounting XBee boards I could notice that these headers do not like being overheated. This results in the black plastic to melt just enough for lyres to expand a bit, and thus not press the same afterwards on inserted pins.  I have ruined a couple of them before understanding the problem. Hope this could help.

Anyway that Romeo board had another problem with a wrong resistor mounted on it (cf previous messages) and DFRobot have sent me another one in replacement very quickly. They have been very reactive and efficient. Kudos for them  ;)

The new one has no problem at all, and the XBee socket requires a firm, but reassuring, push to plug the XBee in.

Erc
userHeadPic Eric
2013-02-09 15:01:56 Hello,
[quote]You have to send serial data out of Serial1 for it to go out to the XBee.[/quote]Yep of course.
[quote]The problem I am seeing is that my Romeo V2 came with it's XBee socket soldered wrong.  It seems that solder has wicked up the pins and I can't reliably seat the XBee....I have to rock it a bit before it works.  I may have to return it for a replacement.[/quote]I didn't report this problem to the forum, but sent it to DFRobot team. I too had trouble with the XBee female headers of the board which seemed not to be the right model. Since XBee pins are a bit thinner than common ones, you have to pick the right model for these 2mm sockets, since not all of them will provide reliable electrical connection with the pins [i](I had the problem some years ago when designing and assembling XBee based boards for my work)[/i]. For instance my board was opposing a quasi null insertion force when plugging the XBee, and this resulted in no contact with the DIN (Tx) pin. Pulling the XBee a bit back allows the contact to be established,  but this was not quite satisfying as a situation.

A possible different origin of poor connection (in case the socket model is the right one) can be in the soldering process. When I was mounting XBee boards I could notice that these headers do not like being overheated. This results in the black plastic to melt just enough for lyres to expand a bit, and thus not press the same afterwards on inserted pins.  I have ruined a couple of them before understanding the problem. Hope this could help.

Anyway that Romeo board had another problem with a wrong resistor mounted on it (cf previous messages) and DFRobot have sent me another one in replacement very quickly. They have been very reactive and efficient. Kudos for them  ;)

The new one has no problem at all, and the XBee socket requires a firm, but reassuring, push to plug the XBee in.

Erc
userHeadPic Eric
2013-02-09 07:28:35 Hello,

I'd just like to add that the traditional way of using the XBee on a Leonardo board is different.  For the Leonardo (which the Romeo V2 is based on), the PD0/1 aren't reflected on the Serial port.  You have to send serial data out of Serial1 for it to go out to the XBee.

The problem I am seeing is that my Romeo V2 came with it's XBee socket soldered wrong.  It seems that solder has wicked up the pins and I can't reliably seat the XBee....I have to rock it a bit before it works.  I may have to return it for a replacement.

Clint
userHeadPic ClintonKeith
2013-02-09 07:28:35 Hello,

I'd just like to add that the traditional way of using the XBee on a Leonardo board is different.  For the Leonardo (which the Romeo V2 is based on), the PD0/1 aren't reflected on the Serial port.  You have to send serial data out of Serial1 for it to go out to the XBee.

The problem I am seeing is that my Romeo V2 came with it's XBee socket soldered wrong.  It seems that solder has wicked up the pins and I can't reliably seat the XBee....I have to rock it a bit before it works.  I may have to return it for a replacement.

Clint
userHeadPic ClintonKeith
2013-01-29 01:04:56 Hi Lauren,

I just send it to you.

Best regards

Eric
userHeadPic Eric
2013-01-29 01:04:56 Hi Lauren,

I just send it to you.

Best regards

Eric
userHeadPic Eric
2013-01-28 21:52:16 Hi Eric,

Sorry about the soldering problem of your Romeo V2.0. I've checked most of the Romeo v2.0 in stock. There're no similar problem you met with. So I guess it's rare in last batch of boards.

Please take a picture for your boards and highlight the resistor problem! And send it to the techsupport e-mail at DFRobot. We'll replace the boards for you ASAP!  ;)

Technical support: [email protected]

Appreciate trouble shooting ability! Look forward to your reply! ;D

Regards,
Lauren
userHeadPic Lauren
2013-01-28 21:52:16 Hi Eric,

Sorry about the soldering problem of your Romeo V2.0. I've checked most of the Romeo v2.0 in stock. There're no similar problem you met with. So I guess it's rare in last batch of boards.

Please take a picture for your boards and highlight the resistor problem! And send it to the techsupport e-mail at DFRobot. We'll replace the boards for you ASAP!  ;)

Technical support: [email protected]

Appreciate trouble shooting ability! Look forward to your reply! ;D

Regards,
Lauren
userHeadPic Lauren
2013-01-27 09:17:41 Hi Ricky,

And thank for replying so fast.

[quote="Ricky"]
Can you make sure that your xbee are able to communicate with each other? 
[/quote]
As said in my first post, I've checked them before, by using 2 USB interfaces connected to the PC and checking that I could send data back and forth between both of them.

Anyway, I've found what is wrong, as you can read in my other post.

Best regards

Eric
userHeadPic Eric
2013-01-27 09:17:41 Hi Ricky,

And thank for replying so fast.

[quote="Ricky"]
Can you make sure that your xbee are able to communicate with each other? 
[/quote]
As said in my first post, I've checked them before, by using 2 USB interfaces connected to the PC and checking that I could send data back and forth between both of them.

Anyway, I've found what is wrong, as you can read in my other post.

Best regards

Eric
userHeadPic Eric
2013-01-27 08:50:53 OK, I reply to myself.

The board has a problem.

The value of the component mounted as resistor R25 (part of the divider for lowering the DIN signal at XBee level) seems to wrong. According to the schematic it should be a 4k7 one, and is marking is 63C, which means 44k2. Since it is associated to a 10k for the other part of the divider bridge, it's clear that the resulting signal can never be seen as a 1 level  :-\

I could check it by hooking a scope : high level of the signal is 0.9V only, which is the expected value based on the mounted resistors.

My SALEAE Logic save my life once again. Kudos for them :) But I need to have the board replaced :-\

Regards

Eric

PS: I'm not affiliated in any way with SALEAE, apart from being a very satisfied customer.
userHeadPic Eric
2013-01-27 08:50:53 OK, I reply to myself.

The board has a problem.

The value of the component mounted as resistor R25 (part of the divider for lowering the DIN signal at XBee level) seems to wrong. According to the schematic it should be a 4k7 one, and is marking is 63C, which means 44k2. Since it is associated to a 10k for the other part of the divider bridge, it's clear that the resulting signal can never be seen as a 1 level  :-\

I could check it by hooking a scope : high level of the signal is 0.9V only, which is the expected value based on the mounted resistors.

My SALEAE Logic save my life once again. Kudos for them :) But I need to have the board replaced :-\

Regards

Eric

PS: I'm not affiliated in any way with SALEAE, apart from being a very satisfied customer.
userHeadPic Eric
2013-01-27 08:43:38 Hi Eric:

Can you make sure that your xbee are able to communicate with each other? 

If the xbee are working properly.  We will test the V2 to figure out the problem.

Best

Ricky
userHeadPic R2D2C3PO
2013-01-27 08:43:38 Hi Eric:

Can you make sure that your xbee are able to communicate with each other? 

If the xbee are working properly.  We will test the V2 to figure out the problem.

Best

Ricky
userHeadPic R2D2C3PO
2013-01-27 06:50:03 Hello,

I can't have XBee work with my new Romeo v2.

This configuration is the following :
- XBee connected to the PC via XBee explorer USB interface
- XBee plugged on the connector of the Romeo

XBees are serie 1 and are working (checked just before), and configured at 9600 bauds. I've just written a basic sketch, printing every second a string on Serial1. The same string is printed on Serial too. I can see the message sent to Serial, but nothing a the other end of the XBee connection.

Just to narrow my background, I'm quite fluent in micro-controllers, XBee operation, programming, et al... ;)

Thanks in advance for any suggestion.

Best regards

Eric
userHeadPic Eric