Would anyone out there happen to have a schematic for the Flamingo EDA (2009) (http://www.flamingoeda.com/2008/09/04/arduino-ethernet-%E7%BD%91%E7%BB%9C%E6%89%A9%E5%B1%95%E6%9D%BF/) version of the Arduino Ethernet Shield V1.1 as shown in the following image?
The reason for my request; I have a number of Microduino-ENC28J60/Microduino-RJ45 modules gathering dust that purport to be Arduino compatible but don't work with commonly available Arduino Ethernet libraries.
I'm keen to find out what differences in the schematics between the two devices enables an Arduino UNO/Arduino Ethernet Shield V1.1 combination to successfully implement a simple MQTT controller application, as per the example here:
but the same code will not work with the Microduino-ENC28J60/Microduino-RJ45 modules combination.
My journey so far:
The two Microduino modules work coupled together, with one board containing the RJ45 connector and the other the ENC28J60 chip. However, as I mentioned above, although these modules claim to be Arduino compatible I have never managed to get any of them to work using commonly available Arduino Ethernet libraries..
Recently I realised I also had an old (2008) vintage Flamingo EDA Arduino Ethernet Shield V1.1 gathering dust, which, presumably, had a schematic very similar to the Microduino modules. And, using the Instructables guide referenced above, I had little difficulty getting this old shield to work with an Arduino UNO and applying it as an effective garage door controller.
Heartened by this I attempted to emulate the UNO/Ethernet Shield V1.1 combination success with the Microduino modules but no go. But I did find that inserting the Ethernet V1.1 Shield into a Microduino-Shield UNO fitted with a Microduino-Core module:
and running identical firmware to the UNO/Ethernet Shield V1.1 combination, also worked.
Given I have many Microduino-ENC28J60/Microduino-RJ45 modules and only one Ethernet Shield V1.1 card, I began to try and fathom why the Microduino Ethernet modules would not function. However, while I have the schematics for the Microduino-ENC28J60/Microduino-RJ45 modules I've been unable able to access off the Internet a schematic of the Arduino Ethernet Shield V1.1 board.
Does your "Arduino Ethernet Shield V1.1" use the ENC28J60?
If so, it should not be referred to as a knock off of the Arduino Ethernet Shield because no Arduino Ethernet Shield has ever used the ENC28J60. They have always used the W5100 (and now W5500).
@pert - Yes the "Arduino Ethernet Shield V1.1" does use the ENC28J60. You are correct that this shield is not a 'knock-off'. I've established it was produced by the Chinese manufacturer, Flamingo EDA. Many early Arduino Ethernet shields did use the ENC28J60, before the W5100 was released which had the Ethernet stack built in.
The schematics for the Microduino-ENC28J60 and Microduino-RJ45 modules are attached. Please note the RJ45 socket depicted in the Microduino-RJ45 schematic is a HR911102A, not the HLJ-6115ANL actually fitted to the Microduino-RJ45, which features Passive POE wiring. Output pin 7 on the HLJ-6115ANL is directly connected to pins 4-5, and output pin 8 is directly connected to pins 7-8 of the RJ45 socket respectively.
An example employing a correct depiction of the HLJ-6115ANL is also attached derived from:
As a consequence I made up a small pass through Ethernet cable that dropped connection of pins 4,5,7 & 8 in case these had an adverse impact on being able to connect the Microduino-UNO board to a PC via USB for dev purposes.
Otherwise the Microduino-ENC28J60/Microduino-RJ45 modules circuit seems to be a pretty standard ENC28J60 configuration.
The schematic for the Microduino shows that it uses D8 as the ENC28J60 CS pin. I would check whether the same is true for the Ethernet Shield V1.1. The official Ethernet shield uses pin 10 for the W5100 CS and I expect it would be common for ENC28J60 Ethernet shields to do the same. The ENC28J60 shield I have uses pin 10 for CS.
Thanks @pert. I will check the CS connections as you suggest.
@pert - you are correct. The CS pin of the EN28J60 (pin 9) of the Arduino Ethernet V1.1. board is connected to pin 10 on the Arduino shield pin outs.
I'll need to work out how to make a Microduino specific version of the Ethernet package that shifts CS to pin 8, and see whether that fixes things.
After a few minutes contemplation I decided that altering the standard Ethernet libraries to make the Mircoduino modules compatible was fraught with potential downstream complications.
So I opted on a hardware solution and modified one of the Microduino-ENC28J60 boards to shift the CS pin from pin 8 to pin 10.
And it works a treat. Thank you @pert. All working fine now.
You're welcome. I'm glad to hear it's working. Enjoy!