Sunday, March 23, 2014

Getting Arduino Online – Via the HR911105A Board + uIP TCP/IP Stack

I have wanted to connect my arduino to my home network and also to the internet, for quite some time, so i bought this very cheap board, the HR911105A breakout board / NIC:

ENC28J60_1

I connected my Arduino Uno to it like this:

Arduino UNO pin 12 -- SO  (SPI MISO)
Arduino UNO pin 11 -- SI  (SPI MOSI)
Arduino UNO pin 13 -- SCK (SPI SCK)

Arduino UNO pin 10 -- CS  (SPI SS)
Arduino UNO 3v3    -- VCC
Arduino UNO GND   -- GND

I saw many webpages on the internet about connecting this board to the Arduino, and all said that the CS pin on the board connected to the Arduino pin 8, I tried it and i never worked (even with other TCP/IP stacks, besides the uIP). I searched the code and found out that i was actually the SPI SS pin, wich is pin 10 on the Arduino Uno.

image

to use it on the Arduino Mega, you need to connect it like this:

Arduino MEGA pin 50 -- SO  (SPI MISO)
Arduino MEGA pin 51 -- SI  (SPI MOSI)
Arduino MEGA pin 52 -- SCK (SPI SCK)
Arduino MEGA pin 53 -- CS  (SPI SS)
Arduino MEGA 3v3    -- VCC
Arduino MEGA GND   -- GND

I saw in the arduino page:

http://playground.arduino.cc/Hardware/ArduinoEthernet#.Uy4hFvl_tsM

that the uIP TCP/IP stack is available for the HR911105A Boards / NICs since October 2013 (just a coupple of months ago). You can find more information about this stack here:

http://en.wikipedia.org/wiki/UIP_(micro_IP)

this stack is quickly becoming the “de facto” standart for an for 8-and 16-bit microcontrollers, as you can see  even cisco is supporting it (“In October 2008, Cisco, Atmel, and SICS announced a fully compliant IPv6 extension to uIP, called uIPv6”)

I downloaded the uIP IP stack and followed the instructions here:

https://github.com/ntruchsess/arduino_uip

basically what I downloaded the uIP, extracted it, and put it on the arduino libraries folder

image

To test it, go to arduino IDE and select an example like the EchoServer

image

and change the IP, to one that it’s on your network (my network: 192.168.1.xx/24)

image

upload it to the Arduino and test it out.

FIrst ping it:

image

and then telnet into it, the EchoServer example will return all that you type:

image

image

You can also buy the HR911105A module / NIC in the form of an Arduino Uno Shield:

imageimage

this version is a bit more expensive, but is the same as the breakout board. All the steps above are the same (you can go from the breakout board to the sheild without reprograming the Arduino), the main diference is that you don’t need to do the wiring:

imageBut if you don’t want to put the shield on top of the arduino for some reason, you can connect it like this:

image

Arduino UNO pin 12 -- Shield  pin 12  (SPI MISO)
Arduino UNO pin 11 -- Shield  pin 11  (SPI MOSI)
Arduino UNO pin 13 -- Shield  pin 13  (SPI SCK)
Arduino UNO pin 10 -- Shield  pin 10  (SPI SS)
Arduino UNO 5v     -- Shield  pin 5v  (VCC)
Arduino UNO GND   -- Shield  pin GND (GND)

to use the Arduino Mega, just connect it like this:

Arduino MEGA pin 50 -- Shield  pin 12  (SPI MISO)
Arduino MEGA pin 51 -- Shield  pin 11  (SPI MOSI)
Arduino MEGA pin 52 -- Shield  pin 13  (SPI SCK)
Arduino MEGA pin 53 -- Shield  pin 10  (SPI SS)
Arduino MEGA 5v     -- Shield  pin 5v  (VCC)
Arduino MEGA GND    -- Shield  pin GND (GND)

And the internet of things / internet of everything starts Alegre

 

You can find the documentation about the uIP library here:

http://arduino.cc/en/Reference/Ethernet

this is not exactly the HR911105A breakout board / NIC documentation, but it the looks like it has the same methods / functions.

 

Check out my online community at: https://www.facebook.com/BragaLab

This post was made specially for the BragaLab fans

7 comments:

Wilona said...

Nice,
Thankyou very Much

Buy Routers And Switches said...



Thanks for sharing this valuable resource with us. I'm sure it will be a valuable asset for many people.Also, have a look on these CISCO products:

WS-C3650-24TS-L
WS-C3560-24TS-E
WS-C3560CX-8PC-S

Barbara Nimmo said...

I found your blog post on "Getting Arduino Online via HR911105A" to be incredibly informative and helpful. The detailed instructions and explanations make it much easier for someone like me, who is relatively new to Arduino projects, to understand the process.
cash app barcode to load money at 7-eleven

Ashlee Rolfson said...

I'm currently working on a similar project, and your step-by-step guide has been a lifesaver. It's amazing how technology like the HR911105A can help us connect our Arduino projects to the internet.
Starbucks Advent Calendar

Timothee Lambert said...

"I've bookmarked this blog because it consistently provides high-quality content. It's become my go-to source for reliable information."
parking spot promo code

Edvin Berg said...

"I often find myself revisiting this blog's archives because there's always something new to discover or relearn. It's a valuable resource."
One Blood Rewards Code Coupons

Jennifer Walsh said...

"Your insightful guide on getting Arduino online via the HR911105A Board and uIP TCP/IP Stack is a valuable resource for tech enthusiasts! The detailed instructions make this complex process accessible. As you embark on these DIY projects, consider optimizing costs with a 'Jewson discount code' for your hardware needs. Thanks for sharing both knowledge and practical tips!"