Moduline M1
The GOcontroll Moduline M1 is a compact modular programmable controller offering up to 4 IO modules and various communication interfaces.

The M1 runs Linux on an NXP i.MX8M Mini application processor and has four module slots, so the I/O of the controller follows from the modules you install in them. Two automotive connectors carry the supply, the two CAN interfaces, the reset and contact inputs and all pins of the four module slots. For the complete specifications see the product page.
On this page
- At a glance
- Module slots
- Power supply
- Communication interfaces
- Connections and pinout
- Configurations
- 3D model
At a glance
- Four module slots for Moduline compatible modules
- NXP i.MX8M Mini application processor, quad-core Arm Cortex-A53 at 1.6 GHz per core
- 4 GB eMMC flash memory and 1 GB RAM
- Linux operating system
- IP67 enclosure, CNC machined from billet aluminium EN AW-5083 and anodised grey
- Temperature range -20 °C to 85 °C
Module slots
The M1 has four module slots, numbered 1 to 4. The modules you install determine what the controller measures and drives: together the four slots provide up to 40 I/O. Connector A carries slots 1 and 2, connector B slots 3 and 4.
Both connectors have 34 positions and the same pin numbering, and each of them reserves 26 pins for its two module slots. Slots 1 and 3 use the uneven pin layout, slots 2 and 4 the even one. A module therefore sits on the same pin numbers in slot 1 as in slot 3, and on the same pin numbers in slot 2 as in slot 4.
Which pin carries which signal depends on the module. Every module page lists its own pinout for each controller and slot: 6 Channel Input Module, 10 Channel Input Module, 4-20 mA Input Module, Loadcell Module, 6 Channel Output Module, 10 Channel Output Module, 2 Channel Power Bridge Module and Multibus Module.
Power supply
The controller is supplied through connector B. K30, the battery positive connection, is on pins 8 and 9; K31, the battery negative connection, is on pins 33 and 34. The supply voltage range is 8 – 32 VDC.
The M1 has three K15 contact inputs: pin 17 on connector B, and pins 16 and 17 on connector A. A contact input boots the controller when it is high, and its voltage range is 8 – 32 VDC as well. When a contact input goes low your application can detect that and finish its routines and controls before the controller shuts down. The contact inputs only switch the controller on; the controller itself is supplied from K30. Pin 16 on connector B is the controller reset, active high.
With the controller active and no modules installed, the nominal current consumption is 310 mA at 12 VDC and 200 mA at 24 VDC. With the contact inputs low it is below 1 mA. The load dump protection is designed according to ISO7637-2 5a/5b.
Output modules are supplied separately from the controller, so an output module can run on a different working voltage than the controller itself.
For the three connections you have to make to power up any Moduline controller, see Main controller.
Communication interfaces
The M1 has two CAN 2.0 B interfaces. CAN 1 is on connector B, low on pin 24 and high on pin 25; CAN 2 is on connector A, on the same two pin numbers.
Ethernet runs at 10/100 Mbps and USB is 2.0. Both come out on the two M12 connectors of the controller: one carries Ethernet, the other USB and RS232. RS232 serial communication is an assembly option.
The onboard features also cover wireless communication and positioning: Bluetooth 5.1 BR/EDR/LE with 3MPHY, Wi-Fi 4 (802.11 b/g/n), cellular LTE CAT-4 (LTE-TDD/LTE-FDD/HSPA+/GSM/GPRS/EDGE) and GNSS positioning for GPS, GLONASS, BeiDou and Galileo. They use the three SMA antenna connectors on the housing: one for Wi-Fi and Bluetooth, one for GNSS and one for LTE/GSM/GPRS.
Which of these a particular controller has follows from its part number, which defines the complete hardware configuration.
Connections and pinout
The M1 has two automotive I/O connectors, A and B, each with 34 positions in four rows: 1 to 9, 10 to 17, 18 to 25 and 26 to 34. The numbering is the same on both. Together the two connectors carry the supply, the two CAN interfaces, the reset input, the three contact inputs and all pins of the four module slots. Besides them the M1 has two M12 connectors and three SMA connectors, which the tables below do not cover; those are described under Communication interfaces.

Eight positions of each connector are not available to the modules; the other 26 go to its two module slots. They are the marked positions in the drawing below, and they are the same eight on both connectors. The tables below give those eight pins for each connector; the pins of the module slots are listed as ranges, because what such a pin carries depends on the module you install.

On the Moduline M1 the supply K30 is on pins 8 and 9 of connector B, the ground K31 on pins 33 and 34 of connector B, and the contact input K15 on pin 17 of connector B and on pins 16 and 17 of connector A. Pins 8 and 9 are both K30, and K15 is spread over two connectors: connector B alone leaves out two of the three contact inputs.
Connectors may never be hot-plugged: remove power before you remove or install a connector.
Connector A
Connector A carries module slots 1 and 2, the second CAN interface and two of the three contact inputs. Four of its positions are not connected.
Pins 4-7, 13-15, 21-23 and 30-32 belong to module slot 1; pins 1-3, 10-12, 18-20 and 26-29 to module slot 2. Which signal each pin carries depends on the module fitted. Each module lists its pinout in its own knowledge base article.
| Pin | Signal | Description |
|---|---|---|
| 8 | N/C | Not connected |
| 9 | N/C | Not connected |
| 16 | K15 (contact) | Switch on controller 2 (active high) |
| 17 | K15 (contact) | Switch on controller 3 (active high) |
| 24 | CAN 2 Low | CAN low line |
| 25 | CAN 2 High | CAN high line |
| 33 | N/C | Not connected |
| 34 | N/C | Not connected |
Connector B
Connector B carries module slots 3 and 4, the supply and ground of the controller, the first CAN interface, the reset input and one contact input.
Pins 4-7, 13-15, 21-23 and 30-32 belong to module slot 3; pins 1-3, 10-12, 18-20 and 26-29 to module slot 4. Which signal each pin carries depends on the module fitted. Each module lists its pinout in its own knowledge base article.
| Pin | Signal | Description |
|---|---|---|
| 8 | K30 (supply) | Battery positive connection |
| 9 | K30 (supply) | Battery positive connection |
| 16 | Controller reset | Reset controller (active high) |
| 17 | K15 (contact) | Switch on controller 1 (active high) |
| 24 | CAN 1 Low | CAN low line |
| 25 | CAN 1 High | CAN high line |
| 33 | K31 (ground) | Battery negative connection |
| 34 | K31 (ground) | Battery negative connection |
Configurations
Every Moduline M1 is built in a fixed configuration, and its part number defines that complete hardware configuration. The part numbers that are currently available, and the configuration document of each, are listed under Moduline M1 configurations.
3D model
The 3D model of the Moduline M1 is available as a STEP file in a ZIP archive. Use it to check the fit and the mounting of the controller, and to place it in your own CAD assembly.
Also see
- Main controller – the three connections every Moduline controller needs to power up
- Supply voltage – what the supply has to deliver
- Hot plugging – why connectors are never connected or disconnected under power
- go-modules – reading out and updating the modules in the slots
- Moduline M1 product page – specifications and ordering
