Feeling interest for a WiFi shield

Thomas,

The code that is up right now is doing infrastructure. I'll push updates shortly to allow easier switching between ad hoc and infrastructure (it can be done with the code you have now, but it's buried deep in the code).

If it's doing infrastructure, then why does it have local ip but not local MAC?
Because we aren't using DHCP, we are using a dedicated IP for the different MAC adresses!

Hmmm, I'm confused by your last statement.

The IP address and the MAC address are not related to each other. Each device has a preprogrammed, unique MAC address that is used. For what I've shown in the sketch, the arduino is trying to use a dedicated IP (192.168.1.2).

DHCP sit's on top of the TCP/IP stack as an application. This requires an additional set of handshaking that has to happen. I remember that somebody created a library for DHCP using the ethershield. I'll have to go dig that up as reference.

This is awesome. My order is placed.
I haven't done much experience with data like this.
Any more examples would be very helpful.
For instance, in the example you give, how do we know what the web address is of the page it puts up, is is the IP address of 192 168.1.2?
If so how do we access that?

Thanks again

I'll try my best to provide as much help and documentation as possible.

For the example webserver, the arduino will connect to your access point with the SSID name (default is "ASYNCLABS") at the address 192.168.1.2. So if you have another PC/laptop connected to this access point, then you could visit 192.168.1.2 in your webbrowser to see the simple webpage.

You can also open a terminal and send simple ping commands to the device, and it should respond back that it's alive, i.e.:

C:\> ping 192.168.1.2

This side project/hobby/business is quickly becoming a lot more work that I originally planned. I see lots of late nights in my immediate future. haha ;D

Ha, I'm sure the community will help you out as soon as they arrive. Throw in a discount and they may be even more helpful :stuck_out_tongue:

I'm rather looking forward to the evil cunning things I can do with this

I received mine today. Nicely put together. I've got some questions on the webserver sketch, but I'll wait till I've played with it some more to make sure it's just not my silly noob mistakes (likely). It's alive, and I can ping it though.

What does the red led indicate, and what is the button for (reset?)

The example sketch loads fine and the red light is on, but I cannot ping it (192.168.1.2) or access the web page. Any suggestions for a noob on a MAC?

@pauly. open system preferences, click on network .. whats your machines IP address?

192.168.1.103.

Our mac's are addressed 10.1.1.1 upward so that means we'll be changing

unsigned long local_ip = IP_ADDR(192,168,1,2);

to

unsigned long local_ip = IP_ADDR(10,1,1,99);

I asked on the "off chance" yours was the same.

I checked the library and IP_ADDR appears to be the only pointer to IP address, so I'm assuming its ok to change in WebServer.pde

Got mine in today. Pretty easy setup. I was able to connect to my WPA Personal network, and I can ping it. I can see the request come in through the serial debug connection in the Arduino IDE, but I'm getting inconsistent results in browsers. Firefox sometimes displays the resulting page, and sometimes not. Safari doesn't. Its almost like the request isn't being finished off somehow, and is just left spinning. Will continue to play with it. As far as I can tell, the red light comes on when the shield is successfully connected to the network.

All in all, very impressed with the 'out of the bag' experience. Good job. :smiley:

As far as I can tell, the red light comes on when the shield is successfully connected to the network.

If you turn on or off the serial monitor in the Ardunio IDE, does your light go out ?

I've been having problems testing with Firefox, but I used a port tester I wrote a while ago and if I send it just "GET / HTTP/1.1" followed by a CR+LF I get a response every time. Its strange, but I'm still tinkering.

Ok, I have some bug fixes that hopefully will fix some of the issues people might be seeing. Part of the problem also seems to be that in some cases, multiple requests are coming in, which is somehow confusing the code.

The red light is supposed to come on when connected to the network.

Let me get the code packaged up and ready for consumption.

Ok, I have some bug fixes that hopefully will fix some of the issues people might be seeing. Part of the problem also seems to be that in some cases, multiple requests are coming in, which is somehow confusing the code.

I think this is correct. Most browsers seem to ask for / and /favicon.ico in quick succession. The first request seems to work correctly, and returns the page. The second request seems to mess it up, and no future requests seem to work. Resetting the arduino allows me to start over, but again only getting the first request properly.

Do you have security enabled? Oddly, the setup I use most of the time doesn't have security on, and seems to work more solidly. It's strange...

I have WPA Personal security turned on, and a MAC address filter. I will have to wait for the wife to finish with some stuff before she will let me start tinkering with the network settings. She hates it when I 'fix' things.

Ok, I put new code drops up on our wiki. This still might not fix the multiple request problem, but at least we can all rebase on a common image.

Sorry about all the issues in the stack. I've enlisted additional help on my side to try and resolve the issue.

I've loaded the new version with wireless_mode defined. Still only getting the first request successfully. Subsequent requests fail. For what it's worth, here's what is being reported by the serial.print()s:

GET / HTTP/1.1
Host: 10.0.1.50
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.0.3) Gecko/2008092414 Firefox/3.0.3
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive

GET / HTTP/1.1
Host: 10.0.1.50
User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.0.3) Gecko/2008092414 Firefox/3.0.3
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,/;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip,deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive

HTTP/1.1 200 OK
Content-Type: text/html

Hello World!! I am WiShield

.9.0.3) Gecko/2008092414 Firefox/3.0.3 Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8 Accept-Language: en-us,en;q=0.5 Accept-Encoding: gzip,deflate Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7 Keep-Alive: 300 Connection: keep-alive

I will play some more with it tomorrow. Woot, always fun being an early adopter. :smiley:

I know IP and MAC adresses normally hasn't anything to do with eachother, but at my home it has (also like estranged - he is also using the MAC filter)
I'm using the MAC adress to check if the computer is know, and then the computer gets the same IP adress everytime!

So... I would like to know, if the MAC in the WiShield is unique, so it can't be changed? As it isn't unique in the Arduino Ethernet Shield (Wiznet)