Skip to content

M2 Interface Definition

Draft interface definition

This page preserves a draft M2 proposal. A local proposal workbook contains M2 and M2xM sheets, but it cites a separate M2E接口定义_0714.xlsx that is not present, and its approval and version provenance could not be established. No primary SiFli source confirming the assignments or counts was found. The workbook has no M2xN or M2xA sheets, so the corresponding summaries below are unverified. This is not a released μForge.io interface standard. Treat all assignments as provisional; verify the selected module, carrier, connector, electrical limits, and pin multiplexing before committing to production.

Scope

The local proposal workbook's M2 and M2xM sheets number positions 1–75 but omit positions 24–31 from the contact map, leaving 67 numbered contacts. Both sheets label the map as an M.2 Key-E connector; the M2xM sheet also says the M2 baseline must be included in the same module. These are proposal labels, not evidence of conformance with the PCI-SIG M.2 specification, module-to-carrier interchangeability, or the number and arrangement of physical connectors. M2xN and M2xA appear only as summaries on this page; no source contact maps for them were found.

  • M2 — connected display, audio, storage, debug, and general embedded I/O.
  • M2xM — draft multimedia display, camera, and PDM allocation. I2S/PCM is mentioned in the draft summary but has no assignment in the available M2xM sheet.
  • M2xN — networking, USB, CAN, and UART signals.
  • M2xA — motor control, analog acquisition, encoder, and timer signals.

M2xH and M2xP remain naming reservations; no contacts are assigned to them in the current draft.

Connector relationship not established

The local proposal workbook says M2xM requires the M2 baseline in the same module, but does not say whether their maps use separate or shared physical connectors. No connector count or arrangement can be inferred. The workbook provides no M2xN or M2xA contact maps.

Connector convention

In the local proposal workbook's M2 sheet, odd-numbered contacts are shown on the top side and even-numbered contacts on the bottom, viewed from the card edge. Positions 24–31 are absent from the contact map and identified as the proposed key/notch area; this drawing does not establish mechanical conformance with the M.2 E-key specification.

Table: M2 Connector and Extension Summary
Item Definition
Connector format Draft 75-position card-edge map; 67 contacts shown; M.2 E-key conformance not verified
Positions omitted in the proposal 24–31 (shown as a proposed key/notch area)
Base allocation M2
Multimedia allocation M2xM
Extension content in this draft M2xM contact map; M2xN and M2xA summaries only, not source-verified
Declaration example M2 + M2xM

M2 base profile

M2 is the base profile for compact connected products. Its allocation is intended to cover a QSPI display and capacitive touch panel, Wi-Fi SDIO, 1-bit TF-card SDIO, analog audio, debug, USB, CAN, and general buses. Several contacts are intentionally multiplexed so that one module can select the function appropriate to its SoC and product configuration.

Table: M2 Functional Allocation
Function Allocated signals Design intent
Power USB_VIN, VBAT/VBATS, 3.3V, CHG_INT, and GND Labels in the proposal map; voltage, current, and sequencing requirements are not specified here.
QSPI display LCDC1_SPI_CS, CLK, DIO0–DIO3, CS2, TE, RSTB, LCD_BL_PWM QSPI display panel, backlight, and optional secondary chip select.
Capacitive touch CTP_I2C1_SDA, CTP_I2C1_SCL, CTP_INT, CTP_REST Capacitive-touch control and interrupt.
Wi-Fi WiFi_SD2_CLK, CMD, D0–D3, PDN, INT, WAKE 4-bit SDIO Wi-Fi companion interface.
TF card TF_SD1_CMD, CLK, D0, TF_DET 1-bit TF-card interface and card detect.
Analog audio ADC_1P/N, ADC_2P/N, MIC_BIAS, DAC_1P/N, DAC_2P/N, AU_PA_EN Two analog-input pairs, microphone bias, two DAC pairs, and PA enable.
Debug and recovery DBG_UART1_TXD/RXD, SWDIO, SWCLK, SWD_SW, BOOT_MODE Debug UART, SWD, and boot/recovery selection.
General serial buses SPI1/SPI2, I2C2–I2C4, UART2/UART3, and general GPIO/bus lines (G0–G17/BUS0–BUS17) Product-specific buses selected through the module pin mux; I2C1 is allocated to the touch controller. Several SPI2/I2C3/I2C4/UART3 positions can alternatively carry PDM1/PDM2 digital-microphone signals.
Other control CAN_TX/RX, USB/USB host signals, PWR_KEY Field bus, USB role control, and power-key input.

