Skip to content

Initial task list for adding support for STM32F7 MCU board #1

@prasimix

Description

@prasimix

Initial list that include tasks and changes required for adding support for new modular PSU with STM32F7 MCU board.

TFT LCD and touchscreen controller

TFT LCD is replaced with 4.3" (480x272, landscape). It comes with 24-bit RGB interface (only 18-bit is wired on the board). Firmware should support 16-bit, or 18-bit color space. Since new TFT LCD doesn't include touch screen controller, a AR1201-I/SS is selected (Note: Microchip recently changed its status to "not recommended for new design"). Used interface is I2C, configured for 4-wire sensor. Controller include 128 bytes of user EEPROM that should be used to store calibrations data.

EEPROM

New MCU board comes with EEPROM that share the same I2C bus as peripheral (power) modules and fan controller (on the new AUX PS board). Its address lines are hard-wired as 111. Therefore it can be accessed for read operations on address 0xA1 and for write operations on 0xA2.
Note that power modules also can have on-board I2C EEPROM. Its address lines wiring reflect module connector number (i.e. 001 for slot No.1, etc.).

Binding posts IC (TLC5925)

This IC is completely removed due to new approach used for connecting power modules. Therefore we have to take into account the following:

  • Serial and parallel coupling functionality would remain but it require more complex wiring using "backplane" PCB. If we failed to manage that on the hardware side, we still can offer software functionality that will inform user how to wire channels outputs externally, and cumulative output value will be displayed.
  • Sense relay is now located on the power module and it is controlled using channel's I/O expander. Sense LED activation does not require firmware attention.
  • Output Enable (OE) LED is also implemented on the power module. It's now bi-color (green-red, require two I/O expander's output pins) to indicate uncoupled and coupled mode of operation!
  • Remote programming LED is also implemented on the power module.
  • Standby LED remains, but it doesn't required additional firmware attention. It's implemented as inverted PWR_DIRECT (Power On) signal.

Watchdog

No dedicated reset/supervisor IC is used anymore. STM32 has internal watchdog that has to be activated.

Module SPI devices

Each power module has dedicated SPI channel and two CS (chip select) lines to address up to 4 devices:

Address Device
00 I/O expander (MCP23S17)
01 DAC (DAC8552)
10 ADC (ADS1120)
11 Temp. sensor (TC77)

DC fan control

MCU doesn't control directly DC cooling fan anymore. Instead a dedicated fan controller AMC6821 is used (located on the AUX PS board). We'll use its internal temperature sensor to measure temperature inside chassis (previously directly measured as AUX sensor). Its I2C address is 0x18.

Power module temperature sensing

NTC for temperature sensing on the power module is replaced with the SPI TC77 temperature sensor.

RTC

Internal MCU's RTC functionality is used instead of dedicated IC used in previous design. Replaceable Lithium battery instead of supercap is used as power backup. RTC input/reference clock is derived from master clock (25 MHz) and scaled down to 1 MHz (not 32.768 kHz).

Ethernet

W5500 controller is replaced with built-in MCU Ethernet MAC resources and external PHY IC (DP83843) is used for interfacing with the network (via RJ45).

I/O Expander

As already stated, some Arduino shield functionalities (accomplished using the TLC5925) is now moved to power modules to improve overall modularity (i.e. peripheral module independence). New power module could also include some new functionalities as stated below.

Bit Function Direction
0 Remote sense polarity error Input
1 CC Input
2 CV Input
3 Power good Input
4 OVP fault (NEW, optional?) Input
5 OVP enable (NEW, optional?) Output
6 OE uncoupled LED (modified) Output
7 OE coupled LED (modified) Output
8 Down programmer (DP) disable Output
9 Output Enable Output
10 Remote sense (NEW) Output
11 Remote programming Output
12 Current range 5 A Output
13 Current range 500 mA Output
14 Current range 50 mA Output
15 Extra Cout (NEW, optional?) Output

Low ripple

Power module pre-regulator bypass functionality ([SOURce[]]:LRIPple) is not applicable since new module doesn't include on-board pre-regulator (it is powered from AC/DC power module which acts as pre-regulator, too).

OE control and sync

New power module require usage of OE_SYNC output in combination with OE output (I/O expander) to set output enable circuit. It allows simultaneous control of two or more power module's output state.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions