Questions about Olimex iCE40-IO PS/2 & iCE40HX8K-EVB

Started by mobluse, December 01, 2017, 07:45:30 PM

Previous topic - Next topic

mobluse

I have questions about this article:
VGA video generator and moving objects with PS2 keyboard:
https://olimex.wordpress.com/2016/07/13/fpga-tutorial-vga-video-generation-with-ice40hx1k-evb-ice40-io-in-verilog/

Can you connect a PS/2 mouse to the PS/2 connector of Olimex iCE40-IO IO-modul VGA/PS2/IRDA? If you use Y-splitter cable for PS/2, can you connect both a keyboard & a mouse at the same time? Otherwise I think you should develop a new version of the board that can use a Y-split cable.

Can you use this example also with Olimex iCE40HX8K-EVB? Are there any changes in that case? Is an open source tool-chain also available for iCE40HX8K-EVB?
iCE40HX8K-EVB w/ iCE40-IO, DuinoMite-Mini, DuinoMite w/ DuinoMite-IO, Olimexino-32U4

berce

QuoteCan you use this example also with Olimex iCE40HX8K-EVB? Are there any changes in that case? Is an open source tool-chain also available for iCE40HX8K-EVB?
Yes, you can use it. If there are changes needed, they would be minimal, but I assume there are none. The same tool-chain will work for both iCE40HX?K-EVBs. Links are on the product pages.

QuoteCan you connect a PS/2 mouse to the PS/2 connector of Olimex iCE40-IO IO-modul VGA/PS2/IRDA? If you use Y-splitter cable for PS/2, can you connect both a keyboard & a mouse at the same time? Otherwise I think you should develop a new version of the board that can use a Y-split cable.

The PS/2 connector just connects the input device to the FPGA. What happens with then has to be programmed in the FPGA. https://github.com/OLIMEX/iCE40HX1K-EVB/blob/master/demo/ice40-io-video/example_7.v shows how to use signals from a keyboard. You could just as well program correct responses to mouse movements. There's an example at opencores.org: https://opencores.org/websvn,filedetails?repname=ps2&path=%2Fps2%2Fweb_uploads%2Fps2_mouse.v. Once you have both working, you can study how the splitter multiplexes the signals, and handle that on the FPGA too.

Good luck with your project!

mobluse

#2
I've looked at the schematics now and you can't connect a PS/2 Y-splitter cable since pin 2 and 6 are not connected. :(

https://github.com/OLIMEX/iCE40-IO/raw/master/ICE40-IO_Rev_A.pdf

https://en.wikipedia.org/wiki/PS/2_port
Pin 2: Sometimes, keyboard Data for splitter cable.
Pin 6: Sometimes, keyboard Clock for splitter cable.

The mouse/keyboard splitter does not multiplex signals, but uses unused pins, and old laptops support this.
iCE40HX8K-EVB w/ iCE40-IO, DuinoMite-Mini, DuinoMite w/ DuinoMite-IO, Olimexino-32U4