Having the serial.input process every keystroke interpreted individually

Hello,
I'd like to hear your opinion and ideas about the following.
I built a little 6502 system equiped with a 6522 VIA (IO device with a half duplex shift register). I want to connect an Arduino that functions as a terminal intermediair to a PC.
I'm now using a Nano, shifting in from and shifting out to the VIA. The serial monitor function prints the output on my laptop and sends the keystrokes to the VIA.
Works fine for printing the incoming data on my PC screen.
Sending commands to the 6502 however is a nuisance. Every byte can only be sent by ending with a CR. Especially entering addresses each digit closing with a CR is cumbersome.

Question: how can this be resolved? How can each keystroke directly be sent to the VIA?
I already bought an Arduino Micro with it's native USB capabilities in mind.

I was thinking about the following solutions.
A) bluetooth input on the Nano. I have a simple bluetooth keyboard. How viable is this? How can this be achieved?
B) Using the Nano or Micro one way or the other to receive and send single stroke keyboard characters. Perhaps using TeraTerm-5 on my PC to send the keystrokes. Never used TeraTerm before though.

Can you please push me in the right direction to solve this problem. Much obliged for your input.

Please explain why. Have you set the serial monitor to "no line ending"?

You will have better luck with suggestions if you will take the time to read the instructions in the "How to get the best out of this forum" post, and provide the details required to understand what you are doing.

There are usb-to-serial-ttl modules. Is that all you need ?

For example: https://www.adafruit.com/product/5335

It sounds to me like your problem is with the Arduino IDE's "Serial Monitor", rather than with the Arduino itself.

If you use a more traditional terminal emulator to talk to your arduino (which appears as a normal serial port, essentially), the arduino will receive each character as it is typed...

Thanks Koepel for your time. I have similar convertor, so I might try this solution. Any sugestion as to what terminal program I should use. Is TeraTerm-5 a good candidate?
If I use my Arduino Micro for this, will the Rx and Tx be addressed with the "serial"-commands? And will the IDE still be available for other communications. Sorry, for this kind of silly questions. I definitely need a push in the right directions.

Thank you westfw, I guess your idea is pointing in the same direction as Koepel's answer.
I replied his sugestion with some more (fundamental) questions. Could you have a look at these too, please? Much obliged.

I don't know what a good Terminal program is. I use linux.

An Arduino Nano has a usb-serial chip and the ATmega328P microcontroller.
If you upload an empty sketch, then you can use the usb-serial chip on its own, in the same way as a usb-to-serial-ttl module.
If you need another Serial/UART port on the Arduino Nano, then often the SoftwareSerial library is used.

The Arduino Micro has a spare hardware Serial/UART port. That is easier if you want to connect a serial device to an Arduino board.
The "Serial" port is to the computer via the USB cable and "Serial1" is the spare Serial/UART port at pin 0 and 1.
The Micro has only one communication channel to the computer. It can connect to a Terminal program or to the Arduino IDE, but not both at the same time.

Thanks Koepel,
I think I've got enough info now to go on.
My first forum question, and pleasantly surprised with your (and westfw's) quick reponse.
Regards.

[quote="allwaysbusy, post:6, topic:1236463"]
Is TeraTerm-5 a good candidate?

[quote]
It should be fine, especially if you have no particular fancy requirements (say, like display hex decoding, or timing info.)
I use minicom on unix/MacOS and putty on windows, but I also don't do enough with them to have found their limits. (The minicom UI is a bit ... dated.)

If I use my Arduino Micro for this, will the Rx and Tx be addressed with the "serial"-commands?
And will the IDE still be available for other communications.

On a 32u4 board like the Arduino Micro (which has "native USB"), Rx and Tx will usually be "Serial1", and "Serial" will be available for communications back to your PC.
(I've seen an occasional "board" definition, I think from Sparkfun, where "Serial" was Rx/Tx and "SerialUSB" was the PC connection, but it's less common.)

Thanks westfw,
This concludes the pre-work. Now on to the test and build phase.
Your input is much apreciated. Btw "dated" is in-line with the other components. I am building it with chips dated 1984 :slight_smile: .
Regards,

Oh! Did you get the newfangled 65C02?
IIRC, it came out about then, and has some added features beyond just being implemented in CMOS.

Yeh, a cmos (from Synertek). The whole board drawing 15 mA. Came already with some new handy instructions in 1984. The WDC version of today is even better.

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.