1. Introduction
The Foinnc M350 system is a professional 3-5 axis motion controller built on an embedded platform. It features a 7-inch full-color screen, a comprehensive keyboard for input, and customizable function keys designed to enhance user convenience. This controller supports various tool magazine functions, including multi-process, straight-line, and circular disk types. Its interface and structure are based on mainstream market designs, ensuring ease of operation, quick learning, and straightforward installation. The M350 utilizes an advanced adaptive speed forward control algorithm, delivering high processing efficiency and superior surface quality. It is suitable for a wide range of applications, including engraving machines, engraving and milling machines, and cutting machines.
2. System Features
- Maximum Control Axes: M350 supports five-axis control, with 2-5 axis linear interpolation and arbitrary 2-axis circular interpolation.
- Operation Mode: Designed for mainstream engraving machine system operation.
- Display: Available in 7-inch or 10.2-inch full-color screen with a resolution of 1024 * 600.
- I/O: M6xx models feature standard IO 20/21, while M3xx models have standard IO 24/21.
- Analog Voltage Output: 0-10V.
- PWM Output: Supported only on M3xxz models.
- Tool Magazine Types: Supports multi-process, straight row, and disc tool magazines.
- Tool Setting Modes: Automatic and manual tool setting are supported.
- Tool Setting Types: Includes fixed tool setting, floating tool setting, and first/second tool setting.
- Compensation Methods: Direction gap compensation, radius compensation, and length compensation.
- Interpolation Algorithm: Features S-shaped, circular arc hard algorithm, and circular arc soft algorithm.
- Language Support: Chinese and English.
- CNC Software Alarms: Provides alerts for program errors, operation errors, overtravel errors, servo drive alarms, etc.
- Network: Supports file sharing and remote file online processing.
- Output: Open collector output with a maximum current of 500mA, capable of directly driving relays.
- Pulse Direction: Utilizes differential output, with a maximum interpolation pulse output frequency of 1MHZ.
- Spindle Control Modes: Multi-step speed (4 steps and 16 speeds), analog (0-10V), and servo spindle.
- G Code Compatibility: Compatible with standard G codes and supports mainstream CAD/CAM software such as ArtCam, MasterCam, ProE.
- Offline Operation: Users can interact with external files via a U disk, enabling completely offline work.
- Processing Performance: Multi-stage pretreatment and adaptive speed forward control of processing trajectory ensure fast processing speed, high precision, and good processing continuity.
- Small Line Segment Processing: Continuous high-speed processing of small line segments, automatically selecting the most efficient algorithm.
- File Handling: Supports large-capacity file processing.
- Safety & Convenience: Features breakpoint memory, power-off automatic protection, near-point processing, and designated line processing.
- Security: Includes a time lock function and supports four operation permissions (guest, operator, administrator, super administrator).
- Positioning: Automatic return to origin, return to reference point, and workpiece origin saving/loading functions.
3. Setup and Wiring
3.1 Physical Dimensions
Below are the physical dimensions for the M3K extended keyboard and the DDCS-Expert (DDCSE) controller back view.



3.2 Pin Definitions and Functions
The following table details the pin marks, names, functions, and parameters for the controller's various connections.

| Pin Mark | Name | Function | Parameter |
|---|---|---|---|
| PE | Protecting Earthing | Connect it to the earth. | |
| 24V | Power Supply Input for Controller System | Positive Side of Power Supply for Controller system | DC24V 3A |
| GND | Ground | ||
| COM+ | Power Supply Input for IO Ports | Positive side of Power Supply for IO Port | |
| COM- | Negative side of Power Supply for IO Port | ||
| XP+ | X Axis signal output | Pulse Signal Positive Output of the X Axis (5V) | Cable-driven Output, RS422 Standard; Max. Interpolation Pulse Frequency 1Mhz. |
| XP- | Pulse Signal Negative Output of the X Axis (5V) | ||
| XD+ | Direction Signal Positive Output of the X Axis (5V) | ||
| XD- | Direction Signal Negative Output of the X Axis (5V) | ||
| YP+ | Y Axis signal output | Pulse Signal Positive Output of the Y Axis (5V) | |
| YP- | Pulse Signal Negative Output of the Y Axis (5V) | ||
| YD+ | Direction Signal Positive Output of the Y Axis (5V) | ||
| YD- | Direction Signal Negative Output of the Y Axis (5V) | ||
| ZP+ | Z Axis signal output | Pulse Signal Positive Output of the Z Axis (5V) | |
| ZP- | Pulse Signal Negative Output of the Z Axis (5V) | ||
| ZD+ | Direction Signal Positive Output of the Z Axis (5V) | ||
| ZD- | Direction Signal Negative Output of the Z Axis (5V) | ||
| 4P+ | 4th Axis signal output | Pulse Signal Positive Output of the 4th Axis (5V) | |
| 4P- | Pulse Signal Negative Output of the 4th Axis (5V) | ||
| 4D+ | Direction Signal Positive Output of the 4th Axis (5V) | ||
| 4D- | Direction Signal Negative Output of the 4th Axis (5V) | ||
| 5P+ | 5th Axis signal output | Pulse Signal Positive Output of the 5th Axis (5V) | |
| 5P- | Pulse Signal Negative Output of the 5th Axis (5V) | ||
| 5D+ | Direction Signal Positive Output of the 5th Axis (5V) | ||
| 5D- | Direction Signal Negative Output of the 5th Axis (5V) | ||
| FOR | Spindle Start/Stop | Forward Rotation and Stop Output of spindle (OUT21) | The Max. capacity of the output ports is 30V,500mA. |
| COM- | Spindle Output COMMON | Cannot short connect with ACM | |
| VSO | Analog Output | Connect with Analog Input port of the inverter | 0-10V spindle control |
| ACM | Analog Ground | ||
| PWM | PWM Output | Connect with PEM input port of the inverter | duty ratio |
| ACM | PWM Ground | ||
| IN01 ~ IN24 | 24 Input Ports | In the IO page, can configure the ports as Servo Alarm, limited, Zero, Probe, Start/Pause/Stop and so on. | Support Mechanical, photoelectric and proximity switch, 24VDC; Type: NPN Active Level:0V |
| OUT01 ~ OUT20 | 20 Output Ports | In the IO page, can configure the ports as Lubrication, Cooling and so on. | Open collector output; Build-in Backward Diode; Driven current: 500mA; Driver voltage: 30V. |
3.3 Wiring Diagrams
Proper wiring is crucial for the safe and correct operation of the Foinnc M350 controller. Refer to the diagrams below for guidance.