Color-coded M2 pinout

Figure: M2 Signal-Group Color Legend

The colored bar is the table key. The two-sided contact table below records this M2 proposal's reference pinout, including alternate functions and multiplexing; it is not a released interface specification.

M2 contact assignment

This two-sided grid uses Bottom Pin / Top Pin / CN1 columns. The Alt columns record an additional multiplexed function when the workbook assigns one. Every function cell uses its category color from the legend above.

Table: M2 Base Contact Assignment
Alt Function Bot pin CN1 Top pin Function Alt
SDIO2_D2 / GPADC WiFi_SD2_D2 74 75 TF_DET SDIO1_D1 / SPI1_MOSI / UART2_RXD
SDIO2_D3 / GPADC WiFi_SD2_D3 72 73 TF_SD1_D0 SDIO1_D0 / SPI1_MISO / UART2_TXD
SDIO2_CMD / GPADC WiFi_SD2_CMD 70 71 TF_SD1_CLK SDIO1_CLK / SPI1_SCK / UART2_CTS
SDIO2_CLK / GPADC WiFi_SD2_CLK 68 69 TF_SD1_CMD SDIO1_CMD / SPI1_CS# / UART2_RTS
SDIO2_D0 / GPADC WiFi_SD2_D0 66 67 WiFi_WAKE SDIO1_D3 / CAN_RX
SDIO2_D1 / GPADC WiFi_SD2_D1 64 65 WiFi_INT SDIO1_D2 / CAN_TX
GND 62 63 GND
GPADC PWR_KEY 60 61 USBHOST_D−
PDM1_DATA / I2C3_SDA / UART2_RXD / G0/BUS0 SPI2_MISO 58 59 USBHOST_D+
PDM1_CLK / I2C3_SCL / UART2_TXD / G1/BUS1 SPI2_MOSI 56 57 USB_OTG
PDM2_DATA / I2C4_SDA / UART3_RXD / UART2_CTS / G2/BUS2 SPI2_SCK 54 55 CTP_I2C1_SDA G5/BUS5
PDM2_CLK / I2C4_SCL / UART3_TXD / UART2_RTS / G3/BUS3 SPI2_CS# 52 53 CTP_I2C1_SCL G6/BUS6
G4/BUS4 CHG_INT 50 51 CTP_INT G7/BUS7 / SWDIO
USB_VIN 48 49 CTP_REST G8/BUS8 / SWCLK
GND 46 47 GND
3.3V 44 45 VBAT/VBATS
G9/BUS9 USB_DET 42 43 DBG_UART1_TXD SWDIO
G10/BUS10 WiFi_PDN 40 41 DBG_UART1_RXD SWCLK
UART3_RXD G11/BUS11 38 39 G14/BUS14 UART2_RXD
UART3_TXD G12/BUS12 36 37 G15/BUS15 UART2_TXD
I2C2_SCL G13/BUS13 34 35 G16/BUS16 I2C2_SDA
GND 32 33 AU_PA_EN G17/BUS17
Positions 24–31 omitted (proposed key/notch area) Positions 24–31 omitted (proposed key/notch area)
DAC_1N 22 23 DAC_2N
DAC_1P 20 21 DAC_2P
ADC_2N 18 19 GND
MIC_BIAS 16 17 ADC_2P
ADC_1N 14 15 ADC_1P
LCDC1_SPI_CS2 12 13 GND
LCDC1_SPI_DIO2 10 11 LCDC1_SPI_DIO3
LCDC1_SPI_DIO0 8 9 LCDC1_SPI_DIO1
LCDC1_SPI_CS 6 7 LCDC1_SPI_CLK
LCD_BL_PWM 4 5 LCDC1_SPI_TE
SWD_SW 2 3 LCDC1_SPI_RSTB
— — 1 BOOT_MODE

M2 pin descriptions

The groups and colors match the contact table above. The workbook does not define I/O directions, so this column is provisional integration guidance, viewed from the module: I means input, O means output, and I/O means bidirectional. Comma-separated directions follow the listed signal order. SPI and PDM entries assume the module supplies the clock; SWD entries assume an external debugger. Confirm every direction and electrical requirement against the selected module and SoC documentation.

