That got me thinking - The Arduino costs about $30AUD, and the Ethernet board cost about $30AUD as well. That is a lot of money - Could I make a simple, dedicated remote controller for much cheaper? Why Yes I could. Could I make it the size of a credit card? Why Yes - I could!!
This project is my simple Arduino compatible controller that has embedded Ethernet, and the capacity to drive some extra I/O lines for projects, such as a Remote thermometer, a Remotely accessible Fridge controller, and a Remote Humidity sensor. I have to say from the start that I didn't write all of the software, my mate Mikal did that - but this instructable is about making your own controller board!
Lets start!
Remove these ads by
Signing UpStep 1Here is the Schematic Diagram
As you can see, there are a number of exposed header connectors that can be used to connect peripheral devices to.
The board is powered with a supply of between 7 and 12v. It contains voltage regulators to provide +5v and +3.3v for the Ethernet controller.
There is also a 4 position DIP switch that can be used to allow programmed functions to be modified. A failing of the standard Arduino Ethernet library is that the IP address for the board has to be set in code. Using the DIP switch, a block of addresses can be selected from as required. You can make 16 boards, and have each board automatically select a different address based on the switch setting. This is *really* handy when you have deployed 10 sensors around the house. All you need to do is set a switch and then they are configured.
The pinouts of the I/O connectors are;
I/O1 - 1 - PD5 (Arduino Pin 5)
I/O1 - 2 - PD6 (Arduino Pin 6 +pullup to +5v) - Used to connect a DS1820 Temperature sensor.
I/O1 - 3 - PD7 (Arduino Pin 7)
I/O1 - 4 - PD8 (Arduino Pin 8)
I/O1 - 5 - GND
I/O2 - 1 - +5v
I/O2 - 2 - GND
I/O2 - 3 - PD4 (Arduino Pin 4)
I/O2 - 4 - PC0 (Arduino Analog 0)
I/O2 - 5 - PD3 (Arduino Pin 5)
I/O2 - 6 - PC1 (Arduino Analog 1)
I/O2 - 7 - PC2 (Arduino Analog 2)
I/O2 - 8 - PC3 (Arduino Analog 3)
I/O2 - 9 - PC4 (Arduino Analog 4)
I/O2 - 10 - PC5 (Arduino Analog 5)
Arduino-Ethernet-schematic.pdf(595x842) 59 KB| « Previous Step | Download PDFView All Steps | Next Step » |










































how much does the materials cost?
The only thing you have to worry about is to use the 3th parameter in the begin function. The library defaults CS to pin 8, meanwhile this project has that connected to pin 10. So, if you add the 10 to the begin function, it works like a charm.
Ej:
in the examples:
if (ether.begin(sizeof Ethernet::buffer, mymac) == 0)
Serial.println( "Failed to access Ethernet controller");
change to:
if (ether.begin(sizeof Ethernet::buffer, mymac, 10) == 0)
Serial.println( "Failed to access Ethernet controller");
Awesome project, I am really keen to build one of these. My only issue is I need access to the SPI bus to control an SD card reader however from the look of the schematic these lines are tied to the ethernet controller and aren't available?
Also, I read the other comments and you talk about the power supply not having much room but having enough to power a few sensors. I want to run a few WS2801 -channel constant current LED drivers chips for controlling a few LED strips. Or course the LEDs will be powered externally but I wanted to power the chip from the board.
Thanks,
Sam
There is no reason why you can't use different pins for the Ethernet controller. it is not an SPI device.
Also with the voltage regulator, Why not use a bigger, low drop out regulator.
Doug
Thanks for the swift reply.
I had a look a the datasheet for the Microchip ENC 28J60 - DIP and they all say it has an SPI interface. But thats not to much of an issue, i'll have a go at reworking the layout so pins PB5, PB4 and PB3 have header pins.
I dont suppose you have a recommendation on what regulator to use? I'm much more of a software guy who has recently become fascinated by hardware.
I think for what I want I should implement this as a shield. If that were the case would the following work? Excuse the hack job edit :-) I'll need to change the PCB layout unless of course you have one handy?
Thanks again,
Sam
That is likely to work - build it on some protoboard before you make the PCB though :-)
Making it as a shield is a great idea.
The old layouts I have are in ExpressPC format, so they are not very helpful.
Doug
That's when I saw you project and it seems really useful to me because I really don't need to use any ready-made boards.
So what I wanna know is that what are the changes i should do in this board transform it into a HTTP web-server, or should I use a separate MCU with this board?
Can I do this by using ATMega644( which has enough Flash to hold webpage) instead of ATMEGA168?
Im really new in this...
Its a great help.. I was to do this with a PIC 18F4620 and enc28j60 with TCPIP stack... But its too difficult for me.
Same Ethernet Arduino interface.
It is thorougly worth buying.
But I have to say that mine was first (July2010) vs March2011 for the Nanode :-)
I already have a firmware thats all set for the arduino to run at 8mhz is the timing going to be off?
Nadav
Very nice project, very nice.
I see it's based on the ENC28J60 chip, and unfortunately I haven't managed to do what I want to do: just an GET request.
Is it possible with this one? I guess not.
Thanks in advance!
should be arduino pin 3 not pin 5
i didnt use the customized PCB, i used a perfboard instead so followed ur schematics. The only thing that is missing in ur schematic is 74HC08 not connected to gnd and 5v.
I had a faulty 25mhz crystal which makes the ethernet connection fail and took me a long time to find out the problem. so for guys who cant connect the LAN please try to check ur crystal.... Hope this help
Thanks anyway...
I marveled at the arduino and am developing a device to
monitoring an electrical generator.
And I would love to use your card. Mainly because of the price. Here things are expensive.
Please publication of his circuit to date has had some change? Both the board layout as in the scheme?
You can use all the doors of the Atmega? As an arduino common?
I am very grateful for the attention and would like your help.
Thank you.
Sergio
http://my.element14.com/amphenol/rjmg163218101nr/jack-10-100-base-t-rohs5/dp/1357435?crosssellid=1357435&crosssell=true&in_merch=true&
The data sheet shows that this jack has the magnetic isolation transformers in it, so it should work fine!