382 Commits

Author SHA1 Message Date
Maxim Devaev
1e98d9bd5d python 3.10 2021-12-23 20:56:16 +03:00
Maxim Devaev
0ae6f40a67 pway fixes 2021-11-21 21:44:27 +03:00
SpookHCK
fee323ecc8
PWAY 16-port SH1601A Driver (#67)
* pway 16-port SH1601A driver

Minimum viable driver.

* Update to pWay 16-port driver

* Rename kvmd/pway.py to plugins/ugpio/pway.py

Fixed file mods

* Delete pway.py

* Update pway.py

Fixed file changes to only one...

* fixed spaces on line 181
2021-11-21 20:12:49 +03:00
Maxim Devaev
b6aaf18c42 prefix for log_process() 2021-10-24 12:06:40 +03:00
Maxim Devaev
434acc5de5 pikvm/pikvm#457: custom commands driver 2021-10-24 12:00:45 +03:00
Maxim Devaev
1c3155daec xk-hk4401: fixed regexp 2021-10-03 01:48:39 +03:00
Maxim Devaev
d0c237c177 style fix 2021-10-02 21:29:58 +03:00
Maxim Devaev
c162bb7ea4 style fixes 2021-10-02 01:47:20 +03:00
Sebastian Goscik
2f92e95bf0
Added driver for xh_hk4401 4 port HDMI/USB KVM (#69)
* Added driver for xh_hk4401 4 port HDMI/USB KVM

* Removed trailing whitespace

* Changed xh_hk4401 channel numbers

Used 0-3 to match other KVM plugins instead of the 1-4 numbering the KVM
uses.
2021-10-01 15:25:43 +03:00
Maxim Devaev
89a0ec8cc8 don't pulse ipmi gpio 2021-09-26 04:00:06 +03:00
Maxim Devaev
977c8a1ade refactoring 2021-09-24 09:33:15 +03:00
Maxim Devaev
b6a59941c8 kvmd/kvmd#62: alternative implementation 2021-09-16 09:45:10 +03:00
Maxim Devaev
8f11fa3b91 small rebranding 2021-09-08 06:47:54 +03:00
Maxim Devaev
ca812117e4 improved pins validation 2021-09-08 06:08:11 +03:00
Maxim Devaev
5d1228eb9e fix 2021-09-08 06:04:52 +03:00
Maxim Devaev
98ad1145a8 string pins 2021-09-08 05:43:36 +03:00
Maxim Devaev
cc5b2a42b8 refactoring 2021-09-07 10:31:28 +03:00
Maxim Devaev
2db0656df3 unified udc code and automatic driver detection 2021-08-28 19:01:13 +03:00
Maxim Devaev
df098bd075 win95 runtime switching 2021-08-15 20:16:48 +03:00
Maxim Devaev
9afa6efbe4 Merge branch 'servo' 2021-08-15 10:27:18 +03:00
Maxim Devaev
a340fc6053 minor servo fixes 2021-08-15 10:26:13 +03:00
Shantur Rathore
c644a9f6e1
Implement servo angles (#58)
/etc/kvmd/override.yaml
```
kvmd:
    gpio:
        drivers:
            servo1:
                type: servo
                chip: 0                  # PWM Chip Number
                period: 20000000         # Servo Motor SG90 Period in nano-seconds
                duty_cycle_min: 350000   # Servo Motor SG90 duty_cycle for -90 degrees
                duty_cycle_max: 2350000  # Servo Motor SG90 duty_cycle for +90 degrees
                angle_max: 90            # Servo Motor SG90 angle at duty_cycle_max
                angle_min: -90           # Servo Motor SG90 angle at duty_cycle_min
                angle_push: 45           # Servo Motor SG90 angle to push button
                angle_release: 20        # Servo Motor SG90 angle to release button
        scheme:
            short_press:
                driver: servo1
                pin: 0                       # Pin number is the PWM channel number on the PWM Chip
                mode: output
                switch: false
                pulse:
                    delay: 0.5
                    max_delay: 2
            long_press:
                driver: servo1
                pin: 0                       # Pin number is the PWM channel number on the PWM Chip
                mode: output
                switch: false
                pulse:
                    delay: 2
                    max_delay: 2
            extra_long_press:
                driver: servo1
                pin: 0                       # Pin number is the PWM channel number on the PWM Chip
                mode: output
                switch: false
                pulse:
                    delay: 10
                    max_delay: 20
        view:
            header:
                title: Controls
            table:
                - ["#Servo - Short Press", "short_press|Press"]
                - ["#Servo - Long Press", "long_press|Press"]
                - ["#Servo - Extra Long Press", "extra_long_press|Press"]
```
2021-08-15 10:15:53 +03:00
Maxim Devaev
ed5952f13e fixed pikvm/pikvm#159: workaround for windows 98 absolute mouse bug 2021-08-14 09:29:12 +03:00
Maxim Devaev
c6c4592dfb servo template 2021-08-14 03:08:28 +03:00
Maxim Devaev
7d89a54572 refactoring 2021-08-14 02:01:37 +03:00
Shantur Rathore
e4903c5184
Implement button push using servo motors controlled via pwm (#55)
1. Add to /boot/config.txt
```
dtoverlay=pwm
```

2. Create /etc/udev/rules.d/99-kvmd-pwm.rules
```
SUBSYSTEM=="pwm*", ACTION=="add", RUN+="/bin/chgrp -R kvmd /sys%p", RUN+="/bin/chmod -R g=u /sys%p"
SUBSYSTEM=="pwm*", ACTION=="change", ENV{TRIGGER}!="none", RUN+="/bin/chgrp -R kvmd /sys%p", RUN+="/bin/chmod -R g=u /sys%p"
```

3. Connect Servo motor like SG90 PWM connection to RPi GPIO18, +5V and GND to a 5V and GND pin on header

4. Add to /etc/kvmd/override.yaml
```
kvmd:
    gpio:
        drivers:
            servo1:
                type: pwm
                pwm_chip: 0                  # PWM Chip Number
                pwm_period: 20000000         # Servo Motor SG90 Period in nano-seconds
                duty_cycle_push: 1500000     # Servo Motor SG90 duty_cycle for pushing button
                duty_cycle_release: 1000000  # Servo Motor SG90 duty_cycle for releasing button
        scheme:
            short_press:
                driver: servo1
                pin: 0                       # Pin number is the PWM channel number on the PWM Chip
                mode: output
                switch: false
                pulse:
                    delay: 0.5
                    max_delay: 2
            long_press:
                driver: servo1
                pin: 0                       # Pin number is the PWM channel number on the PWM Chip
                mode: output
                switch: false
                pulse:
                    delay: 2
                    max_delay: 2
            extra_long_press:
                driver: servo1
                pin: 0                       # Pin number is the PWM channel number on the PWM Chip
                mode: output
                switch: false
                pulse:
                    delay: 10
                    max_delay: 20
        view:
            header:
                title: Controls
            table:
                - ["#Servo - Short Press", "short_press|Press"]
                - ["#Servo - Long Press", "long_press|Press"]
                - ["#Servo - Extra Long Press", "extra_long_press|Press"]
```
2021-08-14 01:14:22 +03:00
Maxim Devaev
6b07a80834 /msd/write_remote handle 2021-07-27 05:25:54 +03:00
Maxim Devaev
37060de4c3 dual mouse mode 2021-07-24 02:37:10 +03:00
Maxim Devaev
a33efcaef3 disabled instead of empty string 2021-07-24 02:09:18 +03:00
Maxim Devaev
189ff59379 refactoring 2021-07-23 20:52:47 +03:00
Maxim Devaev
cbc3a4ceef rewrite otg hid 2021-07-23 05:17:00 +03:00
Maxim Devaev
bc73e74161 fixed process waiting 2021-07-23 04:33:13 +03:00
Devaev Maxim
0c500aa0c9 moved wol to gpio 2021-07-17 01:57:01 +03:00
Devaev Maxim
7c68b6b406 lint fixes 2021-07-08 16:52:51 +03:00
Devaev Maxim
b5ab5699c4 pikvm/pikvm#321: server-side uploading counters 2021-06-08 03:12:24 +03:00
Devaev Maxim
640547d441 sync 2021-05-26 16:02:10 +03:00
Devaev Maxim
e480629724 speed up msd 2021-05-26 12:26:31 +03:00
Devaev Maxim
787e5ddbae reduced spi freq to 100k 2021-05-25 01:41:53 +03:00
Devaev Maxim
8bc36eac5d pikvm/pikvm#208: permanent image 2021-05-25 01:41:23 +03:00
Devaev Maxim
416e093967 tesmart state_poll=10 2021-05-19 01:05:13 +03:00
Devaev Maxim
9f1182dd1b async timeouts 2021-05-18 13:27:15 +03:00
David Shay
20c88b2170
fix socket timeout/zero based issues in tesmart (#49) 2021-05-18 13:11:05 +03:00
Devaev Maxim
2c7e71adef fixed bt hid 2021-05-17 09:30:13 +03:00
Devaev Maxim
61acd1c5e4 tesmart: check channel after switching 2021-05-16 06:16:14 +03:00
Devaev Maxim
8db0ab20e0 tesmart rewrite 2021-05-16 05:57:08 +03:00
David Shay
1fc8434f0a
Plugin support for TESMART switch - tesmart.py (#47) 2021-05-14 20:17:46 +03:00
Devaev Maxim
3566fbf37c new protocol for ezcoo usb3 2021-05-09 21:56:38 +03:00
Devaev Maxim
fd7d17ad4a tuned mcu timings 2021-04-22 03:26:09 +03:00
Devaev Maxim
f9fcc3c3eb https://bugs.archlinux.org/task/70438 2021-04-14 11:31:18 +03:00
Devaev Maxim
e39f3d46d8 refactoring 2021-04-09 06:28:58 +03:00