For I2C, I/O describes the bidirectional SDA/SCL bus lines, not a guarantee of every controller/target mode or clock-stretching capability. Confirm pin configuration and pull-ups for the actual module. See NXP's I2C-bus specification. The PDM clock-output/data-input assumption follows the microphone-host arrangement illustrated in ST's PDM application note; it does not establish support on a particular module.

Table: M2 Signal Descriptions and Provisional Directions
Signal group Signal I/O Description
Power VBAT/VBATS I Battery-input rail.
Power 3.3V I 3.3 V supply rail.
Power CHG_INT O Charger interrupt / status output.
Power USB_VIN I USB input / charging-path rail.
Power USB_DET I USB detection signal.
Power USBHOST_D+, USBHOST_D− I/O USB host-mode data pair, separate from the primary USB port.
Power USB_OTG I/O Signal label in the proposal workbook; that sheet marks it “Not supported on current platform.” Do not infer support from the contact label.
Display LCDC1_SPI_CS, LCDC1_SPI_CS2 O QSPI display primary and optional secondary chip select.
Display LCDC1_SPI_CLK O QSPI display clock.
Display LCDC1_SPI_DIO0–DIO3 I/O QSPI display data lines.
Display LCDC1_SPI_TE I Tearing-effect sync input from the panel.
Display LCDC1_SPI_RSTB O Display panel reset, active low.
Display LCD_BL_PWM O Backlight PWM control.
Touch CTP_I2C1_SDA, CTP_I2C1_SCL I/O Capacitive-touch controller I²C bus.
Touch CTP_INT I Touch-controller interrupt.
Touch CTP_REST O Touch-controller reset. The workbook spells this signal CTP_REST.
Wi-Fi / SDIO WiFi_SD2_CLK, WiFi_SD2_CMD O, I/O Wi-Fi companion SDIO clock and command.
Wi-Fi / SDIO WiFi_SD2_D0, WiFi_SD2_D1, WiFi_SD2_D2, WiFi_SD2_D3 I/O Wi-Fi companion SDIO data lines (4-bit).
Wi-Fi / SDIO WiFi_PDN O Wi-Fi module power-down control.
Wi-Fi / SDIO WiFi_INT I Wi-Fi interrupt. Shares pin 65 with SDIO1_D2/CAN_TX.
Wi-Fi / SDIO WiFi_WAKE I/O Wi-Fi wake signal. Shares pin 67 with SDIO1_D3/CAN_RX.
Wi-Fi / SDIO TF_SD1_CMD, TF_SD1_CLK, TF_SD1_D0 I/O, O, I/O 1-bit TF-card SDIO command, clock, and data.
Wi-Fi / SDIO TF_DET I TF-card presence detect.
Wi-Fi / SDIO SDIO1_D0–D3, SDIO2_D0–D3 I/O Generic controller-level aliases for the same physical lines as the TF-card (SDIO1) and Wi-Fi companion (SDIO2) buses; use the role-specific names above unless the module needs full 4-bit SDIO on both sides.
Wi-Fi / SDIO CAN_TX, CAN_RX O, I Logic-level CAN transceiver interface, multiplexed onto pins 65 and 67 alongside WiFi_INT/WiFi_WAKE. The carrier still needs a CAN transceiver and protection appropriate to the product bus.
Wi-Fi / SDIO GPADC I Wi-Fi SDIO contacts 74, 72, 70, 68, 66, and 64, plus PWR_KEY on contact 60, have ADC alternate functions in this map.
Audio ADC_1P/N, ADC_2P/N I Two differential analog-microphone input pairs.
Audio MIC_BIAS O Microphone bias supply.
Audio DAC_1P/N, DAC_2P/N O Two differential audio-output pairs.
Audio AU_PA_EN O Audio power-amplifier enable.
SPI / I²C / UART SPI1_CS#, SPI1_SCK, SPI1_MOSI, SPI1_MISO O, O, O, I SPI1, multiplexed with the TF-card path.
SPI / I²C / UART SPI2_CS#, SPI2_SCK, SPI2_MOSI, SPI2_MISO O, O, O, I SPI2, multiplexed with I2C3 and UART2.
SPI / I²C / UART I2C2_SDA, I2C2_SCL I/O I2C2 uses SDA on contact 35 and SCL on contact 34. The earlier MPI/SD sharing description is not established by this contact map.
SPI / I²C / UART I2C3_SDA, I2C3_SCL I/O I2C3, multiplexed with SPI2.
SPI / I²C / UART I2C4_SDA, I2C4_SCL I/O I2C4, multiplexed with SPI2 and UART3.
SPI / I²C / UART UART2_TXD/RXD, UART2_CTS/RTS O/I, I/O UART2 has alternative positions in the TF-card and SPI2 groups and on contacts 39/37. The earlier MPI/SD sharing description is unconfirmed; check the module's actual mux selection.
SPI / I²C / UART UART3_TXD/RXD O/I UART3 has alternatives in the SPI2/I2C4 group and on contacts 38/36. The earlier MPI/SD sharing description is unconfirmed; check the module's actual mux selection.
SPI / I²C / UART G0–G17/BUS0–BUS17 I/O Generic GPIO/bus contacts, multiplexed with SPI2, I2C2–I2C4, UART2/UART3, PDM1/PDM2, or SWD depending on position.
Audio PDM1_CLK/DATA, PDM2_CLK/DATA O, I For each digital-microphone pair, CLK is a module output and DATA a module input. These functions share contacts 58, 56, 54, and 52 with SPI2/I2C3/I2C4/UART3.
Dedicated DBG_UART1_TXD/RXD O/I Debug UART, multiplexed with SWD.
Dedicated SWDIO, SWCLK I/O, I SWD debug port. Two alternative sharing options: the debug-UART positions (pins 43/41) or the touch interrupt/reset positions (pins 51/49). Only one should be populated per module.
Dedicated SWD_SW I Signal label in the proposal workbook; its routing-control behavior is not specified.
Dedicated BOOT_MODE I Boot / recovery mode select.
Dedicated PWR_KEY I Power-key signal.
Ground GND — Digital and analog return paths, distributed across the connector.

