Good Morning there,
it’s been a while again but there is some progress finally.
So i thought alot about the best implementation mainly with the hardware and here is what i came up with and why: The NerdSEQ will get a I2C expander module, 4HP width. The main reason is that with the development of the NerdSEQ i didn’t plan any I2C connections, so it’s just not there. However i have a debugport on the backside which can theoretically be reconfigured to be used for I2C and the pinout would match those of the ER301 and others.
But they are 3 issues here:
- Most people would have to solder the pins on the backside which is not the easiest for unskilled solderers as it is not accessible from the front side.
- The I2C port that i could use has a hardware-bug in older revisions of the microcontroller and so i can’t use the hardware I2C function on these and would need to implement a software I2C which takes up more ressources. So it would need to add a detection of the chip revision and depending on it i need adapt the implementation. And it’s not even sure if it is fixed in newer revisions as the errata’s of the chip are not always very reliable. Checking the forums i see a lot of issues. It’s definitely something that is possible to implement, but not the best thing to do…testing all possible revisions which are possible in the field etc…and overhead for a possible software implenentation.
- As the port was never intended to be used as I2C port, i didn’t add any protection of the pins, so they go directly to the microcontroller ports. That would mean that there is a risk that at minimum the pins fail (as in that they possibly break and never work again) up to a total fatal fail of the microcontroller. Thats all possible with every power on. Something like this doesn’t happen a lot…but there is a chance.
So that are the main reasons why i decided to go for an expander module, where the hardware I2C works as it should be but also with an additional output protection, so the risk of breaking the NerdSEQ is gone.
On the other hand the benefit is here that i will add 2 I2C ports in there, so one expander can be used for at least 2 same or different modules. And if you know how expanders work with the NerdSEQ then you know that these can be routed flexible to different and multiple tracks.
The other good news is that i finished the PCB of the expander yesterday and it will go to the PCB factory so i can do my first real tests soonish.
My aim is having a working prototype for Tokyo modular. So hey Brian, if you show up there, then we can discuss and finalize the whole thing.
All in all, still keep in mind that i also have to work on the NerdSEQ ecosystem, so it still takes some months until it’s finished and available. But my guarantee to you is, if it works well (and it should in theory) then it will definitely be there!!
Cheers, T