Trackpoint initialization

This commit is contained in:
Priyadi Iman Nurcahyo 2016-12-05 01:15:04 +07:00
parent 6ef3060b42
commit 73073f270b
2 changed files with 110 additions and 1 deletions

View file

@ -1,3 +1,4 @@
#!/bin/sh
sleep 10
avrdude -p m32u4 -P /dev/ttyACM0 -c avr109 -U flash:w:../../../../../.build/handwired_promethium_priyadi.hex

View 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
@ -731,3 +733,109 @@ void shutdown_user()
}
#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");
*/
}