Skip to main content

Add Wireless Button

Important Note
  • The wireless button requires a battery to be installed, the battery model is CR927
  • After returning to the homepage, click the + inside the red box in the picture
  • After the following interface appears, press the wireless button with the installed battery normally
  • The ID of the wireless button will be automatically generated in the red box, this ID is unique
  • Enter the name you want to call the button in the red box
  • Click the first red box, and the second blue box will appear
Notice
  • Custom GCODE and API requests are controlled through a wireless connection
  • Triggering GPIO is controlled through a wired connection

Custom GCODE

  • Customize GCODE, you can enter the code or macro name you need to execute in the red box, AirClick will automatically send it to the printer for execution

Request API

  1. Predefined APIs can achieve custom macros, emergency stop, Klipper restart, firmware restart, system shutdown, etc.
  1. Custom API Description
    • All API reference documents Moonraker API
    • method is consistent with MoonrakerAPI's method
    • params is consistent with MoonrakerAPI's params
  2. The following takes the API for starting to print a specified file as an example
    • The following is an example of the official Klipper documentation
    • The following is an example of AirClick's API filling
  3. Save this button, and you can start printing the specified file

Trigger GPIO (Only Klipper)

  • Triggering GPIO requires STM32F072 to be connected to Klipper

  • Firmware burning and connection need to refer to this document Firmware Burning and Connection

  • The IOs that can be used are PB0 to PB9, a total of ten IOs. After the firmware is normally burned and connected to Klipper, it only needs to be normally configured. The following is the reference configuration

    [mcu AirClick]
    serial: /dev/serial/by-id/usb-Klipper_stm32f072xb_AirClick-if00
    ### Need to search USBID and modify here

    [gcode_button _test]
    pin: ^!AirClick:PB0
    press_gcode:
    M118 PB0

    [gcode_button _test1]
    pin: ^!AirClick:PB1
    press_gcode:
    M118 PB1

    [gcode_button _test2]
    pin: ^!AirClick:PB2
    press_gcode:
    M118 PB2

    [gcode_button _test3]
    pin: ^!AirClick:PB3
    press_gcode:
    M118 PB3

    [gcode_button _test4]
    pin: ^!AirClick:PB4
    press_gcode:
    M118 PB4

    [gcode_button _test5]
    pin: ^!AirClick:PB5
    press_gcode:
    M118 PB5

    [gcode_button _test6]
    pin: ^!AirClick:PB6
    press_gcode:
    M118 PB6

    [gcode_button _test7]
    pin: ^!AirClick:PB7
    press_gcode:
    M118 PB7

    [gcode_button _test8]
    pin: ^!AirClick:PB8
    press_gcode:
    M118 PB8

    [gcode_button _test9]
    pin: ^!AirClick:PB9
    press_gcode:
    M118 PB9