Wednesday, June 27, 2012

ENC28J60 - PSoC3 - Part 0

So yes,I want to hook up the PSoC3 to a computer network,and do applications based on this functionality.

Long time back,I bought an ENC28J60 module from www.embeddedmarket.com in the hopes of doing so.But I couldn't take the project all the way,and then things kinda stagnated there.I didnt have the required access to PSoC hardware,or knowledge of the networking protocols with which I had to direct the network chip to dance to.

Fast forward to present day,I do have both...Atleast more than I did..The networking knowledge is just patchy,but I'm slowly working my way toward my goal of an Internet connected PSoC3 device.I plan to extensively blog about this journey,and hope that this will help someone else like me.

The Aim:
To create a PSoC3 powered device that can relay meaningful information to servers and clients it connects with,over the internet.This device would be standalone,and built around the ENC28J60.

Why?
Yes,I know its not the newest thing.In fact,this chip has practically been interfaced with every brand of mcu out there,and all kinds of tweeting,posting,graphing and logging applications have been done.But those aside,I'm fascinated with the concept of the Internet connectivity to embedded devices,and this drives me forward with this project.I'm curious,I'm fascinated,so there.

Tools Required:

=>PSoC3 board with atleast 5-6 GPIOs free.
I plan to be using the CY8CKIT-030,but any stable PSoC3 platform is just fine.You could even etch your own! If you have access to debugging hardware of some kind,that'd be great,since that is very core to debugging such  projects.You could use a MiniProg3,or could make yourself something good enough.

=>ENC28J60 module of some brand.
I will be using the one from embeddedmarket.com,which costs INR 675.Its a nice,well designed piece,and I'd recommend you buy this one,if youre from India.Theres lots of deals on Ebay too.I bought mine long back though,when it was close to a thousand rupees.Ah well,scratch that last line.

=> Some kind of connecting wires between your board and the ENC module.

=>A LAN cable of the 'cross' type.

On the software side of things,

=> PSoC Creator 2.0 or higher,with PSoC Programmer 3.15 or higher.
=>Do also get the datasheet for the ENC28J60[PDF],and the Silicon Errata[PDF],which is very essential.
If you're looking to develop around the ENC chip,I'd recommend you get a printout of the datasheet.Yes,its about 100 pages,but it will be quite useful.
=>A Basic Idea of how SPI Works,along with some basic PSoC experience.This is not going to be a step-by-step PSoC tutorial,rather a log of steps toward the above highlighted aim.
=>A good place to refer to for networking basics,with packet structures for different protocols etc.I plan to use http://www.tcpipguide.com/ for that.
=>A packet sniffing software,which will be used to debug the various protocols and packets.I'll be using Wireshark.
I will be pushing all my code to my github account.


The next post will get started with the actual project.

No comments:

Post a Comment