Replies: 9 comments 7 replies
-
You will have to write a driver for it. There’s some instructions in lwip_driver.h. You can also follow the other two driver implementations as examples. I too wouldn’t mind seeing MicroMod support. Basically, it all boils down to implementing all the functions from that header. |
Beta Was this translation helpful? Give feedback.
-
I was afraid it’s that big. I was hoping that only some parts of the original T41 driver must be modified and was hoping for some hints where that would be. Should the pad redefinition be enough?! I think nobody has done it so far…. OK let the journey begin. Thanks |
Beta Was this translation helpful? Give feedback.
-
It’s a different PHY chip, and probably has a different usage. (I haven’t read docs for that one.) If you’d like to send me some hardware, I could maybe have a look at what’s required, depending on my availability. So far, I’ve been working on this library because I’m using it and needing it myself, which partly drives how I develop for it. |
Beta Was this translation helpful? Give feedback.
-
It’s also very possible that the implementation won’t be too hard to adapt from the Teensy 4.1 driver, since there’s the standard RMII interface. I think I was seeing it from the point of view of interfacing with the Teensy 4.1 MAC itself, and contrasting it to my SPI-based W5500 driver. When I think about it more, in fact, I’d be surprised if it was very difficult. I’ve just learned, over my career, “never to assume easy.” :) |
Beta Was this translation helpful? Give feedback.
-
I totally agree. the PHY should be compatible straight forward, the registers are de-facto standardized it seems and RMII is RMII with the exception of the clock but the PHY is teensy friendly configured to receive the clock. So it should boil down to change the pads and maybe the MUX in lwip_driver.h/cpp to use ENET2. That's where I might need help to understand what code can stay and what not. I will give that a try later today. I live in Europe and assume you're US based, not sure if sending HW is meaningful as it should be software only by now. I made a carrier board with PoE Ethernet and all sorts of peripherals. The nice thing of the MicroMod is that it exposes FlexIO 2 pins + ENET2 + Can + 2x I2C + UARTs etc.... this together with a carrier board makes it pretty cool. The board is 22mm x 22mm - and it's really small. will let you know when I have some progress. |
Beta Was this translation helpful? Give feedback.
-
My thoughts on developing for hardware, eg. drivers: I disagree that it’s “software only”. It’s hard to develop software for hardware without the hardware. |
Beta Was this translation helpful? Give feedback.
-
that's for sure. I also need the hardware. I guess I have a basic understanding of how to port FNET to be using ENET2. It's not so straight forward as I thought but it should be possible and my hardware issue didn't help studying the code. I need to pause this thread until I have a new revision of the pcb or I can hack something on my faulty pcb which is what I will try tomorrow, some jumper wires might give me luck and might continue the software side. |
Beta Was this translation helpful? Give feedback.
-
success! I managed to get ENET2 working on MicroMod with a LAN8720A PHY. I will also design a custom board with a DP83825IRMQR PHY (the same as on the Teensy 4.1) which needs less external components (the mdi is voltage driven and it doesn't need external resistors) and it also needs other register and strap config. When I have a clear guideance on how to manage the additional user pins, I can push my code. |
Beta Was this translation helpful? Give feedback.
-
Success #2. |
Beta Was this translation helpful? Give feedback.
-
Hi and many thanks for the wonderful library!
I'm playing around with a MicroMod Teensy and have routed the 2nd ENET pads to a LAN8720A PHY which is configured to receive the clock. This pretty much follows that connection. On a MicroMod only the 2nd ENET pads are exposed on the M2 connector.
How can the library be configured to use the 2nd ENET interface? Some pointers would help me. I'm happy to share my MicroMod Teensy adaptions and hardware hookup here in return.
Beta Was this translation helpful? Give feedback.
All reactions