ECU – Dual Ethernet Module

It is always two phases to a mock-up design – I tend to place the main components and then start to add the passive components that often come in numbers. The reference design on this switch had close to 70 passive components and using 0603 size that will become tight, but doable. I would be better off with 0402 components or placing some on the back side, but for now I want to stick to 0603 and one side only, I need to get the schematics right becuse the reference circuit have a lot op optional stuff that I might want to remove.This switch ahve a RMII + SPI Interface to the MCU – basically it should work as is if you use a ordinary RMIIĀ  – so being a bit optimistic I hope this one is a bit of minor changes in SW and is up running. I have started to use 6 layer as standard these days and PCB routing have so far been fun – do a little bit every morning and suddenly your done. It will be interesting to see this one finished thought.

As for the option to make a single Ethernet module I think we need a different aproach for that – I won’t have room for a MCU with PHY, Trafo and connector on a 20x60mm module based on what I see above, so I need to rethink a little before I attempt that one.

Bootloaders and the capability to download firmware do interest me – since the module have a SPI Flash and Ethernet it should be capable of receiving firmware upgrades for the entire network. I can download new images here and then transfer the image to the main board that actually are capable of upgrading the modules – this part is easy – but how do I upgrade this module and how do I upgrade the main module? And how do I do that safely?

If the main board upgrade the Dual Ethernet Module with a bad Ethernet stack we will be stuck, so I think the solution needs to be that Main keep two images in stock – one new and one older verified – if the new fail on communication it should revert to a safe, minimalistic version. As we download over Ethernet we upgrade the module and if the module is not able to communicate with the download routine within a few secs we simply reverse to the old version.

Booting main needs to be done from this module – I preffer to use the build in Bootloader if I can, but I might need to create a specialized bootloader for the main board itself – this is a bit tricky for many reasons – first of all this is a module that needs to be switched on by main, so I need a bootloader that recognize these modules and switch them on etc … it’s a bit if SW design that need to go hand in hand with electronics here to be 100% safe.

One option is to allow this module to start by itself and actually switch main on/off – it is possible – I just need to think things through because bootloader must be 100% safe – meaning I must also handle the case with a blank main and blank Ethernet module – but, lets take one step at the time.

Special thanks to everyone reading these blogs – the blog is up to 3000 views a day and that is very encouraging for a tech log of this nature, so thank you!

Leave a Reply