04/27/2019 at 23:42 •
I decide to make with KISS rule at the first place.
For slave outputs I decide to make chained shift register powered with SPI, when I want to make it more complicated I can add small CPLD/uC to keep more registers and be more "intelligent"
I think also about adding extra lines for UART and CAN buses
First test is here:
Next step is to make this idea more robust....
04/26/2019 at 17:06 •
I choose OLIMEX-E407 as a starting point.
After cloning micropython main repo and changing some code I can test and tick as done:
- micropython itself :)
- button and LED
- SPI (it was the biggest problem, because pins with SPI are connected everywhere) - without any problem I reached 10MHz (enough for IO)
This to do next is to make slave module....
04/23/2019 at 23:58 •
For now I plan to make two basic one:
- isolated input module
- relay output module
when it is star to work I want to add some more advanced one:
- digital output
- analog input/output
- counting/generating signal modules
- sensor module (some kind of ADC with enough powered to calculating sensing result - for example FFT with vibration sensor)
- communication module (LORA, RS232, RS485, Modbus, CAN and so on)
- audio module (some module to generate simple music tones)
- motion module (module which interpreted G-Code and drive axis)
do you have any idea what more could be done?
For sure I want to make all device with multi-controllers setup. So one with micropython will talk to each other, and others only make one task.
Main challenge right now is to design good concept of internal bus to realize all of this functions. For now I think about some SPI with some additional interrupt and synchronization lines. I will be very thankful for any suggestions.