Skip to content

Pin Mappings

Complete pin assignments and GPIO configuration for Multiflexmeter 3.7.0.

The Multiflexmeter supports two board variants with different pin assignments:

FunctionPinDescription
PIN_PERIF_PWR2Peripheral power control
PIN_JSN_RX3JSN-SR04T ultrasonic sensor RX
PIN_JSN_TX4JSN-SR04T ultrasonic sensor TX
PIN_ONE_WIRE5OneWire bus (temperature sensors)
PIN_DIO_26LoRa radio DIO2 interrupt
PIN_DIO_17LoRa radio DIO1 interrupt
PIN_DIO_08LoRa radio DIO0 interrupt
PIN_RST9LoRa radio reset
PIN_NSS10LoRa radio SPI chip select
PIN_BUZZER17Buzzer output (Analog pin 3)

MFM V3 M1284P (ATmega1284P) - mfm_v3_m1284p.h

Section titled “MFM V3 M1284P (ATmega1284P) - mfm_v3_m1284p.h”
FunctionPinDescription
PIN_DIO_41LoRa radio DIO4 interrupt
PIN_DIO_02LoRa radio DIO0 interrupt
PIN_DIO_13LoRa radio DIO1 interrupt
PIN_DIO_24LoRa radio DIO2 interrupt
PIN_JSN_TX10JSN-SR04T ultrasonic sensor TX
PIN_JSN_RX11JSN-SR04T ultrasonic sensor RX
PIN_ONE_WIRE12OneWire bus (temperature sensors)
PIN_BUZZER17Buzzer output (Analog pin 3)
PIN_PERIF_PWR20Peripheral power control
PIN_NSS24LoRa radio SPI chip select
PIN_RST25LoRa radio reset
PIN_DIO_526LoRa radio DIO5 interrupt
PIN_DIO_30LoRa radio DIO3 interrupt

The LoRa radio module uses SPI communication with the following pin assignments:

Functionmfm_v3mfm_v3_m1284pDescription
NSS (CS)1024SPI Chip Select
MOSI11 (PB3)5 (PB5)SPI Master Out Slave In
MISO12 (PB4)6 (PB6)SPI Master In Slave Out
SCK13 (PB5)7 (PB7)SPI Serial Clock
RST925Radio Reset (active low)
DIO082RX/TX Done interrupt
DIO173RX Timeout / FHSS interrupt
DIO264FHSS Change Channel
DIO3-0CAD Detection / PLL Lock
DIO4-1PLL Lock / Temperature
DIO5-26Mode Ready / CLK Output

Standard I²C pins for sensor communication:

ATmega PinATmega328PATmega1284PFunctionNotes
SDAPC4 (Pin 27)PC1 (Pin 23)I²C Data4.7kΩ pull-up resistor
SCLPC5 (Pin 28)PC0 (Pin 22)I²C Clock4.7kΩ pull-up resistor

Bus Speed: 80 kHz (configured in firmware) Default sensor address: 0x36

Functionmfm_v3mfm_v3_m1284pDescription
TX410Trigger signal to sensor
RX311Echo signal from sensor
Functionmfm_v3mfm_v3_m1284pDescription
OneWire Bus512Dallas DS18B20 temperature sensors

J5 - ICSP/ISP Programming Header (2x3 pin header)

Section titled “J5 - ICSP/ISP Programming Header (2x3 pin header)”

Standard AVR ISP programming connector for flashing firmware with Atmel-ICE or compatible programmer.

PinSignalDescription
1MISOMaster In Slave Out (ISP_MISO)
2VCC+3.3V Power
3SCKSerial Clock (ISP_SCK)
4GNDGround
5RESETReset (NRST, active low)
6MOSIMaster Out Slave In (ISP_MOSI)

Footprint: PinHeader_2x03_P2.54mm_Vertical

J4 - FTDI Debug Connector (1x6 pin header)

Section titled “J4 - FTDI Debug Connector (1x6 pin header)”

FTDI-compatible serial debugging interface for monitoring firmware output.

PinSignalDescription
1GNDGround
2CTSNot used (optional flow control)
3VCC+3.3V or +5V output (power from board)
4TXDAVR TX (UART transmit from MCU)
5RXDAVR RX (UART receive to MCU)
6RTSNot used (optional flow control)

Baud Rate: 115200 Settings: 8N1 (8 data bits, No parity, 1 stop bit) Footprint: PinSocket_1x06_P2.54mm_Vertical

I²C/SMBus interface for external sensor modules or accessories.

PinSignalDescription
1SCLI²C Clock
2VCC+3.3V Power
3SDAI²C Data
4VCC+3.3V Power
5ALERTSMBus Alert (optional)
6SCLI²C Clock (duplicate)

I²C Speed: 80kHz (configured in firmware)
Footprint: PinHeader_2x03_P2.54mm_Vertical

Left sensor module connector slot.

PinSignalDescription
1SCLI²C Clock
2SDAI²C Data
3ALERTSMBus Alert

Footprint: MFM_Module_Board_P123 (custom footprint)

Right sensor module connector slot.

PinSignalDescription
1VCC+3.3V Power
2SDAI²C Data
3SCLI²C Clock

Footprint: PinSocket_1x03_P2.54mm_Vertical

The peripheral power control pin allows enabling/disabling external sensors:

Functionmfm_v3mfm_v3_m1284pDescription
PERIF_PWR220Controls power to external sensors