harlequin-tech / WiFlyHQ

WiFly RN-XV Arduino Library
Other
110 stars 68 forks source link

Trying to get httpclient working #11

Closed sheath-mb closed 11 years ago

sheath-mb commented 12 years ago

I am working on getting the httpclient sketch working. I have also tried others, but figured I would concentrate on one. I am receiving a lot of time outs and errors. The code also states that the WiFly is associated with a network when it is not. This keeps the sketch from dropping into the join method.

I have factory reset the WiFly, reboot, and unplugged multiple times. I also have the latest firmware.

The funny thing is, when I program the WiFly through a com monitor with my network credentials everything seems to run fine. It is only when I try and let the sketch set up the WiFly that it has issues.

Any help with this would be greatly appreciated.

Here is the dbug serial monitor output:

Starting Free memory: 1065 send_P: $$$ match_P: CMD

readTimeout - timed out match_P: false

Check in command mode

setPrompt

0: 45 E 1: 52 R 2: 52 R 3: 3A : 4: 20
5: 3F ? 6: 2D - 7: 43 C 8: 6D m 9: 64 d 10: D 11: A 12: 3C < 13: 32 2 14: 2E . 15: 33 3 16: 32 2 17: 3E > 18: 20
setPrompt: <2.32>

gets: 19: D 20: A Already in command mode

Already in command mode

send_P: set u m 1 getres multiMatch_P: 0 ERR: multiMatch_P: 1 AOK

21: 41 A 22: 4F O 23: 4B K 24: D 25: A multiMatch_P: true getPrompt "<2.32> "

match: <2.32> 26: 3C < 27: 32 2 28: 2E . 29: 33 3 30: 32 2 31: 3E > 32: 20
match: true

send_P: exit

match_P: EXIT

33: D 34: A 35: 45 E 36: 58 X 37: 49 I 38: 54 T 39: D 40: A match_P: true

send_P: $$$ match_P: CMD

41: 43 C 42: 4D M 43: 44 D 44: D 45: A match_P: true

send_P: set sys printlvl 0 getres multiMatch_P: 0 ERR: multiMatch_P: 1 AOK

46: 41 A 47: 4F O 48: 4B K 49: D 50: A multiMatch_P: true getPrompt "<2.32> "

match: <2.32> 51: 3C < 52: 32 2 53: 2E . 54: 33 3 55: 32 2 56: 3E > 57: 20
match: true

send_P: exit

match_P: EXIT

58: D 59: A 60: 45 E 61: 58 X 62: 49 I 63: 54 T 64: D 65: A match_P: true

send_P: $$$ match_P: CMD

66: 43 C 67: 4D M 68: 44 D 69: D 70: A match_P: true

send_P: set comm remote 0 getres multiMatch_P: 0 ERR: multiMatch_P: 1 AOK

71: 41 A 72: 4F O 73: 4B K 74: D 75: A multiMatch_P: true getPrompt "<2.32> "

match: <2.32> 76: 3C < 77: 32 2 78: 2E . 79: 33 3 80: 32 2 81: 3E > 82: 20
match: true

send_P: exit

match_P: EXIT

83: D 84: A 85: 45 E 86: 58 X 87: 49 I 88: 54 T 89: D 90: A match_P: true

send_P: $$$ match_P: CMD

91: 43 C 92: 4D M 93: 44 D 94: D 95: A match_P: true

getCon

show c

send_P: show c

gets: 96: 38 8 97: 36 6 98: 33 3 99: 33 3 100: D 101: A getPrompt "<2.32> "

match: <2.32> 102: 3C < 103: 32 2 104: 2E . 105: 33 3 106: 32 2 107: 3E > 108: 20
match: true

send_P: exit

match_P: EXIT

109: D 110: A 111: 45 E 112: 58 X 113: 49 I 114: 54 T 115: D 116: A match_P: true

getCon: TCP disconnected tcp status: 3

assoc status: 1

authen status: 1

dns status: 0

dns found status: 0

channel status: 3

send_P: $$$ match_P: CMD

117: 43 C 118: 4D M 119: 44 D 120: D 121: A match_P: true

