Last post I mentioned rough progress with the project. I had OpenCV-Python and Some keyboard action working in separate applications. I was feeling pretty excited about my progress, but life had other plans for me.
By the end of August 2022 my wife and I had Covid19, for the second time. This time was way worse than the first time we got it. The first time we didn’t get it at the same time, and while it did take my wife three weeks recover, I was feeling mostly back to normal within a week. This time however, Covid19 kicked our ass down and back again. We both were out at the same time, rough with six kids, some who also contracted it, though they recovered within a couple days. My wife ended up with long Covid and fluid around her heart. I was able to return to work part time after a few weeks. However due to my contractor status and trouble filling other positions on the team a decision to end my project and outsource it.
It was a rough time, and the KitBash KVM project was put on hold for a few months while we worked through a long period of small contractor jobs. Finally, and somewhat surprisingly right before Christmas I was hired on as a full time contractor working as an embedded engineer, though mostly working with MicroPython, and a few SOCs for a Cellular project. With the stable employment, the project was back on. Progress was slow, but month of month small improvements were made. I had a software application that Combined video capture, and the keyboard capture and send. I emulated a HID device with a RP2040 PICO as planned. However I kept having issues when it came to mouse movements. The sad part is nearly a year later I would find out it was actually my Razer Gaming mouse software that was causing some of the issues. I struggled for a while not making much progress. On the hardware side, I had made a unified cable with a USB hub built in. As far as hardware functionality I had the cable I wanted to make, but on the software side, I couldn’t figure out how to resolve the issues.
One issue I assumed was that I was using MicroPython on the RP2040. I knew there was a bottle neck, and I figured I was going to have to fully learn embedded C and a few libraries to get any further. I also seemed to have some transmission loss. At this point I was using Python on my controlling machine still, and via a com port connection sending all my commands. Bandwidth should not have been an issue, and most of the time it didn’t seem to be. But while the keyboard functionality was working well, the mouse I could not seem to ever get working correctly.
A few orders to Aliexpress later I had ensure it was not a hardware limitation I was dealing with. In my mind I always knew the issue was MicroPython. I was going to need to learn embedded C for the ARM RP2040, and I just didn’t have time to do that. A few life events were also throwing shade, and I decided to simply shelve the project, possible forever.
As fall approached, I considered trying again. I had to do a little C work at work, and though maybe I was ready to tackle the RP2040 SDK and C, then life struck again. The economy wasn’t doing the best. Many tech companies had laid off all through the year, and the company I was contracting with so far had not. However after their Q3 earnings call, the decision was made. They wouldn’t lay off any of their employee’s, but they would stop all contractor work. And just like that a few weeks before Thanksgiving I was again facing no income. I could tell the market was way worse, and it was clear that many job postings were being AI spammed. I would see a developer listing go live, and withing 2 hours there would be 200 applications, another 800+ by the end of the day.
Once again I was out of work, and the project was on hold…