Mouse movement in Windows 98 SE at one-half of actual movement
Mouse position is correct at the top-left corner of the virtual desktop. As I move the mouse to the bottom-right, the cursor on the host machine moves half the distance. By the time I have reached the bottom-right corner, the host cursor is thusly in the middle of the desktop region. I have noted that this issue is present on all desktop resolutions.
I am hoping this could be a software fix :) Thanks!
Three images showing mouse movement from top-left to bottom-right and the position of the cursor on host machine:
Linked from:
- Michael Lynch @michael2022-08-01 19:02:11.138Z
Thanks for reporting this and for the nostalgia!
This is a software issue, but unfortunately it's not a trivial one. We need a Win98 test system and then figure out how to create a new custom HID descriptor for Win98, so it's not something we'll be able to offer in the short term.
If this breaks the use-case you had in mind for your TinyPilot, email us at support@tinypilotkvm.com, and we'll figure out a resolution for you.
- XIn reply toastigmatism⬆:@x00
I am having a similar issue. I attached my TinyPilot to a NVR made by Hikvision, and the mouse can only reach about half the x and y coordinates.
I wonder if there's a line of code somewhere that I simply need to add an offset and a multiplier to on the X and Y axis... Without this the KVM really doesn't work well for my particular (I understand it's unusual) use-case.
- David @david2022-10-18 09:28:26.131Z2022-10-18 13:22:43.773Z
Hi @x00, sorry that you're running into mouse issues with your NVR.
Unfortunately, there isn't a setting that you can change to add an offset multiplier for the mouse. But you're welcome to try editing the
_scale_mouse_coordinates
function in the/opt/tinypilot/app/hid/mouse.py
file on your device with multipliers. But I should note that any changes to the file will be overwritten if you update your TinyPilot's software.We actually saw this issue pretty recently on a different brand of NVR, so I created a GitHub issue to try and develop a user-friendly fix for it.
If you don't mind, would you be able to share your TinyPilot's log? On the TinyPilot web interface, navigate to System > Logs and then click Get Shareable URL. That will create a link that you can share here.
- In reply tox00⬆:David @david2022-10-18 13:45:22.457Z
Hi @x00, I made a mistake in my original response about the ability to edit the code with multipliers, sorry about that. I've updated my original reply with the correct info.
Hope that helps!
Hi David,
Thanks so much for the reply.. what part of the log would you like? There's some sensitive stuff in there so prefer not posting it all publicly.
- David @david2022-10-19 11:05:22.351Z
I'm mostly interested about the software version number, the uStreamer service settings, and the uStreamer logs. I understand that you have some sensitive data in there, so you're more than welcome not to post any parts of the log that you don't want to share.
TinyPilot Pro log dump https://tinypilotkvm.com Timestamp: 2022-10-19T20:33:01+01:00 Software versions TinyPilot version: 2.4.0 5d3769f uStreamer version: v3.26 a97f08e OS version: Linux tinypilot 5.10.103-v7l+ #1529 SMP Tue Mar 8 12:24:00 GMT 2022 armv7l GNU/Linux TinyPilot state temp=44.8'C throttled=0x0 voltage logs TinyPilot configuration [Unit] Description=TinyPilot - RPi-based virtual KVM After=syslog.target network.target StartLimitIntervalSec=0 [ .......... ] uStreamer configuration [Unit] Description=uStreamer - Lightweight, optimized video encoder After=syslog.target network.target [Service] Type=simple User=ustreamer WorkingDirectory=/opt/ustreamer ExecStart=/opt/ustreamer/ustreamer \ --host 127.0.0.1 \ --port 8001 \ --encoder omx \ --format uyvy \ --workers 3 \ --drop-same-frames 30 \ --persistent \ --dv-timings \ && : # This last line is just to end the multi-line command because the line # before is ending with backslash and so expects to be continued. Restart=always
- David @david2022-10-20 11:19:10.668Z
Awesome, thanks! Could you tell me what resolution your NVR is outputting at too? You log should contain a line like:
Using resolution: 1280x720
or:
Got new DV-timings: 1280x720p60.00, ...
- In reply tox00⬆:
Sorry for the delay..
uStreamer logs Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.788 stream] -- Got new DV timings: resolution=1280x1024, pixclk=107964480 Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.812 stream] -- Using resolution: 1280x1024 Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.813 stream] -- Using pixelformat: UYVY Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.813 stream] -- Querying HW FPS changing is not supported Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.814 stream] -- Using IO method: MMAP Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.830 stream] -- Requested 5 device buffers, got 5 Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.839 stream] -- Capturing started Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.840 stream] -- Using JPEG quality: 80% Aug 20 01:37:58 tinypilot ustreamer[606]: -- INFO [30061.840 stream] -- Creating pool JPEG with 3 workers ...
- In reply tox00⬆:J@justcarver
Hi, x00. I'm the other user with an NVR having the mapping issues with my mouse. My NVR is from Reolink. I was wondering if you are using HDMI out on your Hikvision NVR. Are you able to get 1080p output? I had to reduce to 720p on the NVR to get it to display on TinyPilot's end.
- J@justcarver
I wonder if you're attempting the same thing I am. I'd rather get local display access to the NVR's 16 camera feeds and send 1 datastream over the internet to monitor our warehouse than try to send all 16 feeds over the internet.