I've found time to design two new peripheral modules so far. They are very simple: one features 6 power relays (name:
PREL6) and another 4 x 6 switch matrix made with signal relays (name:
SMX46). Both modules have two thing in common: connector on their front panel (see below) and entry-level on-board MCU.
The connector is 16-pin dual row 3.81 mm and two of them is possible to mount on the module's front panel. Sockets with various number of pins (8-pin push-in type is shown on the picture) can be used and they could be of push-in type, with screws, etc. Few manufactures has it in offering like WE and Weidmueller and cheaper versions are available on Alibaba, etc.
Functionality of both modules are trivial and control could be easily accomplished with I/O expander parts such as MCP23S08 or MCP23S17. But I found that entry-level STM32F030 MCU is in the same price range and offers more freedom in programming and has extra features (e.g. PWM generation). Since on-board firmware downloading procedure completely automated on the BB3 (i.e. few clicks and master MCU will do it for you) there is no reason what not use MCU instead of I/O expander.
PREL6Quick facts- 4 x SPDT relays, max. 8 A / 230 Vac
- 2 x SPST relays, max. 8 A / 230 Vac
- On-board +3.3 V LDO
- STM32F030 MCU
- Firmware download via UART
- Optional SWD for debugging
- I2C EEPROM for storing board specific parameters
- Dimensions: 146 x 95 mm, 2-layer PCB
Source files on the github:
https://github.com/eez-open/dib-prel6Schematics are in the attachment.
SMX46Quick facts- 24 x SPDT relays, max. 2 A
- 1 x power relay, max. 8 A / 230 Vac
- 2 x DAC output 0 - 10 V
- On-board +3.3 V LDO
- STM32F030 MCU
- Firmware download via UART
- Optional SWD for debugging
- I2C EEPROM for storing board specific parameters
- Dimensions: 146 x 95 mm, 2-layer PCB
Source files on the github:
https://github.com/eez-open/dib-smx46Schematics are in the attachment.
The SMX46 module also includes one power relay and two analog outputs derived from PWM generated by the on-board MCU.
Both modules will be programmed from local TFT touchscreen display or remotely with new set of SCPI commands that we have to add. They will be also accessible via MQTT.
Your comments are welcome as usual.