Part of the reason the WiFi shields are costly is that they implement the TCP/IP stack internally. Cheap USB dongles rely on the operating system for that.

So you want to run a USB Host Stack, drivers (that probably wouldn't be universal) for a WiFi Dongle, and a TCP/IP stack in 2K of RAM. Hopefully there wasn't anything else you wanted the microcontroller to be able to do once the dongle was connected.

Zero_Custom

Part of the reason the WiFi shields are costly is that they implement the TCP/IP stack internally. Cheap USB dongles rely on the operating system for that.

So you want to run a USB Host Stack, drivers (that probably wouldn't be universal) for a WiFi Dongle, and a TCP/IP stack in 2K of RAM. Hopefully there wasn't anything else you wanted the microcontroller to be able to do once the dongle was connected.

Zero_Custom

eh, i just found a shield that can provide some external RAM, so is the RAM's problem solved?

That only works with the Mega boards based on the ATmega1280/2560. Not the Uno which is based on the ATmega328. So no, the RAM issue hasn't been solved.

Plus you still have to write the drivers for the Arduino to support the USB Dongle device. Without documentation from the manufacturer, that might be difficult.

so, what we're trying to do is to repeat create the wheel.if we want to cost down, the best idea is use other wireless solutions.the cost seems cheaper than wifi, i think the restrict maybe bigger than wifi.think about the Smart homes, thousands of sensors and switch, use wifi maybe a better choice.

You know what make my day? When the people who say some thing is impossible look dumb cause what is supposed to be impossible is being done. Soon there will be a libraries for the wifi dongle cause they already work on it.

If a Human can imagine some thing, it's because it's possible. You can't imagine impossible, cause impossible is not part of our Universe, by definition. So if you guys don't want to look stupid again, stop saying it.

Does the spi libraries + the USBHost libraries + UIP libraries =< 20k? If it's the case, then it's possible to run the USBWIFI key under UNO. And if not, it will run under Mega128 or Mega256. In any case it will probably have some space to run a few functions over it...

So i'll check that right a way.

Ok so the most basic function of UIP, the echoserver require 19k, so it would have problem to run on a UNO. How ever, richardtheboffin never talked about UNO specifically.

The Question was : "Anyone tried adding a $5 wifi dongle to a USB host shield to get a low cost wifi solution?"

I see nowhere the word UNO, if you guys don't get you self systems that has more memory that is you problem, but some people run with 128k or 256k, so keep your boring answer to your-self.

So the answer is Yes, under Arduino Mega, it would be possible to run a WIFI dongle if you manage to make a libraries for you hardware specifics.

This being sayed, mister richardtheboffin , have you consider getting a serial to wifi solution?

They cost about 10$ more then a Wifi usb dongle delivery included, you get a serial device that fully contain TCPIP stacking. So this way you can run your WiFi with simple AT command and also you can run your module on lower Arduino board.

Think about that, sometime what you save on the device your gonna have to pay it on the controller and vice-versa. If you get the serial device, you can run the thing on a chip that you can stick on a breadboard, and if you choose to go with the dongle, well you will need to go for a solder board.

As we fight our way northward into the great unknown, only that one thing remains certain...

Take a WL-520GU router and flash it with DD-WRT. ( found mine at a thrift shop for $5.00) Most any WIFI router with a USB port and DD-WRT support should do. NOTE; there are several hacks on adding USB to Link-sys routers.

After configuring it to act as a USB serial to WIFI bridge,all communication can be done thru arduino's native USB serial terminal.

You just use regular serial terminal communications methods.

This way all TCP/IP is off loaded to the router massively freeing up ram.

lukeyes

Because most of us probably already have an Arduino (or two, or three) and the UART wifi module posted above is only $15, and an old router that can support DD-WRT can be found at Goodwill or Craigslist for $5-10, or heck, on a good day, can usually be found on the hackshelf of your local hackerspace. A Yun, OTOH, is $75. Not exactly cheap. You can get a Raspberry Pi or BeagleBoneBlack + wifi dongle for less than that.

Plus, hacking is fun!

PS - I'm totally going to try that router route (no pun intended) with a router in the parts bin at my hackerspace. thanks for the info.

Because most of us probably already have an Arduino (or two, or three) and the UART wifi module posted above is only $15, and an old router that can support DD-WRT can be found at Goodwill or Craigslist for $5-10, or heck, on a good day, can usually be found on the hackshelf of your local hackerspace. A Yun, OTOH, is $75. Not exactly cheap. You can get a Raspberry Pi or BeagleBoneBlack + wifi dongle for less than that.

Plus, hacking is fun!

PS - I'm totally going to try that router route (no pun intended) with a router in the parts bin at my hackerspace. thanks for the info.

I have taken the router approach. It works and my outdoor robot is running this way. From my experiance I would advice 2 things1) take a wifi router so you don't need the wifi dongle2) try to find one with lots of memory and disk space (hack a sd?).1 is pretty obvious2 is because once you have the linux next to your arduino you'll use it.Strongest points for yun? Has 1 , has 2, has a fast bridge between linux and arduino, is small, has a USB to connect other hardware (like more arduino's).

Best regardsJantje

Do not PM me a question unless you are prepared to pay for consultancy.Nederlandse sectie - http://arduino.cc/forum/index.php/board,77.0.html -

But for what I found, it's got 2 ethernet interfaces, wifi with tcpip built in a few GPIO, that seem to be turnable into a SPI bus, and a buntch of other cool stuff like 2xUARTs, 1xI2C, 16 meg or RAM, 1xUSB2.0 interface. and 4 meg of FLASH.