1357 Commits

Author SHA1 Message Date
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
541e57105d Bump version: 3.16 → 3.17 2021-08-14 10:40:47 +03:00
Maxim Devaev
40c326ba08 Bump version: 3.15 → 3.16 2021-08-14 09:32:36 +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
ec5b194625 Bump version: 3.14 → 3.15 2021-08-14 03:38:03 +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
68897c94ac Bump version: 3.13 → 3.14 2021-08-11 17:11:28 +03:00
Maxim Devaev
647251647d pikvm/pikvm#245: using sbin for some binaries 2021-08-11 17:00:30 +03:00
Maxim Devaev
8732b1be1f Bump version: 3.12 → 3.13 2021-08-02 23:50:22 +03:00
Maxim Devaev
fa4c173eb7 Bump version: 3.11 → 3.12 2021-08-02 23:43:26 +03:00
Maxim Devaev
d6fd2e3775 changed /msd/write_remote format 2021-08-01 09:26:54 +03:00
Maxim Devaev
4a1f51bc30 send error in streaming response 2021-07-30 07:30:22 +03:00
Maxim Devaev
7d7f4965de refactoring 2021-07-30 06:53:09 +03:00
Maxim Devaev
1090a55765 removed max_power option, added todo about remote wakeup 2021-07-29 13:43:37 +03:00
Maxim Devaev
da2e86ae72 refactoring 2021-07-28 15:10:07 +03:00
Maxim Devaev
9aa3998924 get rid of multipart in /msd/write 2021-07-28 14:58:10 +03:00
Maxim Devaev
6b07a80834 /msd/write_remote handle 2021-07-27 05:25:54 +03:00
Maxim Devaev
c38d9df5f2 refactoring 2021-07-27 00:36:40 +03:00
Maxim Devaev
365f06a2e8 fixed long shutdown 2021-07-26 07:39:07 +03:00
Maxim Devaev
25c9c63788 refactoring 2021-07-26 03:33:10 +03:00
Maxim Devaev
c996771afd start_streaming() 2021-07-26 02:29:52 +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
Maxim Devaev
1ded926b02 optional no_out_endpoint 2021-07-21 23:59:22 +03:00
Devaev Maxim
0232589a83 Bump version: 3.10 → 3.11 2021-07-17 03:39:02 +03:00
Devaev Maxim
88f634802a Bump version: 3.9 → 3.10 2021-07-17 01:58:21 +03:00
Devaev Maxim
0c500aa0c9 moved wol to gpio 2021-07-17 01:57:01 +03:00
Devaev Maxim
c23bf1d807 Bump version: 3.8 → 3.9 2021-07-14 16:55:07 +03:00
Devaev Maxim
a09a6264de Bump version: 3.7 → 3.8 2021-07-10 19:52:43 +03:00
Devaev Maxim
597bbd8b78 fixed otg mouse for apple m1 2021-07-10 14:52:35 +03:00
Devaev Maxim
7c68b6b406 lint fixes 2021-07-08 16:52:51 +03:00
Devaev Maxim
f30764c83b Bump version: 3.6 → 3.7 2021-07-04 02:35:58 +03:00
Devaev Maxim
671627b768 pikvm/pikvm#373: added yen key 2021-07-03 09:58:09 +03:00
Devaev Maxim
eff6caab73 Bump version: 3.5 → 3.6 2021-06-17 19:23:23 +03:00
Devaev Maxim
5912693c1a make janus-static work for web ui 2021-06-17 18:40:53 +03:00
Devaev Maxim
3d0217621b Bump version: 3.4 → 3.5 2021-06-11 17:53:32 +03:00
Devaev Maxim
9b8a6e507b Bump version: 3.3 → 3.4 2021-06-11 17:47:39 +03:00
Devaev Maxim
3b5941ed73 supported xor-mapped-address 2021-06-11 17:40:05 +03:00
Devaev Maxim
a65084cf21 Bump version: 3.2 → 3.3 2021-06-10 19:40:07 +03:00
Devaev Maxim
c67c1d6573 Bump version: 3.1 → 3.2 2021-06-10 19:14:45 +03:00
Devaev Maxim
f311051fb4 Bump version: 3.0 → 3.1 2021-06-10 19:08:45 +03:00
Devaev Maxim
635c737126 Bump version: 2.86 → 3.0 2021-06-10 19:00:50 +03:00