Connecting an Ethernet PHY to Arduino Due

It would be nice if you could achieve this with a DP83848 PHY as I have some laying around here :smiley:

As the pitch is 1mm, this would fit

Palliser:
Hello gaplee and good catch with the TaijiDUE.
Can anybody post a picture showing the Eth terminal? Thanks.

OK. I have good news!. I just ported the Atmel Ethernet API to Arduino IDE. At least the 'EMAC_EMAC_EXAMPLE1' now called 'Arduino_Due_EMAC_Sample_1.ino' is compiling with no errors. My next step now is try to simplify as much as possible the library (34 files) and then wait for my shield to be ready for preliminary tests before upload it to github. Yes!

Hey Palliser - any chance you can share the code for example you have - I am working with a KSZ8051RNL which I had working on LPC1789 and want to port to the SAM3X8E.

Cheers

Looks like I found a header that will work for the TaijiDUE, It's 1.27 mm pitch dual row:

I've been getting a little better at using Eagle recently and looking at the schematic for the AS-DM9161 it looks fairly simple and possible to build at home:

I think I might be able to recreate this in Eagle as long as the schematic is correct. I may need you to verify Palliser. It's basically a Ethernet magjack, the DM9161, some resistors, capacitors, an oscillator and a header for breadboard. Anyone interested?

Here a couple of schematics:
1- Original Arduino Due and Taijiuino Ethernet pins connection reference with DM9161 PHY.

http://img853.imageshack.us/img853/3558/ethernetdue2.jpg

2- Original Arduino Due and Taijiuino Ethernet pin location reference.

http://img827.imageshack.us/img827/9944/ethernetdue3.jpg

The PHY can be simplified like the one posted by kcore (reply #28).

Hello TonyT3P3,
I would rather prefer if you can wait a couple of weeks for the code. Few tests have to be done before release this Ethernet MAC API. I am moving from ~40 ported files to about just 4 (MAC and PHY classes). Thanks for your patience.

Thanks for the update Palliser, I should get some of the DM9161 chips on Monday and hopefully have a home brew version of the AS-DM9161 within a week or two. Just in time to run your API against it!

I'll post up my Eagle files here when I got them ready.

I couldn't find an Eagle library for the DM9161 Ethernet PHY chip so I made my own library. Hopefully this is a start to a PCB.

This is actually my second Eagle library I have ever created so hopefully I didn't screw it up.

Symbol

Package

Device

DM9161.lbr (19.8 KB)

Hello kcore!
Thank you for sharing your design. It looks professional. I am glad you are moving on with this project. I hope to receive this week my Taijiuino and the PHY module. China and Russia are too far from here!

I too have the Taijuino on order (2 of them). I asked them to include the smaller pins as well.

I have the Taijuino board with it's extra header here. What difference is there in using this "PHY module" over using one of the already available modules that don't rely on the built it interface? Speed? Cost? ??

ODwyerPW / cowasaki

I am pleased to know you are interested on this project.
In reference to the PHY module, I made a quick review on the phy driver component and class' functions and I believe that 'any' Ethernet PHY module should work with the EMAC. Indeed, I am considering to use a couple of other PHYs different from DM9161. Remember, I chose DM9161 trying to build this interface as close as possible to the original from Atmel.

To support the Ethernet PHY DP83848 (in addition to the AS-DM9161), I ordered one and just got it today. I also built a breadboard adapter for better access of the pins.

My wedge is having false contacts, so I've decided to start tests using the Taijiuino which should arrive this week. Also waiting for the AS-DM9161.

Pin interconnection between Taijiuino and Ethernet PHY DP83848C

Since last weekend, I have a compiling (OK) Ethernet MAC API for Arduino Due. It contains the following files:

  • emac sample sketch
  • emac.h
  • emac.cpp
  • ethernet_phy.h
  • ethernet_phy.c
  • mii.h
  • mini_ip.h
  • conf_eth.h

All these files come from Atmel and are the only necessary to run the sample. I did rid off the rest (about 40 files) from the original ASF library.

I have planned to start tests tonight with a Taijiuino and a DP83848 PHY module. (I still waiting for the Russian AS_DM9161. The last snowstorm have caused mail delays). I hope to show tomorrow results of the tests and some pictures.

I am conscious that some people are eager to get the library but it doesn't make much sense to publish it without previous basic tests. Thus, thank you for your patience!

I connected Taijiuino with EPHY DP83848 but no communication. I will be revising the phy files, pin configuration and wires. I hope to bring good news soon. Here a picture of my mess!.

This is one thread I am really interested in. Ethernet on the DUE without sacrificing so many i/o pins or fitting a shield.

Hi Palliser

I'm also interested in this, I'll likely go and make my own board (not a shield )to add onto a TAIJIUINO so I can pick up the additional pads, I'll design this board with 802.3af POE hence why I'll design my board around components that have been proved to work 1st :wink:
I wish you luck... I did wonder if the breadboard wiring may be causing an issue with its failure; have you tried to shorten the wiring at all ??

BR
Graham

Hello Graham,

I am happy you are interested in this project. I still working on the modified Ethernet MAC library. As you mentioned, I had to get rid off the breadboard to avoid wiring issues. Here a picture of what I have so far with less connections between the external Ethernet PHY DP83848 and a Taijiuino, although I am planning to use a DM9161 Phy when coming in from Russia next week. It could be also great to see your POE one of these days. One of my future goals is the implementation of a Webserver example, but for that, I have to wait a little longer. Regards!

Hello Palliser

My; that looks a lot neater, and hopefully stop any gremlins with wire lengths.
It will be interesting when you receive the DM9161, is this mounted on a carrier with the jack/magnetic's similar to the DP83848 board ?

The POE is very easy to achieve with suitable Jack socket, as similar to the Arduino Ethernet, and a ready built POE module can then be soldered in
these can range in voltage from 3.3V upwards so can be selected to give the voltage that's required and additional Voltage regulators used for lower voltages if needed.
some such as the silverline range can have there outputs modified, the usual 12V from the 9012-S POE module is reprogrammed with a shorting link to only supply 9V so not to overheat the fixed 5V regulator on most of the Arduino boards.

I'll keep and eye open for developments and wish you success

BR
Graham

Hello Graham,

Yes. The DM9161 board is similar to the DP83848. I chose it as my first option, given that the hardware (pull-up, pull-down PHY address resistors, filter/noise capacitors, Crystal, timing, etc.) is more than proven by Atmel for the most of their development kits. Thank you for the good wishes.

here a picture of AS-DM9161

Regards!