Well... How Are Things Going?

Discussions related to the WiServer add-on code for WiShield. WiServer is a friendly, easy-to-use front end for webserver and webclient usages.

Moderator: shard7

Re: Well... How Are Things Going?

Postby peterM » Mon Jul 06, 2009 3:02 pm

That did it. Thanks!
peterM
 
Posts: 16
Joined: Sat May 09, 2009 4:58 pm
  • Website

Re: Well... How Are Things Going?

Postby astroguy » Mon Jul 13, 2009 8:18 am

I'm having a bunch of trouble and could use some pointers. Out of the box (using the ''Startup checklist'' list from this thread), with no sketches in the default Arduino location, I get an error:
Code: Select all
In file included from strings.c:31:
server.h:51:1: warning: "UIP_APPCALL" redefined
In file included from apps-conf.h:45,
                 from uip-conf.h:141,
                 from server.h:35,
                 from strings.c:31:
webserver.h:46:1: warning: this is the location of the previous definition
In file included from strings.c:31:
server.h:63: error: conflicting types for 'uip_tcp_appstate_t'
webserver.h:42: error: previous declaration of 'uip_tcp_appstate_t' was here


So I cannot compile using the APP_WEBSERVER (as is the default in apps-conf.h) and thus I cannot use WebServer example. When I make the change
Code: Select all
//#define APP_WEBSERVER
//#define APP_WEBCLIENT
//#define APP_SOCKAPP
#define APP_WISERVER

everything compiles (all the *.o files are made at start of the IDE). However, while the SimpleClient sketch works, with the same parameters for the wireless, I cannot get the SimpleServer sketch to work. I get no ping response and the webbrowser pointed to the IP of the board just times out.
astroguy
 
Posts: 1
Joined: Mon Jul 13, 2009 8:00 am

Re: Well... How Are Things Going?

Postby shard7 » Tue Jul 14, 2009 7:50 pm

Does the LED on WiShield light up at all? If not, that means it isn't connected to your wireless network, so perhaps something's not quite right with the configuration settings.
shard7
 
Posts: 64
Joined: Wed May 06, 2009 11:30 am

Re: Well... How Are Things Going?

Postby bpa » Wed Jul 15, 2009 9:13 am

FWIW I'm experiencing the same issue as Astroguy, after following the recipe provided by PeterM earlier in the thread, with the exception that I did not remove the Ethernet library (as I'm not clear why that should be necessary; it's certainly not desirable, as I have other sketches for other projects using an Ethernet shield, which works fine.)

Webclient fails to compile with the following errors:

/Applications/arduino-0016/hardware/libraries/WiShield/webserver.h:42: error: conflicting types for 'uip_tcp_appstate_t'
/Applications/arduino-0016/hardware/libraries/WiShield/server.h:63: error: previous declaration of 'uip_tcp_appstate_t' was here

As a general observation, I find the mix of different libraries and instructions across the wiki and forums inconsistent and confusing. But that may just be me. - BPA
bpa
 
Posts: 4
Joined: Wed Jul 15, 2009 9:02 am

Re: Well... How Are Things Going?

Postby peterM » Wed Jul 15, 2009 11:44 am

@bpa et al

I agree that the configuration gymnastics are a bit much. I provided that checklist as a guide to "what worked for me" but of course individual configs and versions can be all over the place. Hopefully these anomalies will get ironed out soon by the authors. We are all essentially beta-testing at this point.

What I've done on my Mac, for the other Arduino sketches I'm working on that need the Ethernet library, is install a separate copy of Arduino 0016 uniquely named, with the desired libraries. Kinda funky but so far not a problem.
peterM
 
Posts: 16
Joined: Sat May 09, 2009 4:58 pm
  • Website

Re: Well... How Are Things Going?

Postby bpa » Wed Jul 15, 2009 12:58 pm

PeterM- I understand your workaround using multiple 0016 copies, but I'm curious as to why it is necessary in the first place. Is there a reason why the two libraries cannot co-exist in the same copy? - cheers, BPA
bpa
 
Posts: 4
Joined: Wed Jul 15, 2009 9:02 am

Re: Well... How Are Things Going?

Postby shard7 » Wed Jul 15, 2009 7:29 pm

The big issue is that the Arduino IDE is not very smart about how it compiles code. It compiles every C and C++ file that it finds, regardless of whether the sketch actually uses it. In the case of the WiShield, this is especially problematic because the IP stack (uIP) has to be compiled in a way that couples it with the library to be used. So, even if you're not using one of the libraries, it still gets compiled and still tries to define a type used by uIP, and that's where it starts to knock heads with the other libraries.

The fellas from Async Labs and I are aware of the issue, and we're trying to find a way to make the build process cleaner and easier. Stay tuned...
shard7
 
Posts: 64
Joined: Wed May 06, 2009 11:30 am

Re: Well... How Are Things Going?

Postby gsxrex » Wed Jul 15, 2009 9:56 pm

Ben is working on a way to make everything coexist peacefully. The interesting thing is that in my setup, with arduino-0016, I don't have to remove anything or modify any other libraries to make the code work. Especially in the case of WiServer, as long as I set the APP_WISERVER define in apps-conf.h, everything works out of the box.
Anyway, once Ben has his ideal fix to get everything working from one configuration (should be tomorrow at the latest), I'll go through and scrub all the documentation to make it uniform. Sorry about the growing pains were having. The terrible-two's will be over soon enough. :lol:
User avatar
gsxrex
 
Posts: 115
Joined: Thu Apr 30, 2009 9:49 am

Re: Well... How Are Things Going?

Postby benquark » Wed Jul 15, 2009 11:45 pm

Ok, everything is cleaned up now. You can go ahead and pull the latest WiShield files from GitHub and the G2100 driver files from the Async Labs wiki. You should not observe any build errors or conflicts when you fire up the Arduino IDE. The conflict with the Ethernet library is also fixed.

On GitHub when you click the Download button you will see links to ZIP and TAR files and a bunch of other tagged versions.
  • Clicking on the ZIP or TAR links will download files from the top of the tree which has APP_WEBSERVER enabled by default. This was done to enable the WiShield to work with an ATmega168 based Arduino board out of the box.
  • Clicking on the WiServer_1.0 link will allow you to download a version with the APP_WISERVER enabled by default. You can download this version if you have an ATmega328 based Arduino board.
benquark
 
Posts: 63
Joined: Wed May 06, 2009 3:57 pm

Re: Well... How Are Things Going?

Postby bpa » Sun Jul 19, 2009 10:37 am

Finally got a chance to try this again by unpacking a clean 0016 environment, gitting git://github.com/asynclabs/WiShield.git and copying over the g2100 files. Error as follows:

In file included from global-conf.h:43,
from clock-arch.c:35:
uip.h:1250: error: expected specifier-qualifier-list before 'uip_udp_appstate_t'

- cheers, BPA
bpa
 
Posts: 4
Joined: Wed Jul 15, 2009 9:02 am

PreviousNext

Return to WiServer

Who is online

Users browsing this forum: No registered users and 1 guest