send_P: get ip

match_P: DHCP= 122: 49 I 123: 46 F 124: 3D = 125: 55 U 126: 50 P 127: D 128: A 129: 44 D 130: 48 H 131: 43 C 132: 50 P 133: 3D = match_P: true

gets: 134: 4F O 135: 4E N 136: D 137: A getPrompt "<2.32> "

match: <2.32> 138: 49 I 139: 50 P 140: 3D = 141: 30 0 142: 2E . 143: 30 0 144: 2E . 145: 30 0 146: 2E . 147: 30 0 148: 3A : 149: 32 2 150: 30 0 151: 30 0 152: 30 0 153: D 154: A 155: 4E N 156: 4D M 157: 3D = 158: 30 0 159: 2E . 160: 30 0 161: 2E . 162: 30 0 163: 2E . 164: 30 0 165: D 166: A 167: 47 G 168: 57 W 169: 3D = 170: 30 0 171: 2E . 172: 30 0 173: 2E . 174: 30 0 175: 2E . 176: 30 0 177: D 178: A 179: 48 H 180: 4F O 181: 53 S 182: 54 T 183: 3D = 184: 30 0 185: 2E . 186: 30 0 187: 2E . 188: 30 0 189: 2E . 190: 30 0 191: 3A : 192: 32 2 193: 30 0 194: 30 0 195: 30 0 196: 4F O 197: 3D = 198: 46 F 199: 78 x 200: 50 P 201: 43 C 202: 30 0 203: 3C < 204: D readTimeout - timed out match: false

send_P: exit

match_P: EXIT

205: 45 E 206: 58 X 207: 49 I 208: 54 T 209: D 210: A match_P: true

Already joined network MAC: send_P: $$$ match_P: CMD

211: 43 C 212: 4D M 213: 44 D 214: D 215: A match_P: true

send_P: get mac

match_P: Mac Addr= 216: 4D M 217: 61 a 218: 63 c 219: 20
220: 41 A 221: 64 d 222: 64 d 223: 72 r 224: 3D = match_P: true

gets: 225: 30 0 226: 30 0 227: 3A : 228: 30 0 229: 36 6 230: 3A : 231: 36 6 232: 36 6 233: 3A : 234: 37 7 235: 31 1 236: 3A : 237: 65 e 238: 30 0 239: 3A : 240: 33 3 241: 31 1 242: D 243: A getPrompt "<2.32> "

match: <2.32> 244: 3C < 245: 32 2 246: 2E . 247: 33 3 248: 32 2 249: 3E > 250: 20
match: true

send_P: exit

match_P: EXIT

251: D 252: A 253: 45 E 254: 58 X 255: 49 I 256: 54 T 257: D 258: A match_P: true

00:06:66:71:e0:31 IP: send_P: $$$ match_P: CMD

259: 43 C 260: 4D M 261: 44 D 262: D 263: A match_P: true

send_P: get ip

match_P: IP= 264: 49 I 265: 46 F 266: 3D = 267: 55 U 268: 50 P 269: D 270: A 271: 44 D 272: 48 H 273: 43 C 274: 50 P 275: 3D = 276: 4F O 277: 4E N 278: D 279: A 280: 49 I 281: 50 P 282: 3D = match_P: true

gets: 283: 30 0 284: 2E . 285: 30 0 286: 2E . 287: 30 0 288: 2E . 289: 30 0 290: 3A : 291: 32 2 292: 30 0 293: 30 0 294: 30 0 295: D 296: A getPrompt "<2.32> "

match: <2.32> 297: 4E N 298: 4D M 299: 3D = 300: 30 0 301: 2E . 302: 30 0 303: 2E . 304: 30 0 305: 2E . 306: 30 0 307: D 308: A 309: 47 G 310: 57 W 311: 3D = 312: 30 0 313: 2E . 314: 30 0 315: 2E . 316: 30 0 317: 2E . 318: 30 0 319: D 320: A 321: 48 H 322: 4F O 323: 53 S 324: 54 T 325: 3D = 326: 30 0 327: 2E . 328: 30 0 329: 2E . 330: 30 0 331: 2E . 332: 30 0 333: 3A : 334: 32 2 335: 30 0 336: 30 0 337: 30 0 338: 54 T 339: D 340: 35 5 341: 41 A 342: 37 7 343: 4D M 344: 30 0 345: 55 U 346: A 347: D readTimeout - timed out match: false

