I have been researching how to make a DIY ethernet module using the Wiznet W5100. I would like to be able to mount the components on a perfboard.
The trickiest part is the TQFP interface. I found an 80 pin TQFP Adapter for $1.3 that might help, see SMD Adapters
The rest of the parts would be:
Controller
Wiznet W5100 ($4.5)
Resistors
1 X 4.7Kohm, 1/10W-5%
1 X 300ohm, 1/10W-1%
1 X 12Kohm, 1/10W-1%
2 x 200ohm, 1/10W-5%
4 x 51ohm, 1/10W-1%
1 x 1Mohm, 1/10W-5%
(~$0.5)
Capacitors
1 X 0.01uF, 50V-20% Ceramic
1 X 1uF, 16Vmin 10%
2 X 4.7uF, 16Vmin 10%
11 X 0.1uF, 50V-20% Ceramic
2 x 18pF, 50V-20% Ceramic
(< $1)
Other
2 X 1uH, Chip Inductor Ferrite 1uH, 50mA (~$1)
1 X MagJack R45 ($3)
The list is based on the WIZnet W5100 Network Module and would add upp to ~$10.
This is totally possible and will make a great project. One difficulty I see is finding a good perfboard to mount both the ethernet components and arduino components. However, a dedicated arduino + ethernet could see a lot of use.
Even better, an Arduino Mega, with the W5100 chip accessed via external memory bus. You could lower the speed and make the entire board running at 3,3V. I'm actually thinking about a board like that. But soldering the components is the major problem I see.
draythomp, i also thought about the size of the prefboard, it would probably end up being quite big, and also include a lot of soldering work, but also an exciting challenge.
westf, you are right, voltage regulation and thank you for pointing out the different pin pitch. i didnt notice that. TQFP is really a pain in the ass. Anyone who got experience? Any advices?
bubulindo, a mega could be great but using the ATmega1280 means another surface mounted chip = another pain. Like you say, soldering is the big issue.
One of the ideas I've been thinking about involves using a dumb (microchip ENC28J60) with a separate processor chip to do the TCP processing, plus the arduino core processor. Something like an Uno with the mega8u2 replaced by a mega32u2 that talks to both usb and the ethernet controller...
westfw:
One of the ideas I've been thinking about involves using a dumb (microchip ENC28J60) with a separate processor chip to do the TCP processing, plus the arduino core processor. Something like an Uno with the mega8u2 replaced by a mega32u2 that talks to both usb and the ethernet controller...
This would be nice too... if there was some space left over on the USB-TCP controller, you could program your UART software there and the main processor would only request data. Basically it would be a USB -TCP controller with a serial buffer. That would clear the main processor with some more code space... but it's just a thought.
The main thing with the memory bus connection is that the interface would be far faster than the SPI connection, which, for a ATmega1280 or even 2560 would be more adequate as the pages it can hold are bigger.
Plus, some external memory (not much though) could be added together with the Wiz chip. You could add a bit more outside logic and increase the memory space in pages, but would be more expensive, more complex and maybe not that useful.
Again, the main problem is really the soldering of components.
Would someone revise the drawing if I made one with a mega1280-like processor and wiznet on the same board?
westfw. interesting! i was looking into ENC28J60 first because it's way easier to solder but i couldn't find any DHCP-implementations. this is a deal breaker for me. i found some indications that people were working on it but no results. do you know the status of DHCP for ENC28J60?
While researching a project recently, I came across this module that already incorporates a Wiznet and an ATMega on a compact board at a decent price.
It's not quite Arduino-compatible, but it looks to me like it could be made so (at the software, but not hardware, level) with only a little porting work on the runtime.
I'd still like to see a standard-sized Arduino with built-in Ethernet, but the Wiznet module looks like it'd make an okay interim/alternative solution.