emonBase enc28j60 initialization issue

Hi all,

Last week I received my monitor kit; everything is working fine except for the emonBase. I found out that the following piece of code hangs the ethernet initialization routine:

enc28j60.cpp:

    while (!readOp(ENC28J60_READ_CTRL_REG, ESTAT) & ESTAT_CLKRDY)
        ;

I've applied the capacitor fix as described in step 25b of the emonBase build guide. When my finger touches the back of 74HCT125 initialization suddenly succeeds. 

Any suggestions?

Thanks in advance.

Nik

glyn.hudson's picture

Re: emonBase enc28j60 initialization issue

Mm might be a faulty chip. I'll send you out another to test. 

robw's picture

Re: emonBase enc28j60 initialization issue

Could it be a dry joint. If touching the chip makes it work it seems that its pressure thats making a contact. Have a look around.

Again you may have tried this so sorry for stating the obvious

.

 

hopslink's picture

Re: emonBase enc28j60 initialization issue

Your chip may not be fully seated in the IC holder. As above, apologies if you have tried this, but it can take a surprising amount of force to seat them fully.

Have a look all round it. If one corner / end seems higher than the other then make sure the legs are all entering their sockets correctly. If all the legs look ok give the high corner / end a firm push into the socket, support the back of the PCB in that area to ensure it doesn't snap.

Typically the back of the IC will sit around 1mm above the top of the socket.

nikschuiling's picture

Re: emonBase enc28j60 initialization issue

Thank you all for your quick responses. I've already tested with a new 74HCT125, but no difference. All chips seem to be seated fully in the IC holders. With touching the back of the chip, I mean touching the back of the PCB. By the way, I just ordered an additional kit to do some more testing.

 

jonathanfurness's picture

Re: emonBase enc28j60 initialization issue

NIk,

I thought it was just me, but I have EXACTLY the same issue. Fingers on the back of the board results in some activity in the serial window. I'm still unsuccessful in getting my NanodeRF to initialize at all. No Ethernet, no nothing. Everything is seated, resoldered, tested voltages, all correct. It's odd that a few of us are struggling with this issue.

I'd love to know what results in your building another kit, as that's my only resort now.

Thanks for posting, I feel like I'm not alone now!

Jonathan

prensel's picture

Re: emonBase enc28j60 initialization issue

Similar problems here, fresh build from kit received yesterday.

The RF part works but ethernet fails.

 

nikschuiling's picture

Re: emonBase enc28j60 initialization issue

Hi all,

This issue seems to be caused by faulty MCP1702 Voltage Regulators, see http://openenergymonitor.blogspot.com/2012/04/faulty-batch-of-mcp1702-voltage.html#!/ for details. I jjust ordered my replacements and will test again soon.

@Glyn: thank you for quickly sending a new ENC28J60 chip. I just tested the new chip, but I guess you understand this didn't fix the problem ;-). By the way, the new ENC28J60 chip looked like it has been hit by a big truck (bended pins). Be careful with sending such small components.

Thanks all.

Nik

Pcunha's picture

Re: emonBase enc28j60 initialization issue

I have assembled mine yesterday and i have the same problem.

It the board transmits anything it hangs rx and serial stays quiet. If i touch some parts of the board thr receive is activated again.. Very strange behavior, cost-me already a day of work.

I was looking for a software problem, looks its hardware based.

The 3.3v regulator near the ethernet chip stays very hot. Any suggestions

TrystanLea's picture

Re: emonBase enc28j60 initialization issue

Hello Pcunha, does the ethernet chip initialize? Do you get a DHCP lease?

Pcunha's picture

Re: emonBase enc28j60 initialization issue

Yes it did initialize, get IP from dhcp, in some cases reply to pings. but if i make it send packages it chashes.

I´ve swaped the 3.3v regularors from the nanodeRF with the one of the Glcd and the problem was solved.

one more regulator problem...

Be wise that the regulator problem not always cause the chip to fail in initialization.

Thanks you all.

schepparn's picture

Re: emonBase enc28j60 initialization issue

I have gone through quite a few Nanode boards side by side and noticed the same problem on them (initializing DHCP but getting stuck on DNS) and I believe I have a few experiences that could be interesting for this disussion. 

While I think that the voltage regulator could alleviate the problem I think that the real problem is the design of the power traces on the PCB from the USB contact and more or less sensitive ethernet chips causing it.

Why do I say that?

Well by switching power supplies to ones with more stable voltage output (USB power plugs has quite a large voltage range, especially cheap ones) I managed to get the DNS working.

This doesn't rule out the voltage regulator though!?

However, when I switch a fully functional ENC28 to a board with DNS problems it runs without hesitation.

Also, when looking at the schematic of the Nanode RF it is clear that the originally intended power input should be around where the diode is (pin 0V = ground and VIN). Here it has extra wide traces compared to the miniscule ones running all over the board from the USB and programming pins. By powering the board with the same, previously unstable, USB supply it now works. See attached picture for more details. I have a couple of other hacks here that shouldn't be confused with this power hack (switched the 5V voltage regulator and tristate buffer for bridges - I'm not using this functionality).

I'm not saying that the regulator fix is not working, it obviously is (maybe I didn't get any faulty regulators in the whole batch). I just wanted to point out that there might be other things to try before heating up those trusty MCP1702 :)

Hope that helps someone!

Lloyd's picture

Re: emonBase enc28j60 initialization issue

I'm either going mad, or there is no attached picture.  Quite keen to see what you have done.

Lloyd

schepparn's picture

Re: emonBase enc28j60 initialization issue

I don't know what is wrong, I can't seem to see it either. If you can't see it in this post just send me an email at schepparn->gmail and I'll send it to you directly. 

Lloyd's picture

Re: emonBase enc28j60 initialization issue

Here is schepparn's picture

schepparn's picture

Re: emonBase enc28j60 initialization issue

Team work :) - thanks!

Lloyd's picture

Re: emonBase enc28j60 initialization issue

I'm intrigued that if I use an external 10v psu, through the 7805 with heatsync, my emon base fails almost permanently.  I had expected it to be at least as good as a random usb psu, which works most of the time.  I have not got a scope to view the output of the 10v supply, but I would not have expected it to be that bad.  It is not a random unbranded unit.

Lloyd

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.