Planned refresh and updates this year #4
Replies: 4 comments 1 reply
-
UPDATE:Yes, I have been working on the project. Most of it is mundane and not worth posting about along the way. A couple of milestones have been achieved which will allow further milestones to be easier and faster. The MT88xx control library has been completedI have completely separated the MT88XX control functions from the C64 keyboard project itself and made it into an independent library that can be used for anything involving the MT88XX analog array chips. I will be putting it up as a separate repository in the future. Version 2 of the C64 keyboard project will use this library much in the same way it uses ps2 and USB keyboard libraries. The address pin programming is a little different with the new library and keyboard project has been adjusted to work with the new pin out. However, there will be an option in the header that will allow version 2 to use version 1 address pin outs so any existing PCB will not become obsolete with version 2. Version 1 will continue to be accessible in the repository. The pin out was changed to match the new simpler addressing system. The new system uses a coordinates structure consisting of the X,Y and make/break values instead of the bit encoded coordinates in version 1. C64 keyboard improvementsThere have changes in the code base to improve both readability, efficiency and stability. When the USB versions have been converted and everything is tested a bit more, I will upload version 2 (beta) and the new MT88XX control library. |
Beta Was this translation helpful? Give feedback.
-
The MT88xx_Controller library is now up on GitHub https://github.com/Hartland/MT88xx_Controller It is in Beta, but has run well with the tests I have done. I decided to go with object based options that can be setup in your sketch with no need to alter any header files. This should make it easy if anybody wants to try their hand at keyboard adapters for other systems. Addressing is much easier. Instead of a bitmap value for coordinates, an object is used which simply contains direct coordinates. The new version of C64 PS/2 should be up soon, as it appears everything is working well. I have ordered a set of the boards on PCB way I am looking forward to releasing and getting your feedback. The code is structured and a few things added to make it run more smoothly. I also believe the new keyboard mapping will be much easier using direct XY coordinates over bit mapping. |
Beta Was this translation helpful? Give feedback.
-
The SEED XIAO SAMD21 board is now up.Yes, I know I flipped the I and A in the commit. Seeed has integrated the USB host library into their board driver. This caused many,many,many headaches. However, in the end I learned quite a bit. I ended up improving how I modify the USB HOST library by using Instantiation to customize the keyboard parser. This allows the sketch to integrate the changes without altering the original library. I will write more in depth about this when I get to final documentation of this project refresh. Next steps include improving the DUE sketch a bit and importing the improved key maps into it. I was going to start posting in Melon64, but it appears it is now offline. I will start posting again in Lemon64. Here is the PCBway Shared project link for the PS/2 board for this project. The board was not designed by me, but by a couple of followers of this project. Please thank them for the excellent job they did. I found the board to be invaluable in the PS/2 side of this project. |
Beta Was this translation helpful? Give feedback.
-
Hello everybody, Version 2 has now entered the point where I can start formal documentation and user guides. Hardware development will also begin. After a little bit of wind up time, I should be back in full swing. |
Beta Was this translation helpful? Give feedback.
-
This summer through the end of the year, I plan to refresh this project.
Several different micro controllers have been ordered to determine viability and incorporation into the project.
I have received feedback and experienced difficulties with compilation on on board variants and it appears USB libraries can be stubborn. In my experience USB libraries need to be slightly altered to work with this project. This has to do with the need to have
modifiers keys reported as normal key presses along with the modifier flags.
In the case of USBHOST for SAMD based controllers used currently in this project, it involved changing few lines of code in the hidboot files. Hopefully this remains the case with other USBHOST libraries, but as many of us know, that never seems to be the case.
One user wrote me about compiling to a Seeed unit based on nRF series. At the time I did not realize there were so many variations of SEEED boards. One of the controllers purchased is a nRF based board and hopefully I will be able to sort the compile issues.
I always wanted this project to be accessible to hobbyist of all levels which is why I wish to stick with the Arduino IDE. There are many compiler quirks with the IDE, especially when moving between multiple different boards. Much of this is due to the caching scheme that both Arduino and third party board makers employ. I think I will be learning more about compilers then I ever thought I would like to know.
Over the last couple of years, I have started to design and etch my own PCB's. I plan to publish PCB transfer images for those who also make or would like to get into this part of the hobby.
The issue of detecting key presses during computer boot up has also come up. I am looking at a couple of different angles to tackle that issue.
I am also looking at cleanup and making the project more modular in both hardware and software components. This will make future changes easier without repeated code and drawings needed.
I am also open to porting to different computers of the era. I will need help to do this or at least find some deals on the systems I am interested in adding to my retro collection. This should not be too difficult as I can troubleshoot/repair just about about anything from the era. More info on this as it evolves.
At this time, I would like your suggestions on improvements or issues you would like to see addressed.
This is what is planned, but as always plans can and most likely will change.
I look forward to seeing how this project will grow.
Beta Was this translation helpful? Give feedback.
All reactions