Wi-Fi SDIO data-label correction

The local proposal workbook assigns contact 64 to WiFi_SD2_D1 and notes that an earlier revision duplicated the D3 label there. This records a correction within the draft workbook only; it is not primary SiFli pin-mux confirmation. Both SDIO buses also carry generic controller-level aliases in the Alt column — SDIO2_D0–D3/SDIO2_CMD/SDIO2_CLK for the Wi-Fi companion bus, SDIO1_D0–D3/SDIO1_CMD/SDIO1_CLK for the TF-card bus — alongside their role-specific names.

M2 sharing rules

  • The workbook marks SWD as a multiplexed resource with two alternative routing options: the debug-UART positions (SWDIO on pin 43, SWCLK on pin 41) or the touch interrupt/reset positions (SWDIO on pin 51, SWCLK on pin 49). Populate only one option per module and reserve a recovery strategy before reusing any of these contacts.
  • SPI1 is shared with the 1-bit TF-card path; both are also exposed as the generic SDIO1_D0–D3/CMD/CLK controller bus, and pins 65/67 additionally carry CAN_TX/CAN_RX.
  • The Wi-Fi SDIO2 data lines are also exposed as the generic SDIO2_D0–D3/CMD/CLK controller bus; several of the same contacts double as GPADC analog inputs.
  • SPI2 and I2C3/I2C4 (contacts 58, 56, 54, and 52) can alternatively carry PDM1/PDM2 digital-microphone signals, plus generic G0–G3/BUS0–BUS3 GPIO aliases.
  • In the six-position G11–G16/BUS11–BUS16 group, UART3 uses contacts 38/36, UART2 uses 39/37, and I2C2 uses SDA/SCL on 35/34. These are distinct pairs, not three buses sharing identical pins. Each pair shares its contacts with the corresponding GPIO aliases; confirm simultaneous operation on the selected module.
  • The QSPI display and capacitive-touch groups are separate at the signal level, but their power, reset, and wake behavior must be reviewed as one display subsystem.
  • CAN_TX and CAN_RX are logic-level signals multiplexed onto pins 65/67, not separately allocated contacts. The carrier still needs a CAN transceiver and protection appropriate to the product bus.

M2xM multimedia profile

M2xM is a draft multimedia allocation. The local proposal workbook marks DPI and DVP as primary signal groups and MIPI DSI and CSI as alternatives, but does not define mux control or concurrent-use constraints. These labels do not establish support on a particular μForge module or SoC package; confirm device capability and routing in the selected module documentation before implementation.

