SparkFun Forums 

Where electronics enthusiasts find answers.

All things pertaining to wireless and RF links
By Ryansway
#41994
Jay C wrote:
Ryansway wrote:Same problem with a recently purchased bluesmirf. Connects ok using zterm, but only spits out a pile of gibberish, like this

ÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇÇ®L÷Ç

Connected to an Arduino, set at 115200, red light comes on, nonsense comes out :(
Red light is a good sign. What are your other settings data, parity, stop? The gibberish means your PC is expecting 1 thing but the SmiRF is sending something else.

You should be 8,N,1

Jay
Thanks for reply, 115200 / 8,N,1 and I tried every other possible combination as well.

On XP using the Arduino 10 IDE serial monitor, the bluesmirf doesn't connect at all, tho it has been set up / discovered / assigned ports .. etc

I tested an Arduino BT, and it worked first pop, so the serial monitor / com set up's are working fine.

On a clean mac, I created serial ports for the bluesmirf, and using zterm got the red light, but then only got glibberish per above. Tried every possible combination of configurations of zterm.

I set up the Arduino to send out the word "Echo" every few seconds, which gives this character "Ç" the "®L÷" characters, are a 10 character numeric output triggered by one of the digital pins attached to a pull up.

So it's almost as if the encoding is wrong, but I've checked every possible combination for that as well in zterm.
By Ryansway
#42002
Also, the device shows up (PC and Mac) as "FireFly" with the password "1234", it has the blue antennae.
By Jay C
#42005
Ryansway wrote:
Thanks for reply, 115200 / 8,N,1 and I tried every other possible combination as well.

On XP using the Arduino 10 IDE serial monitor, the bluesmirf doesn't connect at all, tho it has been set up / discovered / assigned ports .. etc

I tested an Arduino BT, and it worked first pop, so the serial monitor / com set up's are working fine.

On a clean mac, I created serial ports for the bluesmirf, and using zterm got the red light, but then only got glibberish per above. Tried every possible combination of configurations of zterm.

I set up the Arduino to send out the word "Echo" every few seconds, which gives this character "Ç" the "®L÷" characters, are a 10 character numeric output triggered by one of the digital pins attached to a pull up.

So it's almost as if the encoding is wrong, but I've checked every possible combination for that as well in zterm.
Ok, so your connection is this?
Arduino <---> SmiRF <---- --- ---->Mac

You have substituted a blue tooth enable Arduino (sorry never used any of the Arduinos)
ArduinoBT <---- --- ---->Mac

So we know that the BT comms are working. So take out the BT link and try a serial connect to Arduino the same way you have the SmiRF connected. It seems to me that there is a physical issue with the serial. Double check your connections from the RX TX pins to the SmiRF pins. Make sure it's grounded and tie RTS and CTS pins together. If the serial works from Arduino to Mac then ... well, let's see the results of your tests first.

FWIW,
Jay
By Ryansway
#42048
Jay C wrote: Ok, so your connection is this?
Arduino <---> SmiRF <---- --- ---->Mac
Tried both
Arduino <---> SmiRF <---- --- ---->Mac
Glibberish instead of ascii
and
SmiRF <---- --- ---->Mac
No response when XXX typed in.
Jay C wrote: You have substituted a blue tooth enable Arduino (sorry never used any of the Arduinos)
ArduinoBT <---- --- ---->Mac
I "tested" an Arduino BT, not substituted it. I only use the ABT in windows, it took 5 minutes to discover, setup and connect, and worked flawlessly. The Bluesmirf I've tried both PC and Mac, the Arduino serial monitor on the pc does nothing, the Arduino serial monitor on the mac tells me the com port is busy
Jay C wrote: So we know that the BT comms are working. So take out the BT link and try a serial connect to Arduino the same way you have the SmiRF connected. It seems to me that there is a physical issue with the serial.
Both pc and mac? Both can see and use the Arduino BT, but both have issues with the bluesmirf, it's more likely the problem is the module I've been sent, which calls itself "FireFly" contrary to the documentation.
Jay C wrote: Double check your connections from the RX TX pins to the SmiRF pins. Make sure it's grounded and tie RTS and CTS pins together. If the serial works from Arduino to Mac then ... well, let's see the results of your tests first.

FWIW,
Jay
I was told to put the smirf on a different clean 5v power supply, did that too and nothing changed. Have also tried RTS+CTS, nothing changed.

There's no problem with Arduino <--> Mac, or Arduino <--> PC, I've got 4 Arduino's including a BT, they work perfectly.

I added a smirf to an Arduino Lilypad, set the com at 115200, told it to send the word "Echo" every few seconds so I'd have a beacon to locate, and only in zterm on the mac, does the work "Echo" show up as a "Ç" character, like the protocols of the smirf are all wrong.
By Jay C
#42054
Ryansway wrote:
Jay C wrote: Ok, so your connection is this?
Arduino <---> SmiRF <---- --- ---->Mac
Tried both
Arduino <---> SmiRF <---- --- ---->Mac
Glibberish instead of ascii
and
SmiRF <---- --- ---->Mac
No response when XXX typed in.
Um, no. Connect the Mac directly to serial of Arduino (take the BT and SmiEF out of the picture for now). Once you get that part working, then add the SMiRF back in and we'll go from there.

Arduino <---> Mac

Jay
By Ryansway
#42056
Hi, I understood the question. Arduino's only got one serial port, so it can't be connected to the PC at the same time as it's connected to smirf, if that's what you had in mind?

The Arduinos connect fine to mac and pc via serial USB.
By Jay C
#42061
Ryansway wrote:Hi, I understood the question. Arduino's only got one serial port, so it can't be connected to the PC at the same time as it's connected to smirf, if that's what you had in mind?

The Arduinos connect fine to mac and pc via serial USB.
Ok, does serial between MAC and Arduino work at 115200 Baud? That's really what I'm after. Eliminate all the possibilities.

Have you tried to connect to the SmiRF with BT only from MAC. You'll just need to power it and tie RTS to CTS. Try 9600 8N1 (looking at the BlueRadios documentation).
Try a simple AT<cr> to see if you get an OK
If that works type ATSI,8

If you get 0027,0000,0000 that's 9600Baud 8,N,1

FWIW,
Jay
By Ryansway
#42066
Jay C wrote:Ok, does serial between MAC and Arduino work at 115200 Baud? That's really what I'm after.
Yes
Jay C wrote:Have you tried to connect to the SmiRF with BT only from MAC.
Yes

Getting no response. I also followed the roving network docs, and no luck.

The Red light goes on when zterm is on, but the smirf isn't talking back, tried

AT<cr>
Nothing

I ran through "every" baud rate, and still nothing.

I also tried tying the tx+rx together, as some have suggested, and nothing.
By Ryansway
#42068
Something just happened. I untied the tx+rx, restarted zterm, typed in AT, and "it replied" with "?"
By Ryansway
#42069
So now the red light is on, and the green light is flashing, fast. Anything I type in zterm, gets a "?"

What does that mean?

..and

to get the green light to flash quickly, I type in $$$ it responds with "CMD" then anything else I type in gets a "$"
By Ryansway
#42070
I typed in SM,1

It replied

AOK

Now we're getting somewhere

AOK
h
*** SET COMMANDS ***
SA,<1,0> - Authentication
SB,<num> - Send Break
SC,<hex> - Service Class
SD,<hex> - Device Class
SE,<1,0> - Encryption
SF,1 - Factory Defaults
SI,<hex> - Inquiry Scan Window
SJ,<hex> - Page Scan Window
SL,<E,O,N> - Parity
SM,<0-5> - Mode (0=slav,1=mstr,2=trig,3=auto,4=DTR,5=Any)
SN,<name> - Name
SO,<text> - conn/discon Status
SP,<text> - Pin Code
SR,<adr> - Remote Address
SS,<text> - Service Name
ST,<num> - Config Timer
SU,<rate> - Baudrate
SW,<hex> - Sniff Rate
SX,<1,0> - Bonding
SY,<hex> - TX power
SZ,<num> - Raw Baudrate
S7,<0-1> - 7bit data
S~,<0-3> - Profile (0=SPP,1=DCE,2=DTE,3=MDM
S$,<char> - CMD mode char
S@,<hex> - io port dir
S&,<hex> - io port val
S%,<hex> - io boot dir
S^,<hex> - io boot val
S*,<hex> - pio(8-11) set
*** DISPLAY ***
D - Basic Settings
E - Extended Settings
G<X> - Stored setting
GB - BT Address
GK - Connect Status
G& - I/O Ports
V - Firmare version
*** OTHER ***
C,<adr> - Connect
F,1 - Fast Mode
I,<time>,<cod> - Device Scan Inquiry
K, - Kill (disconnect)
L, - Link Quality
P,<text> - Pass Thru
Q - Quiet (no discovery)
R,1 - Reboot
T,<0,1> - send data in CMD mode
U,<rate>,<E,O,N> - Temp Uart Change
Z - low power sleep
& - Read switches


Firmware version
V
Ver 4.26 10/03/07

(c) Roving Networks

Basic Settings
***Settings***
BTA=000666006758
BTName=FireFly-6758
Baudrt(SW4)=115K
Parity=None
Mode =Trig
Authen=0
Encryp=0
PinCod=1234
Bonded=0
Rem=NONE SET
By Ryansway
#42071
So that got not very far, the characters echoed from the micro, are still "Ç©Ç©Ç©Ç©Ç©Ç©" which I guess is it's idea of the word "Echo".

Micro is transmitting at 115200, so that seems to match the smirfs settings.

btw, AT does nothing, it doesn't understand that command. Which leads me to the question ... what is this?
By Ryansway
#42073
So it all works happily now on zTerm, but still won't work on ArduinoIDE mac, or pc.

I'll write a RB application and see if I can duplicate zTerm's success.

I discovered some very helpful information, at a blog (but I can't post it's address because of a rather bothersome word blocking thing this forum has. I'll try another time.)

For anyone using these "new" Bluesmirf / FireFly's with Arduino's, it's worth a read.

Try these key words in google

Project 3 Complete Bluesmirf

Thanks to TriggerDog and everyone here for their assistance. If I make any new discoveries, I'll be sure to post back.
By Jay C
#42088
Wow, they have changed things a lot since I bought mine. Sorry for the confusion.

Why is your mode set to trigger versus the factory default of slave?

You asked about the green LED blink rate:
Code: Select all
MODE GREEN LED blink rate
Configuring                       10 times per second
Startup/Config Timer              2 times per second
Discoverable/Inquiring/Idle       Once per second
Connected                         Solid ON
So now, what are the DIP switch settings you are using?
By Ryansway
#42096
Jay C wrote:Wow, they have changed things a lot since I bought mine. Sorry for the confusion.

Why is your mode set to trigger versus the factory default of slave?

You asked about the green LED blink rate:
Code: Select all
MODE GREEN LED blink rate
Configuring                       10 times per second
Startup/Config Timer              2 times per second
Discoverable/Inquiring/Idle       Once per second
Connected                         Solid ON
So now, what are the DIP switch settings you are using?
Not at all your help was appreciated. With sparkfun on the otherhand, I'm not overly impressed that I've spent 2 days chasing ghosts, they should at least set the mode to "slave" and "9600" which I've now done. At least those settings would more closely match the older model.

There's obviously still something not set correctly, because I can only get it working in Zterm. Nothing XP has got can connect to it (discovers and delegated to com port works, but nothing else). And in mac, even the Arduino IDE serial monitor is saying the device is 'busy' and it can't connect to it, same with proce55ing, which is saying the same thing.

On XP, the Arduino IDE serial monitor opens, but nothing comes out, and the "red" connect light doesn't go on. HyperTerminal and a custom RealBasic app, I had no luck either.

So I'm at a loss really, zTerm is no good to me, it needs to work like a WT11 and be able to be used by applications that read the serial data. I purposely avoid buying anything first off the shelf because you end up being a guinea pig to find all the "undiscovered" glitches, and on the surface, this new FireFly has plenty.