3.4 Incorrect Wiring Methods
It is important to avoid common anode or common cathode wiring for pulse and direction signals with the DDCS-EXPERT controller. The correct method uses differential output as shown in Figure 6.

4. Operation
4.1 Key Functions
The M350 controller features a full keyboard and dedicated function keys. The following table outlines the primary functions of these keys.

| Keys Icon | Definition | Notes |
|---|---|---|
![]() | 1. Cursor moves quickly 2. Ratio/Values increase or decrease 3. Push to Enter | In the Monitor page, by turning the knob, it can move among different columns; after selecting the column, we can adjust the values fast and easily. In the Program page, by turning the knob, we can select files quickly and press it to confirm; In the Param and IO page, it also have the same functions. |
![]() | 1. Cursor moves up 2. Parameter value increases 3. Highlighting the selections | In Monitor, the key can highlight the processing parameters FRO/SRO/SJR and so on; in Program/Param/IO page, it can highlight the selections. |
![]() | 1. Cursor moves down 2. Parameter value decreases 3. Highlighting the selections | In Monitor, the key can highlight the processing parameters FRO/SRO/SJR and so on; in Program/Param/IO page, it can highlight the selections. |
![]() | 1. Cursor moves Left 2. Moves through Para Kinds | In Param page, the key moves among the Para Kinds; In IO page, it moves the cursor left. |
![]() | 1. Cursor moves Right 2. Switch through Para Kinds | In Param page, the key moves among the Para Kinds; In IO page, it moves the cursor right. |
![]() | 1. Backspace Key 2. Cancel or Delete Key | By it we can come back to the main page, cancel and delete the value input, cancel the current action and so on. |
![]() | 1. Confirm and Enter key | |
![]() | 1. X axis moves right; 2. Number "6". | In "CONT Mode", the X axis will Continuously move positive after pressing this key. In "STEP Mode" X will move positive in steps. |
![]() | 1. X axis moves left; 2. Number "4". | In "CONT Mode", the X axis will Continuously move negative after pressing this key. In "STEP Mode" X will move negative in steps. |
![]() | 1. Y axis moves forward; 2. Number "8". | In "CONT Mode", the Y axis will Continuously move positive after pressing this key. In "STEP Mode" Y will move positive in steps. |
![]() | 1. Y axis move backward; 2. Number "2". | In "CONT Mode", the Y axis will Continuously move negative after pressing this key. In "STEP Mode" Y will move negative in steps. |
![]() | 1. Z axis Up 2. Number "9". | In "CONT Mode", the Z axis will Continuously move positive after pressing this key. In "STEP Mode" Z will move positive in steps. |
![]() | 1. Z axis down 2. Number "1". | In "CONT Mode", the Z axis will Continuously move negative after pressing this key. In "STEP Mode" Z will move negative in steps. |
![]() | 1. The 4th Axis rotates in forward direction 2. Number "7". | In "CONT Mode", the 4th axis will Continuously move negative after pressing this key. In "STEP Mode" it will move negative in steps. |
![]() | 1. The 4th Axis rotates in Inversion direction 2. Number "3". | In "CONT Mode", the 4th axis will Continuously move negative after pressing this key. In "STEP Mode" it will move negative in steps. |
![]() | 1. The 5th Axis in forward direction 2. The Symbol "-". | In "CONT Mode", the 5th axis will Continuously move positive after pressing this key. In "STEP Mode" it will move positive in steps. |
![]() | 1. The 5th Axis in inversion direction 2. The Symbol "+". | In "CONT Mode", the 5th axis will Continuously move negative after pressing this key. In "STEP Mode" it will move negative in steps. |
![]() | High or Low Speed selection Number "5". | When the LED lights up, it is in High-speed mode. |
![]() | 1. Breakpoint resume active 2. Number "0". | When the LED lights up, the breakpoint resume is active. |
4.2 User Interface Overview
The M350 controller features an intuitive user interface with various screens for monitoring, programming, and system information.