send_P: exit

match_P: EXIT

348: 45 E 349: 58 X 350: 49 I 351: 54 T 352: D 353: A match_P: true

0.0.0.0 Netmask: send_P: $$$ match_P: CMD

354: 43 C 355: 4D M 356: 44 D 357: D 358: A match_P: true

send_P: get ip

match_P: NM= 359: 49 I 360: 46 F 361: 3D = 362: 55 U 363: 50 P 364: D 365: A 366: 44 D 367: 48 H 368: 43 C 369: 50 P 370: 3D = 371: 4F O 372: 4E N 373: D 374: A 375: 49 I 376: 50 P 377: 3D = 378: 30 0 379: 2E . 380: 30 0 381: 2E . 382: 30 0 383: 2E . 384: 30 0 385: 3A : 386: 32 2 387: 30 0 388: 30 0 389: 30 0 390: D 391: A 392: 4E N 393: 4D M 394: 3D = match_P: true

gets: 395: 30 0 396: 2E . 397: 30 0 398: 2E . 399: 30 0 400: 2E . 401: 30 0 402: D 403: A getPrompt "<2.32> "

match: <2.32> 404: 47 G 405: 57 W 406: 3D = 407: 30 0 408: 2E . 409: 30 0 410: 2E . 411: 30 0 412: 2E . 413: 30 0 414: D 415: A 416: 48 H 417: 4F O 418: 53 S 419: 54 T 420: 3D = 421: 30 0 422: 2E . 423: 30 0 424: 2E . 425: 30 0 426: 2E . 427: 30 0 428: 3A : 429: 32 2 430: 30 0 431: 30 0 432: 30 0 433: 54 T 434: D 435: 35 5 436: 41 A 437: 37 7 438: 4D M 439: 30 0 440: 55 U 441: 30 0 442: 33 3 readTimeout - timed out match: false

send_P: exit

match_P: EXIT

443: 45 E 444: 58 X 445: 49 I 446: 54 T 447: D 448: A match_P: true

0.0.0.0 Gateway: send_P: $$$ match_P: CMD

449: 43 C 450: 4D M 451: 44 D 452: D 453: A match_P: true

send_P: get ip

match_P: GW= 454: 49 I 455: 46 F 456: 3D = 457: 55 U 458: 50 P 459: D 460: A 461: 44 D 462: 48 H 463: 43 C 464: 50 P 465: 3D = 466: 4F O 467: 4E N 468: D 469: A 470: 49 I 471: 50 P 472: 3D = 473: 30 0 474: 2E . 475: 30 0 476: 2E . 477: 30 0 478: 2E . 479: 30 0 480: 3A : 481: 32 2 482: 30 0 483: 30 0 484: 30 0 485: D 486: A 487: 4E N 488: 4D M 489: 3D = 490: 30 0 491: 2E . 492: 30 0 493: 2E . 494: 30 0 495: 2E . 496: 30 0 497: D 498: A 499: 47 G 500: 57 W 501: 3D = match_P: true

gets: 502: 30 0 503: 2E . 504: 30 0 505: 2E . 506: 30 0 507: 2E . 508: 30 0 509: D 510: A getPrompt "<2.32> "

match: <2.32> 511: 48 H 512: 4F O 513: 53 S 514: 54 T 515: 3D = 516: 30 0 517: 2E . 518: 30 0 519: 2E . 520: 30 0 521: 2E . 522: 30 0 523: 3A : 524: 32 2 525: 30 0 526: 30 0 527: 30 0 528: 54 T 529: D 530: 35 5 531: 41 A 532: 37 7 533: 4D M 534: 30 0 535: 55 U 536: 30 0 537: 2E . readTimeout - timed out match: false

send_P: exit

match_P: EXIT

538: 45 E 539: 58 X 540: 49 I 541: 54 T 542: D 543: A match_P: true

