Pymate-Core-Tour
Abstract
The Core board is the heart beating your automation.
It fits a micro-controller running the user script written in Python.
The user script can interacts with the inputs and outputs (named IOs) and exchange data over the various buses.
The Core is delivered with the libraries facilitating its use.
USB-C
The USB-C connector is used to program and monitor the Pymate.IO Core in Python. This connection is also used read and store files.
The USB connector fits an USB-to-Serial connection used to display the messages printed by the running script.
Like any Python script, the error description and call stack is printed out on the standard output (so the USB-to-Serial line) when it occurs.
Powering via USB-C:
The Core board can be powered via the USB-C. This make the microcontroller running without the high power features.
This is quite convenient for programming the board without getting it fully powered (9-28V DC).
Note: the board can be connected via USB while powered via the VIN connector.
Powering
The Core must be powered through VIN.
VIN can receives from 9 to 28V DC.
The POWER IN LED is lit when the power comes from VIN connector but also connecting the board through USB-C.
The VIN power supply is used to generates 5V (1A) and 3.3V for internal operation. Among other things, the 5V is used to power the Pymate Bus expansions.
Notes:
- High power function (like Input/Output) relies on the VIN supply.
- The VIN & GND terminals are doubled to ease wiring (only one of the VIN and GND must be powered).
User Interface
The Pymate is more PLC (Programmable Logic Controller) than a development board.
For this reason, the design is oriented with a minimalist user interface.
For sure, the project can add buttons and various user interface suiting project needs (eg: weather proof buttons).
User Switch and Reset
The Core expose a User switch available to the user script.
The Reset button is used by user to quickly restarts the board. Note that reset line is also fitted with a voltage monitoring chip. It manage the Reset signal and delay when micro-controller voltage drop too low.
User LEDs
The Core also expose two User LEDs free for use in the user code.
Some place have been made available for custom labels.
Examples
See the example section for more details about wiring and scripting such features.
Input/Output
Inputs
The Core offers 8 digital inputs, each being 24V tolerant.
The 8 digital inputs uses a Schmitt Trigger circuitry to enforce state stability.
The input detects a HIGH state from 8V DC then the voltage must drop below 5V to activates the LOW state.
Each input is fitted with an indicator LED reflecting the actual state of the digital input.
Outputs
The 8 digital outputs are PNP transistors connecting supply voltage (VIN) to the positive lead of the LOAD.
The maximum current is 250mA per channel, quite enough for activating most of the devices (like relay).
Each output is fitted with an indicator LED, a convenient indicator of the output state.
Examples
See the example section for more details about wiring and scripting such features.
Analog Inputs
Each of the digital input can be reconfigured by user script to act like a analog input.
When activated as analog, the input can read the DC voltage level between 0 to 10V.
Warning:
- Never apply AC voltage to an input!
Examples
See the example section for more details about wiring and scripting such feature.
Buses
The Core board also provide some of the most popular industrial buses.
As such, a CAN bus and an RS485 bus are available on the Core board. They are documented with examples.
RS485
The RS485 bus can be reached on A+, B- terminals.
CAN bus
The CAN but a two wires Can High Speed bus at ISO 11898 part B (CAN 2.0B) with 29bits identification.
The CAN bus is made available through the CANH & CANL terminals.
The bus is fitted with the required transceiver.
Notes:
- The CAN bus is fitted terminating resistors.
- The CAN bus (replicated on the Pymate Bus) is the preferred method to exchange data with Pymate Expansions.
- The RS485 bus is fitted with 120 Ohms node resistor.
Pymate bus
The Pymate bus output (female) is used to connect Pymate expansion board on Core board.
The Pymate bus ship the following:
- 5V, Gnd, /Rst
- Internal I2C bus
- Internal SPI bus
- Internam UART
- Shared CAN bus
Notes:
- CAN bus is the preferred communication layer for Expansion.
- CAN bus is shared with the CAN connector (next to Power connectors)
Documentation
See the Pymate Bus documentation for more details.
Realtime Clock
The micro-controller have a real time clock using a dedicated crystal at 32.768 KHz and external coin cell.
The coin cell maintain the internal clock up to date when the Core is unpowered.
PymateIO all right reserved © 2026 - Written by MCHobby for PymateIO