StaticDet5:
It’s been a little more than two weeks since I last SFE tech support for help. Nothing yet.
I couldn’t quite parse that, you mean you haven’t heard from SFE tech support since you contacted them two weeks ago?
Anyone have any additional ideas as to why I can’t get into command mode with the WiFly shield?
Okay, let me follow this:
The [current problem is you get “junk” characters instead of useful output. On re-reading [this response I realise it would have been more useful if I’d gone into more detail, so consider this an update.
I was reminded recently that the most recent version of the board connects the factory reset pin of the WiFly module to one of the GPIO pins of the SPI UART. This means it’s possible to control the SPI UART and get it to trigger the factory reset of the WiFly module.
And, the good news is, I’ve written a tool to do this for you.
Do you know how to use GitHub? The tool is currently available as [HardwareFactoryReset.pde but it requires the current version of the SPI UART code which hasn’t yet been released. If you can use GitHub you should be able to pull everything from there. Otherwise, let me know, and I’ll do a proper alpha release. [Update: Done, see below for alpha 2 release.]
If a hardware factory reset doesn’t work then I would say it’s probably a hardware fault again.
StaticDet5:
It’s been a little more than two weeks since I last SFE tech support for help. Nothing yet.
On the flip side, I have gotten an Arduino Ethernet Shield up and running. I’m not having any problems with that system over my network.
Anyone have any additional ideas as to why I can’t get into command mode with the WiFly shield?
Having the exact same problem. I tried different baud rates, still get garbage after the chip says ‘Bridge successful’. The chip doesn’t create a wireless network on startup with pin 9 set to 3.3V on startup either.
EDIT: This is with the RN-131G chip, got it not so long ago, and they’re already on a new version!
Also, setting the wifly to connect to two different wifi networks (with a bunch of different settings) did not work… but at least prints out the full text output:
nflacco:
Having the exact same problem. I tried different baud rates, still get garbage after the chip says ‘Bridge successful’.
Can you please try installing the Alpha 2 library, then use the “HardwareFactoryReset” tool included. Once you’ve done that can you then try the ‘SpiUartTerminal’ tool included and post your results?
EDIT: This is with the RN-131G chip, got it not so long ago, and they’re already on a new version!
I think the difference between the G and C versions is just the temperature range they operate within.
Also, setting the wifly to connect to two different wifi networks (with a bunch of different settings) did not work… but at least prints out the full text output:
Set wlan to level…
blah blah blah
Failed to authorize…
From looking at the code that example doesn’t check for a response until the end so it’s probably not actually communicating successfully–it probably just reads the “garbage” you see.
follower:
Also, have you contacted tech support about this?
New Arduino/new wifly, same issue. After more time with tech support…
The ics are fine. Turns out it was a crystal issue. We apparently have a 14 MHz crystal, which needs the spi_uart stuff set at 60, vs the 12 MHz which requires 50 (we had it at the latter, but needed the former).
I bought my Wifly shield in Oct, 2010 and finally got a chance to spend some serious time with it. Have similar problem that StaticDat5 did – both Yellow and Green blink fast and asynchronously. this is the pattern, http://www.youtube.com/watch?v=sVdQUKgmfho
I have been following the thread and tried the SpiUartTerminal sketch, and all the Wifly example sketches and no luck.
In WiFly_Auto_ Connect, WiFly_WebClient: I can’t get pass anything beyond this function call – WiFly.begin();
In HardwareFactoryReset, SpiUartTerminal: can’t pass SpiSerial.begin();
it reads “Attempting to connect to SPI UART…” and no more response from the shield.
My crystal is 14.2456 Mz and I have changed the value like so: from 0x50 to 0x60 in the
I updated the Arduino environment, and went to Follower’s version 2 of the WiFly library.
Because of my notes, I was able to duplicate EVERYTHING (right down to what the Arduino was sitting on) in my tests from before. One day it was working, the next day it wasn’t.
Thanks. After reading your reply, I went on to download Arduino 022 and still no luck. I guess I have to move on to the technical support for help. Will keep you posted.
Apparently, it’s not a bad shield, rather, I’m just not very good at soldering
After wiggling, and pressing on the board & headers (while resetting the board with the serial monitor open) I was able to get passed the ‘Attempting to Connect’ part, and able to issue $$$ and commands.
However, after some re-soldering, my board is still very sensitive. I’m having a hard time keeping it working consistently w/o me applying pressure, and keep getting ‘Auto-Assoc roving1 chan=0 mode=NONE FAILED’ a lot…
I think the latest library update (mysteriously coupled with the new Arduino 22 kit) did something. I couldn’t find it or put my finger on it, but the combination happened to me within an hour of each other, and then things just worked.
Hi Guys … cause i had a lot of trouble with the shield … i have a few infos … well perhaps i can save a guy some time …
first of all i got often “AUTH-ERR” and Disconnects from the shield … since i attached an external-antenna i got a quite stable wifi connection… the internal antenna doesnt work for me… looks like the other components are producing to much noise … (rf-receiver, lcdbackpack … sensorics)
on more point … i got a working solution … well atleast for me … to get the RTC-Time of the WiFly …
cause the RTC-Value would need a 64Bit Integer for processing … i split it into 2 32bit floats … so a one-second precision should … bla bla …
it works … its not perfekt …
float strToFloat(String str){
float result = 0;
for(int i=0; i < str.length(); i++){
if (isdigit (str[i])) {
result = result * 10 + str[i] - '0';
}
else {
break;
}
}
return result;
}
…
bool sync_time()
{
bool aRes = false;
#ifdef WLAN
sWLAN.SpiDev.print("time");
sWLAN.SpiDev.println();
delay(5000);
sWLAN.SpiDev.print("show t t");
sWLAN.SpiDev.println();
int ix;
char timestr[1024];
timestr[0] = '\0';
int ic = 0;
int tom = 0;
while (true)
{
ix = sWLAN.SpiDev.read();
if (ix >= 0)
{
Serial.print((char)ix);
timestr[ic] = (char)ix;
ic++;
timestr[ic] = '\0';
tom = 0;
} else {
delay(10);
tom++;
if (tom > 200) {
break;
}
}
}
if (ic > 10)
{
String aTimes = String(timestr);
int rtcidx = aTimes.indexOf("RTC=");
if (rtcidx > 0)
{
aTimes = aTimes.substring(rtcidx+4);
aTimes = aTimes.substring(0,aTimes.indexOf(" "));
// Precision-Splitting 64bit -> 32bit tricksing
String srtc1 = aTimes.substring(0,4);
srtc1 = srtc1 + "000000000";
String srtc2 = aTimes.substring(4,4+9);
double rtc1 = strToFloat(srtc1);
double rtc2 = strToFloat(srtc2);
double dayidx1 = (rtc1 / 86400000);
double dayidx2 = (rtc2 / 86400000);
double dayidx = (dayidx1 + dayidx2) - 49708.22629268139;
// Delphi Stamp to UnixStamp
int idayidx = (int)dayidx;
long UnixStamp = ((idayidx - 25569) * 86400) + (int)(86400 * (dayidx - idayidx)) - 7200;
char msg[200];
setTime(UnixStamp); // time.h
digitalClockDisplay(); // see time samples
aRes = true;
}
}
#endif
return aRes;
}
well sWLAN is my own WiFly-Class … its a simple WiFly-Http-client Lib supporting retrys and working timeouts … well just a buggy bunch of code lol
One tip I just discovered: Make sure you open the Serial Monitor after the Tx light on the Arduino board goes out. Takes a bit for the upload to complete (~20-30 sec.), but starting up the Serial Monitor before it’s complete seems to interrupt it. Seems kind of obvious now…
I just suffered through joeyc and staticdet5’s ‘unable to connect’ symptoms. Running the 22 IDE on Mac OS 10.6.6.
Had the WiFly stacked on top of the Uno with the standard 6-/8-pin headers. Would hit upload, then open the Serial Monitor a couple seconds later. System would always hang at “Attempting to connect to SPI UART.”
Took the stack apart and soldered the headers into the WiFly board and just connected wires across the Tx, Rx, 7, 10, 11, 12, 13, Gnd, 3.3v(Uno)->VIN(WiFly) pins.
Same fail pattern.
Then, since the WiFly was no longer stacked on top of the Uno, I noticed that the Tx light on the Uno stays on for a long time after you hit upload in the IDE. So I uploaded again, and waited for the Tx light to go out BEFORE opening the Serial Monitor in the IDE. Gets to the SPI UART no problem, now.
Hope this saves a fellow noob an angst-ridden trip to the 'Shack for hook-up wire and small gauge solder at some point…
@ jwheeler good tip. I’ll give that a try on mine as well.
I did finally get my WiFly working, but alas, I did have to actually stop and read the Roving Networks PDF and download the TeraTerm program. Mine is still troublesome. I can get it to work every time, but always end up having to hook it up USB to get it going… Every once in a while I have to do a factory RESET again to get it to respond correctly… My Steps:
load Examples > wifly > tools > SPIuartTerminal sketch: (Then i use TeraTerm to communicate via serial)
$$$
factory RESET
set wlan auth 1
set wlan ssid
set wlan key // I use WEP-128
set ip localport 80
set ip remote 80
save
get ip
reboot
// telnet to double check
exit
Another tip is to put this at the begining of void setup() {
Serial.begin(9600);
Serial.println(“============ begin ===========”);
WiFly.begin(); Serial.println(“============ wifly started ===========”);
Then I can easily tell if it hangs on WiFly.begin(), and if so, reset & wiggle or restart serial port… But I’ll check for the TX light next time.
joeyc, I am having the same problem. I re-soldered all the joints, restored Factory Defaults, and still I am unable to get into command mode. Can you share a little more of what you did?
I’ve been battling the entire weekend with the WiFly shield (Connected to a Arduino UNO). I know think I’ve exhausted all possible steps in debugging this issue. I have also tried this with all versions and some forks of the code and version 0022 and version 1.0 of the IDE.
After uploading and running SpiUartTerminal.pde or the HardwareFactoryReset.pde, the serial monitor just hangs after outputting “Waiting for input:” and doesn’t allow me to enter the command line application ($$$). I’ve tried unix screen, coolterm and the standard IDE serial monitor. I’ve also tested the pins to ensure everything is connected correctly (I finally soldered them to the header pins) and I’m sure it is.
I would really appreciate some help if possible. I’m now suspecting that it is in fact a hardware issue.
qoda:
I’ve been battling the entire weekend with the WiFly shield (Connected to a Arduino UNO). I know think I’ve exhausted all possible steps in debugging this issue. I have also tried this with all versions and some forks of the code and version 0022 and version 1.0 of the IDE.
After uploading and running SpiUartTerminal.pde or the HardwareFactoryReset.pde, the serial monitor just hangs after outputting “Waiting for input:” and doesn’t allow me to enter the command line application ($$$). I’ve tried unix screen, coolterm and the standard IDE serial monitor. I’ve also tested the pins to ensure everything is connected correctly (I finally soldered them to the header pins) and I’m sure it is.
I would really appreciate some help if possible. I’m now suspecting that it is in fact a hardware issue.
Any luck?
In the same boat here, everything was working perfectly until last friday… now for some unknown reason my wifly wont connect any more and is always stuck with these lights goin off continuously http://www.youtube.com/watch?v=OBBzJGVF78Q… unfortunately i dont know what this means…
i also tried uploading and running SpiUartTerminal.pde, same thing, the serial monitor just hangs after outputting “Waiting for input:” and doesn’t allow me to enter the command line application ($$$). I’ve also tried, coolterm and the standard IDE serial monitor no luck. Im pretty sure my soldering isnt the issue since the wifly had been working for the past month no problem.
HardwareFactoryReset.pde seems to be communicating with the wifly since i can see the reset led pattern goin off but then once its done it just hangs again after outputting “Waiting for input:” and doesn’t allow me to enter the command line application ($$$). Back to same light pattern as before aswell(http://www.youtube.com/watch?v=OBBzJGVF78Q)… I really do not know why this is happening… any help would be much appreciated.
Hi I’m having the same problem running SpiUartTerminal.pde where it hangs at “attempting to connect to SPI UART…” I’m quite new at this, any piece of advice on what I am doing incorrectly is appreciated!