Skip to content

timfischbach/K1-ButtonSerial

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

K1-ButtonSerial

This project is a lazy attempt to simulate button presses to a Creality K1 (Max) mainboard. This code works on all Arduino boards.

ko-fi

20240222_200101

How does it work?

Most MCUs check their Button Pins for high or low voltage levels (mostly combined with input pullup resistors) to detect button presses. I connected an Arduino Uno R3 to the button testpoints of the K1 mainboard to simulate those high and low levels of voltages. Interestingly, the Arduino Pin is floating, when defined as Input via pinMode(). That's ideal for our simulation, so the button gpios of the K1 Board are not exposed to voltages and thus minimizing possible interferrences and damages. The reset button triggers when a low voltage is applied (GND) and the boot button triggers at a high voltage. The Arduino receives via serial the user input and correspondingly executes certain button combos, to achieve the user interaction on the mainboard remotely.

Wiring

Solder some wires to the red marked Testpoints (located under the buttons of the board) and connect those to the Arduino correspondingly to the provided layout. IMPORTANT: Ground connection (green marked) is only necessary, if the K1 mainboard is not connected to the same PC as the Arduino!

20240222_200029 Screenshot 2024-02-22 201719

Upload the program to the Arduino

  • Open the project file of your liking (For beginners, use the .ino file, which works with Arduino IDE)
  • Set up the upload settings
  • Upload the code to the Arduino
  • The Arduino is now ready to use. Connect it now to the PC of your liking

Connect to the Arduino via serial

Open the Arduino serial port with any program of your liking. The baud rate is 9600 baud. After that, you should see a menu, like shown in the picture. If you press r, the K1 board gets reset. If you press b, the K1 board gets reset and set into boot mode.

Screenshot 2024-02-22 202820

Happy Hacking :)