how connects WiFi sheild with arduino robot

hi,
please how i can connect the wifi sheid with arduino robot . the 4,7 and 10 pins it used already to LCD with standar
, I need to control the robot through wifi

Kind regards

I would also be very interested in an answer to this question!!

The idea behind that is to use the Arduino robot itself "just" as a simple proxy for sending out the sensor values and receiving the actuator values (speed for the wheels basically) while the control software runs on a Laptop or PC and not directly on the robot.

Would be great if anyone could provide some hints here! :slight_smile:

I have been looking for a solution for days, but couldn't find any yet that is beginner-friendly. To my disappointment, I recently found this on the web:

http://www.robotshop.com/forum/arduino-robot-and-wifi-shield-t11411

Thanks Tirant for these links!

It is mentioned in the comments there that the problem lies in the fact that the TFT shield already covers most/all of the relevant pins. But what if one does not really need the TFT?! If you remove the TFT shield, is adding the WiFi shield a piece of cake?

(I mean in principle – I did not say this is easy – you could then connect the robot to a PC and display data on the PC rather than on the mounted TFT screen anyways.)

Any opinions? :slight_smile:

Hi,

I actually got mine working. The problem is that you cannot have the robot screen and the Wifi Shield connected to the robot. What happened with mine was that the level shifter on the Wifi Shield broke.

My solution was to remove the screen, connect the shield (a new one) and it worked.

This is what my headers in the Wifi/utility/spi_drv file look like:

Code:
#define DATAOUT 11 // MOSI
#define DATAIN 12 // MISO
#define SPICLOCK 13 // sck
#define SLAVESELECT TKD3//10 // ss
#define SLAVEREADY TKD5//7 // handshake pin
#define WIFILED TKD4//9 // led on wifi shield

I connected the 6-ports ICSP sockets to each other (robot to shield) and soldered the other three TKD connections as above.
Now it is working perfectly fine, but without the screen.

Let me know if someone needs more information and whether you guys get yours working please.

Hope this helps.
Regards
Stefan

Thank you, Stefan, for this very valuable information! :slight_smile:

I will try this and inform you about the progress I hopefully will make. One question though: Do you use the shield with an own antenna or the antenna integrated? And: Did you literally solder the connections or connect via pluggable cables? Those questions may sound silly, but I am a complete noob in this respect ... :wink:

Hi,

I used the WiFi shield with integrated antenna. If you are unsure, you can try plug in cables first and then make the connection permanent later on by soldering. I soldered mine.

For a more detailed guide check here: http://arduinorobothelp.wordpress.com/

Now I finally found the time to connect the WiFi shield to the robot. Thanks again for your HowTo, Stefan!

I followed your instructions very closely, but unfortunately currently for me it seems that "WiFi.status() == WL_NO_SHIELD" is true, when trying the code example you've posted. Since I don't have enough time today I will investigate this a bit further in the next days or weeks ...

The LED on L9 on the shield is glowing yellow but that's all I can say for now.
Do you have any idea on how I could start to "debug" or search for an error?

All the best,
phil

I double-checked some things: The soldered pins seem alright (it is not the first time I soldered something and I never had problems there), I removed the jumper necessary only for the firmware upgrade and checked the wiring again. This seems to be fine.

On the software side I realized that I first forgot to include the <SPI.h>, but it turns out that if I only use <SPI.h> and no <ArduinoRobot.h> than I got no output at the serial port at all. But when I try to use both I got compilation errors:

/tmp/build6886701083107893355.tmp/WiFi/utility/server_drv.cpp.o /tmp/build6886701083107893355.tmp/core.a -L/tmp/build6886701083107893355.tmp -lm 
SPI/SPI.cpp.o: In function `SPIClass::setClockDivider(unsigned char)':
/usr/share/arduino/libraries/SPI/SPI.cpp:63: multiple definition of `SPIClass::begin()'
Robot_Control/SPI.cpp.o:/usr/share/arduino/libraries/Robot_Control/SPI.cpp:63: first defined here
SPI/SPI.cpp.o: In function `SPIClass::setClockDivider(unsigned char)':
/usr/share/arduino/libraries/SPI/SPI.cpp:64: multiple definition of `SPIClass::end()'
Robot_Control/SPI.cpp.o:/usr/share/arduino/libraries/Robot_Control/SPI.cpp:64: first defined here
SPI/SPI.cpp.o: In function `SPIClass::setClockDivider(unsigned char)':
/usr/share/arduino/libraries/SPI/SPI.cpp:64: multiple definition of `SPIClass::setBitOrder(unsigned char)'
Robot_Control/SPI.cpp.o:/usr/share/arduino/libraries/Robot_Control/SPI.cpp:64: first defined here
SPI/SPI.cpp.o: In function `SPIClass::setClockDivider(unsigned char)':
/usr/share/arduino/libraries/SPI/SPI.cpp:64: multiple definition of `SPIClass::setDataMode(unsigned char)'
Robot_Control/SPI.cpp.o:/usr/share/arduino/libraries/Robot_Control/SPI.cpp:64: first defined here
SPI/SPI.cpp.o: In function `SPIClass::setClockDivider(unsigned char)':
/usr/share/arduino/libraries/SPI/SPI.cpp:64: multiple definition of `SPIClass::setClockDivider(unsigned char)'
Robot_Control/SPI.cpp.o:/usr/share/arduino/libraries/Robot_Control/SPI.cpp:64: first defined here
SPI/SPI.cpp.o: In function `SPIClass::setClockDivider(unsigned char)':
/usr/share/arduino/libraries/SPI/SPI.cpp:63: multiple definition of `SPI'
Robot_Control/SPI.cpp.o:/usr/share/arduino/libraries/Robot_Control/SPI.cpp:63: first defined here
collect2: error: ld returned 1 exit status

Does anyone have an idea on this one?
I mean at least the compiler error cannot be my fault :wink:

I am very thankful for any hint!