Table: M2xM Functional Allocation
Function Labels in the proposal workbook Evidence and limits
RGB / DPI display R0–R7, G0–G7, B0–B7, DPI_CLK, DPI_DE, DPI_HSYNC, DPI_VSYNC, and shared display-control labels DPI is marked primary. The workbook does not list 8080 or EPD assignments.
MIPI DSI DSI_D0±–DSI_D3±, DSI_C±, reset, backlight PWM, and I2C labels DSI is marked as an alternative; six contacts are designated as shield ground. No TE signal is assigned in the workbook.
Touch control Generic I2C_SCL, I2C_SDA, and RESET labels The M2xM sheet does not identify a touch-specific interrupt/reset mapping; touch-controller support is unverified.
12-bit DVP camera D0–D11, MCLK, PCLK, HSYNC, VSYNC, PWDN, reset, and I2C labels Twenty contacts are shown; the workbook does not identify an I2C controller number.
MIPI CSI D0/D1 differential lanes, clock pair, PWDN, reset, and I2C labels CSI is marked as an alternative; four contacts are designated as shield ground. Multiplexing and concurrent-use details are not specified.
Digital microphones PDM1_CLK/DATA and PDM2_CLK/DATA Four PDM signals are shown.
I2S / PCM No I2S/PCM signal or contact assignment appears in the available M2xM sheet. The allocation is unverified; do not treat I2S/PCM as part of this map without an approved source.

M2xN networking profile

M2xN is an unverified networking-profile summary in this document, not a source-backed contact map. The available proposal workbook has no M2xN sheet, and no primary SiFli source for these assignments was found. The signal list and reserved-contact counts below must not be treated as verified.

Table: M2xN Functional Allocation
Function Draft summary (unverified)
Ethernet The draft text contains conflicting labels: Gigabit Ethernet / RGMII and RMII_* signals. No M2xN source map or primary SiFli source is available here to resolve them. Interface type and speed are unverified; do not claim either for a product until confirmed by an approved source.
USB USB1_D±, USB1_DET, USB1_OTG, USB2_D±, USB2_DET, USB2_OTG
CAN CAN1_TX/RX through CAN4_TX/RX, plus CAN1/2_STB and CAN1/2_ERR_N controls where assigned
UART UART1_TX/RX/CTS/RTS and UART2_TX/RX/CTS/RTS
Reserved 15 GPIO contacts and 12 GND contacts

M2xA analog and motion-control profile

M2xA is an unverified motor-control and acquisition summary in this document, not a source-backed contact map. The available proposal workbook has no M2xA sheet, and no primary SiFli source for these assignments was found. Signal names, counts, and physical assignments below must not be treated as verified.

Table: M2xA Functional Allocation
Function Draft summary (unverified)
BLDC control The draft lists PWM1_OUT/OUTN, PWM2_OUT/OUTN, PWM3_OUT/OUTN, BKIN1/2, DRV_EN, and DRV_NFAULT. It gives two inconsistent five-channel analog-input labels (ADC_IU/V/W, ADC_VBUS, ADC_NTC and ADC_IN1–ADC_IN5); a separate M2xA summary lists ADC0–ADC2. No M2xA source map or primary SiFli source was found to verify the names, count, or assignments. Treat these as unresolved until an approved interface source is available.
Position feedback H_A, H_B, H_C, ENC_A, ENC_B, ENC_Z
General timing TIM_CH1–TIM_CH6
Reserved 27 GPIO contacts and 13 GND contacts

Module declaration and implementation checklist

A module declaration should identify its base allocation and each supported extension map, for example M2, M2 + M2xM, or M2 + M2xN + M2xA. It should state the number of M2-form connectors implemented, their category, the implemented optional functions, and any mutually exclusive modes.

Before adopting this draft, verify:

  • Whether the proposed connector footprint, card outline, retention hardware, and insertion orientation meet the applicable M.2 requirements.
  • The number, placement, and category of M2-form connectors on the module and carrier.
  • All multiplexed functions selected by the module, including any shared SDIO1/SDIO2, PDM, SWD (debug-UART vs. touch interrupt/reset), or CAN routing.
  • Module-specific I/O voltage, current, reset, boot, and power-sequencing requirements.
  • Whether a claimed M2xM MIPI, RGB, DVP, PDM, or I2S function is supported simultaneously or only as an alternate mode.
  • Carrier-side requirements for CAN transceivers, USB protection, TF-card power/detect, display power, audio amplification, and external PHYs.

Last updated: