]> git.donarmstrong.com Git - qmk_firmware.git/commitdiff
Trackpoint initialization
authorPriyadi Iman Nurcahyo <priyadi@priyadi.net>
Sun, 4 Dec 2016 18:15:04 +0000 (01:15 +0700)
committerPriyadi Iman Nurcahyo <priyadi@priyadi.net>
Sun, 4 Dec 2016 18:15:04 +0000 (01:15 +0700)
keyboards/handwired/promethium/keymaps/priyadi/flash.sh
keyboards/handwired/promethium/keymaps/priyadi/keymap.c

index fb81a54ee08a6c36854c5cd55167df0c43e75cdc..14a3b43789d9c89e93a281780aab212e0d554fa6 100755 (executable)
@@ -1,3 +1,4 @@
 #!/bin/sh
 
+sleep 10
 avrdude -p m32u4 -P /dev/ttyACM0 -c avr109 -U flash:w:../../../../../.build/handwired_promethium_priyadi.hex
index 3d34e98229ece4b057308478a1e915a9c4b9cca5..bf797a7491b563e66400706e287e9ea66d3c2d30 100644 (file)
@@ -11,6 +11,8 @@
 #include "process_unicode.h"
 #include "quantum.h"
 #include "rgbsps.h"
+#include "ps2_mouse.h"
+#include "ps2.h"
 #define COUNT(x) (sizeof (x) / sizeof (*(x)))
 
 // #define RGBLED_NUM 5
@@ -730,4 +732,110 @@ void shutdown_user()
     stop_all_notes();
 }
 
-#endif
\ No newline at end of file
+#endif
+
+
+void ps2_mouse_init_user() {
+    // set TrackPoint sensitivity
+    PS2_MOUSE_SEND(0xE2, "set trackpoint sensitivity: 0xE2");
+    PS2_MOUSE_SEND(0x81, "set trackpoint sensitivity: 0x81");
+    PS2_MOUSE_SEND(0x4A, "set trackpoint sensitivity: 0x4A");
+    PS2_MOUSE_SEND(0x60, "set trackpoint sensitivity: 0x60");
+
+    // set TrackPoint speed
+    // (transfer function upper plateau speed)
+    PS2_MOUSE_SEND(0xE2, "set trackpoint speed: 0xE2");
+    PS2_MOUSE_SEND(0x81, "set trackpoint speed: 0x81");
+    PS2_MOUSE_SEND(0x60, "set trackpoint speed: 0x60");
+    PS2_MOUSE_SEND(0x90, "set trackpoint speed: 0x90");
+
+    // set TrackPoint Negative Inertia factor
+    PS2_MOUSE_SEND(0xE2, "set negative inertia factor: 0xE2");
+    PS2_MOUSE_SEND(0x81, "set negative inertia factor: 0x81");
+    PS2_MOUSE_SEND(0x4D, "set negative inertia factor: 0x4D");
+    PS2_MOUSE_SEND(0x03, "set negative inertia factor: 0x03");
+
+    // disable up threshold (click)
+    PS2_MOUSE_SEND(0xE2, "set disable up threshold: 0xE2");
+    PS2_MOUSE_SEND(0x47, "set disable up threshold: 0x47");
+    PS2_MOUSE_SEND(0x2C, "set disable up threshold: 0x2C");
+    PS2_MOUSE_SEND(0x01, "set disable up threshold: 0x01");
+
+    // enable TrackPoint Press to Select (PtS)
+    // print("ps2_mouse_init: send 0xE2: ");
+    // rcv = ps2_host_send(0xE2);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // print("ps2_mouse_init: send 0x47: ");
+    // rcv = ps2_host_send(0x47);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // print("ps2_mouse_init: send 0x2C: ");
+    // rcv = ps2_host_send(0x2C);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // print("ps2_mouse_init: send 0x00: ");
+    // rcv = ps2_host_send(0x00);
+    // phex(rcv); phex(ps2_error); print("\n");
+
+    // set TrackPoint Press to Select threshold
+    // print("ps2_mouse_init: send 0xE2: ");
+    // rcv = ps2_host_send(0xE2);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // print("ps2_mouse_init: send 0x81: ");
+    // rcv = ps2_host_send(0x81);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // print("ps2_mouse_init: send 0x5C: ");
+    // rcv = ps2_host_send(0x5C);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // // default PtS threshold is 0x08
+    // print("ps2_mouse_init: send 0x04: ");
+    // rcv = ps2_host_send(0x04);
+    // phex(rcv); phex(ps2_error); print("\n");
+
+    // set TrackPoint Press to Select time constant (zTc)
+    // print("ps2_mouse_init: send 0xE2: ");
+    // rcv = ps2_host_send(0xE2);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // print("ps2_mouse_init: send 0x81: ");
+    // rcv = ps2_host_send(0x81);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // print("ps2_mouse_init: send 0x5E: ");
+    // rcv = ps2_host_send(0x5E);
+    // phex(rcv); phex(ps2_error); print("\n");
+    // // default zTc is 0x26
+    // print("ps2_mouse_init: send 0x45: ");
+    // rcv = ps2_host_send(0x45);
+    // phex(rcv); phex(ps2_error); print("\n");
+
+    /*
+    // set TrackPoint Press to Select Jenks Curvature (jkcur)
+    print("ps2_mouse_init: send 0xE2: ");
+    rcv = ps2_host_send(0xE2);
+    phex(rcv); phex(ps2_error); print("\n");
+    print("ps2_mouse_init: send 0x81: ");
+    rcv = ps2_host_send(0x81);
+    phex(rcv); phex(ps2_error); print("\n");
+    print("ps2_mouse_init: send 0x5D: ");
+    rcv = ps2_host_send(0x5D);
+    phex(rcv); phex(ps2_error); print("\n");
+    // default jkcur is 0x87
+    print("ps2_mouse_init: send 0x87: ");
+    rcv = ps2_host_send(0x87);
+    phex(rcv); phex(ps2_error); print("\n");
+    */
+
+    /*
+    // set TrackPoint Minimum Drag (mindrag)
+    print("ps2_mouse_init: send 0xE2: ");
+    rcv = ps2_host_send(0xE2);
+    phex(rcv); phex(ps2_error); print("\n");
+    print("ps2_mouse_init: send 0x81: ");
+    rcv = ps2_host_send(0x81);
+    phex(rcv); phex(ps2_error); print("\n");
+    print("ps2_mouse_init: send 0x59: ");
+    rcv = ps2_host_send(0x59);
+    phex(rcv); phex(ps2_error); print("\n");
+    // default PtS mindrag is 0x14
+    print("ps2_mouse_init: send 0x14: ");
+    rcv = ps2_host_send(0x14);
+    phex(rcv); phex(ps2_error); print("\n");
+    */
+}
\ No newline at end of file