0.0.0.0 send_P: $$$ match_P: CMD

544: 43 C 545: 4D M 546: 44 D 547: D 548: A match_P: true

send_P: set o d send: Wifly-WebClient

getres multiMatch_P: 0 ERR: multiMatch_P: 1 AOK

549: 41 A 550: 4F O 551: 4B K 552: D 553: A multiMatch_P: true getPrompt "<2.32> "

match: <2.32> 554: 3C < 555: 32 2 556: 2E . 557: 33 3 558: 32 2 559: 3E > 560: 20
match: true

send_P: exit

match_P: EXIT

561: D 562: A 563: 45 E 564: 58 X 565: 49 I 566: 54 T 567: D 568: A match_P: true

DeviceID: send_P: $$$ match_P: CMD

569: 43 C 570: 4D M 571: 44 D 572: D 573: A match_P: true

send_P: get opt

match_P: DeviceId= 574: 4A J 575: 6F o 576: 69 i 577: 6E n 578: 54 T 579: 6D m 580: 72 r 581: 3D = 582: 31 1 583: 30 0 584: 30 0 585: 30 0 586: D 587: A 588: 52 R 589: 65 e 590: 70 p 591: 6C l 592: 61 a 593: 63 c 594: 65 e 595: 3D = 596: 30 0 597: 78 x 598: 32 2 599: 34 4 600: D 601: A 602: 44 D 603: 65 e 604: 76 v 605: 69 i 606: 63 c 607: 65 e 608: 49 I 609: 64 d 610: 3D = match_P: true

gets: 611: 57 W 612: 69 i 613: 66 f 614: 6C l 615: 79 y 616: 2D - 617: 57 W 618: 65 e 619: 62 b 620: 43 C 621: 6C l 622: 69 i 623: 65 e 624: 6E n 625: 74 t 626: D 627: A getPrompt "<2.32> "

match: <2.32> 628: 50 P 629: 61 a 630: 73 s 631: 73 s 632: 77 w 633: 6F o 634: 72 r 635: 64 d 636: 3D = 637: D 638: A 639: 46 F 640: 6F o 641: 72 r 642: 6D m 643: 61 a 644: 74 t 645: 3D = 646: 30 0 647: 30 0 648: 61 a 649: 76 v 650: 3D = 651: 32 2 readTimeout - timed out match: false

send_P: exit

match_P: EXIT

652: 45 E 653: 58 X 654: 49 I 655: 54 T 656: D 657: A match_P: true

Wifly-WebClient send_P: $$$ match_P: CMD

658: 43 C 659: 4D M 660: 44 D 661: D 662: A match_P: true

open hunt.net.nz 80 send_P: open send: hunt.net.nz

send:

send: 80

send_P:

getPrompt "<2.32> "

match: <2.32> readTimeout - timed out match: false

Failed to get prompt WiFly has crashed and will reboot...

harlequin-tech commented 12 years ago

The debug output will cause timeouts. What happens when you run the sketch without debug turned on?

What shield are you using?

What is the firmware version number?

sheath-mb commented 12 years ago

I get the same results with the debug turned off. It thinks it is already connected to a network, then pulls back no ip. Here is the output:

Starting Free memory: 1071 Already joined network MAC: 00:06:66:71:e0:31 IP: 0.0.0.0 Netmask: 0.0.0.0 Gateway: 0.0.0.0 DeviceID: Wifly-WebClient open hunt.net.nz 80 Failed to get prompt WiFly has crashed and will reboot...

I am using a WiFly RN-XV and the firmware is 2.32. I did some tracing through the WiFlyHQ.cpp code and narrowed down that in the Begin method when getConnection is called, that is when the status.assoc variable is getting set to true. Not sure if it should be set to true if the wifly has not joined the network yet.

harlequin-tech commented 12 years ago

Could you tell me what shield you have plugged the WiFly RN-XV into?

Looks like it might be associated with the network but has not received a DHCP address from the router.

sheath-mb commented 12 years ago

Sure thing,

We are using a 5v X-bee breakout board modified to 3.3v with the filter removed on one of the rx or tx lines. Not sure which.