Parity & Overflow check, plus trimming#3
Conversation
|
I haven't had a chance to look at this yet, but its on my list. I like the idea of the parity check working. Hopefully in the next few weeks. In lieu of a schematic, would you be able to post picture of the potentiometer setup? |
Converted Serial connection to a HW implementation. Improved resilience of PS2 communication with error detection and connection timeouts.
morphinejh
left a comment
There was a problem hiding this comment.
I would prefer these be 3 separate pull requests. I will review them and consider integrating separately, after more testing. Leaving notes here for future reference.
1 - Parity check will most likely be integrated with some code changes to keep data types the same.
2 - Analog trimmer will probably not be integrated. It solves a very niche problem and requires soldering outside of the design.
3 - It would have been better to switch the debug output over to use software serial, as the software serial was converted to hardware serial. I am currently considering a separate branch for hardware serial.
|
Makes sense, but unfortunetely I won't have much time to invest in this anytime soon. I can share that I have an 8 port KVM and tested this device with my version of the firmware with everything from an 8088 to a pentium-III (from ctmouse V1.9 and V2.1 on DOS 3.3 to windows 95) and had zero issues. I am super happy with the current shape. Here is some feedback on your notes:
I hope this info helps, if you have any questions, feel free to reach out if have any questions |
- Created a new footprint for the Arduino Nano socket with 2x15 pin configuration, including through-hole pads and silk screen details. - Added a footprint for the MAX3232 HW-027 module featuring castellated pads, through-hole and SMD pads, along with necessary fabrication outlines.
…ct file - Changed the active layer in the project file from 2 to 0 for better visibility. - Updated the Arduino Nano Socket footprint to a new version with enhanced properties and formatting. - Added detailed properties for reference, value, datasheet, and description with UUIDs. - Expanded pad definitions to include all 30 pins with consistent attributes and UUIDs. - Improved the footprint's rectangle yard dimensions and ensured proper layer assignments.
- Rerouted traces for cleaner print output - Fixed VBUS and jumper net assignments (were incorrectly marked unconnected) - Expand .gitignore to exclude KiCad autosave, lock, cache, history, and .kicad_prl - Untrack .kicad_prl (machine-specific local preferences) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>


I was running into issues with a KVM as well, a D-Link DKVM-8E, it sometimes has a bit of a brain fart and send the cursor flying across the screen and clicking randomly. When this happens, most of the time, there are parity errors on the packets or the overflow bits on the X and/or Y movement are set, so I finished implementing the parity check stub in the code and added an X/Y overflow check. This made the adapter usable for me, but I would still occasionally have the cursor teleport across the screen, so I added a simple mechanism to trim out the movements that are above a configurable limit, this feature is enabled by a jumper(D13) and the limit value is set with a pot (A1). I found in my tests that a movement >128 is very likely an error, so this solved all the issues for me. Hope it helps.