Instructables

A credit card sized Ethernet Arduino compatable controller board

Featured
Picture of A credit card sized Ethernet Arduino compatable controller board
I love the Arduino as a simple and accessible controller platform for many varied projects.  A few months ago, a purchased an Ethernet shield for my Arduino controller to work on some projects with a mate of mine - it was a massive hit - for the first time, I could control my projects remotely using simple software.

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 adsRemove these ads by Signing Up

Step 1: Here is the Schematic Diagram

Picture of Here is the Schematic Diagram
For the curious, this is the schematic diagram of my simple Ethernet board.

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)



1-40 of 339Next »

Really nice work drj113.

JohnS301 month ago

hi i can't open the schematics in egale. can someone help me please ?

drj113 (author)  JohnS301 month ago
The schematic was developed in KiCad - not Eagle.

I do not use Eagle, as it is closed commercial software that is unable to be used for commercial use without paying a licence.

KiCad is open source.
JohnS30 JohnS301 month ago

which program didyou use for this ?

R-A2 months ago

Can you please explain the purpose of this board a bit better?

Can multiple of these boards be connected to a network switch, and then "controller from a mater controller"?

i.e. can I open / close doors remotely, from a single Arduino MEGA? If so, does it work on the I2C bus, or would I need an ethernet controller (which I don't currently own) on the Arduino MEGA 2560 first?

12qwer35 months ago
(removed by author or community request)
krissko 12qwer35 months ago

My baby with DS1307 (RTC) and external ethernet transformer from burned PC LAN card :)

DSC01298.JPGDSC01299.JPG
ThothLoki krissko3 months ago

Looks good! Could you tell me what caps you used and what AND gate you used? I am having trouble finding tht and dip. any help is appreciated

krissko ThothLoki3 months ago
I used 74hc08 you can use any AND gate.Or you can just make one with transistors with one npn,pnp and a couple of resistors.Which caps?
ThothLoki krissko3 months ago

ok. So it really doesn't matter if it is ttl or CMOS?

Could you send me schematics to make my own with transistors?

I was looking at the surface mount caps. Kinda having a hard time finding 18pf tht. Did you just use a similar value?

Thanks for the reply krissko

never mind about the schematic. Figured that out. Cut sheets are amazing when you scroll down a bit.

krissko 12qwer35 months ago

Of course you can upload your firmware to atmega328 using uno...just
connect rx from uno to rx on the chip, do the same thing with tx and
reset pins.And be sure that they have one main ground(connect ground
from the board you made to the uno ground).Or just plug your chip
directly on the uno board, upload the sketch and put back chip on
ethernet pcb.I'm trying to do this circuit and Monday I'll test it :) I
downloaded librarie from internet just type "28j60 libraries".After you
downloded it extract it in C:/user/yourname/my
documents/arduino/libraries. I use latest version of Arduino IDE without
problems.Sorry for my english :)

12qwer3 krissko5 months ago

thanks for the quick reply.but still no luck. maybe the 28j60 is the problem. can you tell me please what libraries you use for the 28j60 because i found more than one (ethershield, ethercard, uipethernet, ether_28j60) and tried them all with no luck

krissko 12qwer35 months ago
:-) Bravo! I'm playing with 28j60 but it's very buggy.I only can upload a small basic html page and nothing more..there is no room for fun and cool stuff.If you make something cool, like many buttons to control digital pins,table to view analog redings or sending strings ,send me PM.
krissko 12qwer35 months ago
look here http://nathanhein.com/2013/02/getting-arduino-online-with-an-enc28j60/
12qwer3 krissko5 months ago

it compiles and uploads with no errors. but i have 0 activity on the lan.

12qwer3 12qwer35 months ago

even the lights of the rj45 are off. they receive 0 voltages from the 28j60 legs.

krissko 12qwer35 months ago

Hmmm...look at your connections

Here is the librarie I use

http://www.mediafire.com/download/k9fnfgraon2rfvx/ETHER_28J60.rar

12qwer3 krissko5 months ago
(removed by author or community request)
krissko 12qwer35 months ago

I forgot for this librarie :D

http://www.mediafire.com/download/dh5p07zt2kl6lol/etherShield.rar

krissko 12qwer35 months ago
btw what is the problem? You cant upload or what?
12qwer3 krissko5 months ago

I have finally managed to construct this on prototyping board and works like a charm. I really don't know what was with the pcb I created for this project earlier. after desoldering the components I inspected the connections with a magnifying glass and they all look ok. I don't have a clue why it didn't work. anyway thanks a lot for your replies. you my friend are a lifesaver.

I want to build one of these myself. However, I am fairly new at electronics, and therefore, I have a difficult time reading the schematics and I do not have the equipment to make such circuit board. Could you upload an instructables page with the same design but on a breadboard. Thanks!

WebScript5 months ago

Hello!

I have finally managed my time to construct this nice instructable. Do you think is it possible to replace 74HC08 SMD with 74HC08 DIP14 package? And SMD caps with normal through-hole caps.

Thank you.

krissko WebScript5 months ago

I made mine with no SMD components...you just have to change pcb layout or make shematic on prototyping board :)

gadour7 months ago

can you send to me the isis shema ??

Lucif3r9458 months ago

Interesting... I assume the atmega chip is just serving as an "arduino", and can be skipped if you want to attach this to an existing arduino?

julianiii2 years ago
Hello everybody . i'm trying to do the project but no sucess , can u help me ? i connected everything like in the schematic , i dont know how to trace where is my problem ,help me thnx.
drj113 (author)  julianiii2 years ago
What software are you using?
enc28j60 library . Should i conn the 74ls08 vcc and gnd. maybe is my rj45 problem ?
IMG_0065.JPG
drj113 (author)  julianiii2 years ago
The VCC and Ground should be connected.

The Rj45 needs to have magnetics as well. Does yours?

Could you explain why are the magnetics needed??
thnx for the help i had problem with rj45 and ferrite bead thnx i love this project thnx :):):):)
drj113 (author)  julianiii2 years ago
The ferite is not super important - it just reduces noise on the supply rail
Yes i cute a rj45 from an old ethershield and it works fine THNX
drj113 (author)  julianiii2 years ago
Aweesome!
alv0011 year ago
With the Eagle 6 I try to open the Arduino-Ethernet.sch and Arduino-Ethernet.brd files from ArduinoEthernetController-1.zip archyve, but fails (http://www.instructables.com/files/orig/FG4/YQ05/GELSQIG0/FG4YQ05GELSQIG0.zip). Maybe you have a newer version of the files?
drj113 (author)  alv0011 year ago
Hi,

Thanks for your message. All of my projects are developed in KiCad, not Eagle. I do not use Eagle, as it is not open source, nor is it free to use.

I do understand that they have a hobyist licence, but its size limitations are useless, and I sell products that I design with it anyway, so I can't use it even if I wanted to.

Doug
Acidjazz541 year ago
OP, great instructable and thank you. So I purchased the components over a year ago and finally got around to assembling the boards. The issue I'm having is I can't get the board to take the bootloader. I've followed the comments and have ensured that the board is the Duemilanove and I'm using w/Arduino as ISP but I'm still getting the following error.

avrdude: stk500_getsync(): not in sync: resp=0x00
avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51

One thing I noticed is the FTDI cable I bought shows up as a USB serial com port, this is what I want correct? Any insight or troubleshooting ideas would be greatly appreciated.
So I just tried optiboot and get the same getsync() error but no protocol error.
1-40 of 339Next »