4.3 File Management and Offline Processing
The M350 supports interaction with external files via a U disk, allowing for completely offline processing. This means you can load your G-code programs directly from a USB drive without needing a constant computer connection.
5. Specifications
| Feature | Specification |
|---|---|
| Control Axes | 3, 4, or 5 axes (linear interpolation); 2-axis circular interpolation |
| Display | 7-inch / 10.2-inch full-color screen, 1024x600 resolution |
| I/O Ports (M3xx) | 24 Inputs / 21 Outputs |
| I/O Ports (M6xx) | 20 Inputs / 21 Outputs |
| Analog Output | 0-10V |
| PWM Output | Supported (M3xxz models only) |
| Max. Pulse Frequency | 1 MHz |
| Open Collector Output Current | Max 500mA |
| Spindle Control Modes | Multi-step speed (4 steps, 16 speeds), Analog (0-10V), Servo spindle |
| Software Compatibility | Standard G codes, ArtCam, MasterCam, ProE |
| Connectivity | USB (U-disk), Ethernet, HMI/RS232 |
| Power Supply | DC24V |
| Tool Magazine Support | Multi-process, straight row, disc |
| Tool Setting | Automatic/Manual, Fixed, Floating, First/Second tool setting |
| Compensation | Direction gap, radius, length |
| Special Features | Breakpoint memory, power-off protection, near-point processing, time lock, 4 user permissions |
6. Maintenance
To ensure the longevity and optimal performance of your Foinnc M350 controller, regular maintenance is recommended:
- Keep Clean: Regularly clean the controller's screen and housing with a soft, dry cloth. Avoid using harsh chemicals or abrasive materials.
- Check Connections: Periodically inspect all wiring connections (power, I/O, motor drivers, spindle) to ensure they are secure and free from corrosion. Loose connections can lead to erratic behavior or damage.
- Ensure Ventilation: Make sure the controller has adequate ventilation to prevent overheating. Do not block any vents.
- Software Updates: Check for any available firmware or software updates from the manufacturer to ensure you have the latest features and bug fixes.
- Environmental Conditions: Operate the controller within its specified environmental conditions (temperature, humidity) to prevent damage.
7. Troubleshooting
If you encounter issues with your Foinnc M350 controller, consider the following troubleshooting steps:
- No Power: Verify that the DC24V power supply is correctly connected and providing the specified voltage. Check all power cables and connections.
- Axis Not Moving:
- Check the motor driver connections and ensure they are powered.
- Verify the pulse and direction signal wiring according to Figure 6.
- Check the IO page (Figure 14) to see if the axis signals are being sent correctly.
- Ensure no overtravel or limit switch alarms are active.
- Spindle Issues:
- Check spindle motor and inverter wiring (Figure 10).
- Verify analog output (0-10V) or PWM signals are correctly configured and connected (Figure 7).
- Ensure the spindle start/stop signal (FOR) is functioning.
- Input/Output Malfunction:
- Check the wiring for the specific input or output (e.g., proximity switches, external buttons, Figure 8, Figure 9).
- Verify the status on the IO page (Figure 14).
- Ensure the input type (NPN) and active level (0V) are correct for your sensors.
- Software Alarms: If the controller displays a software alarm (e.g., program error, operation error, overtravel error, servo drive alarm), consult the system's alarm codes (if available) or refer to the relevant section in the full manual for specific error resolution.
- Unresponsive Controls: If the keyboard or screen is unresponsive, try restarting the controller. If the issue persists, check for any physical damage or loose internal connections.
8. Warranty and Support
For any questions or support needs, please use the contact information provided below. Please note the policies regarding payment, returns, and shipping.
8.1 Contact Information
- Email: m84531026@qq.com
- Technical Support: 303756367@qq.com
8.2 Payment Information
We accept various payment methods including PayPal, Escrow, Credit Card, T/T, Western Union, WebMoney, Qiwi Wallet, and Boleto do Brasil. Orders are typically shipped within 1-5 business days after payment is received. Please note that orders will be canceled if payment is not received within 10 days of purchase.
8.3 Returns Policy
- If you receive a wrong or defective item, please send an email to the seller within 7 days from the date of receipt of the product to arrange a return.
- Items cannot be accepted for return after 7 days.
- In the event of a defective order, the seller will ship replacement parts upon receiving photographic proof of the defective items.
- Shipping and handling charges are non-refundable.
- All returned items must be in their original, undamaged, and reusable condition, including all original packaging, manuals, and warranty forms.
8.4 Shipping Information
- Please ensure that the shipping address you provide is correct.
- If a package is not shipped back to the seller due to an incorrect address provided by the buyer, the buyer will be responsible for both the initial and return shipping charges.