7

I have a console, but not the main computer it's designed to connect to.

My goal is to interface this with a (Linux) PC, and hopefully more than just the keyboard. I have never tried something like this before.

So, given that I only have one half of the pair, how can I figure out what's what? How can I figure out what to send to it?

I know that it uses an RS-422 connection, but I know neither the data rate, the protocol, nor any commands. The probability of finding such technical data is very low, although I have access to user-level documentation (and I remember at least some of the operations from having used it back in the day).

I think I have a serial-to-usb converter, but that's probably for RS-232. I don't have (access to) an oscilloscope or signal analyzer, but I hope that some open source software exists...?

Accom Axial console

(Further details: I asked this over at Reverse Engineering, and it was suggested that you good folks may have tips.)

EDIT: By the way, these are the chassis: The Display chassis on top of the Comms chassis (neither of which I have, or plan to acquire).

Display and Comms chassis

21
  • pythonpython in reverse engineering has already given a very good answer. All you need is an RS422 card for your PC. – cup Jan 23 at 14:07
  • Well, I have a laptop, and a (Chinese) serial/usb converter. But then what? I can't just tail - f /usb, can I? How do I figure out what to send? – Noughtnaut Jan 23 at 14:09
  • 2
    So you are using the laptop as the comms module. The USB/Serial needs to be RS422: not RS232. The device will probably be /dev/ttyS0. Have a look at unix.stackexchange.com/questions/117037/… for writing and reading from a serial port in Linux – cup Jan 23 at 14:14
  • 1
    Just a side note: that thing is cool! Please share what you end up doing with it. I kind of want one. – Spud Jan 25 at 7:08
  • 1
    Noooo! Well, maybe they needed it more. Sure was interesting to think about. In fact, it may be worth building something like it. After reading your note, I realize people could take various keyboard bits, SPI encoders, trackpad, sliders and all sorts of stuff and use a micro to send keyboard codes. Or, something. – Spud Feb 16 at 0:19
11

I posted a comment on the reverse-engineering Q&A you linked before I realized it'd do better as an answer here.

The answerer there found that googling Accom and Axial from your photo turns up a series of video editing controllers, and documentation for a DE-9 connector.

If it's an editing controller running RS-422 over DE-9, it's almost certainly Sony 9-Pin Protocol (A.K.A. P1 Protocol)... especially since the pinouts seem to match.

According to the Wikipedia page, it was a de facto standard in the broadcast industry until Ethernet replaced it, and "The communication parameters are 38,400 baud, 8 data bits, odd parity and 1 stop bit (38k4/8O1)".

It also links to this document which describes the communication protocol that actually runs over the serial link if you just want to get things working with minimal effort.

9
  • The linked document describes a communication protocol, where the computer acts as master and the keyboard as slave. This used to be a very common thing, not very today. It sounds like a fun project. I guess it would take either of: 1) a device driver in Linux (which in itself is an interesting project) or 2) maybe a microcomputer acting as the 422 master on one end and sending the rest into the computer as if it was a keyboard and maybe something more. Personally I would probably go with 2), maybe using a Raspberry or similar and Python. – ghellquist Jan 24 at 15:11
  • Nice. I also tried googling "accom axial", but didn't find any protocol specs. – dirkt Jan 24 at 16:09
  • @ssokolow, I have no knowledge about P1 being ubiquitous, so that right there saved me a week's worth of research. The 2nd link, though, is pure gold! If that doesn't earn a check mark, I don't know what would. – Noughtnaut Jan 24 at 16:43
  • @ghellquist, Why a device driver? I would have thought that async serial devices already were well supported under Linux. – Solomon Slow Jan 24 at 23:29
  • 1
    @ghellquist It sounds like something that could just be done using a USB-RS422 bridge and a Python program that speaks the serial protocol on one side and uinput on the other side. (uinput is the Linux kernel's API for userspace input device drivers and is used by things like g15daemon.) ...possibly via PySerial and pynput so it'll work on non-Linux platforms too. – ssokolow Jan 25 at 1:27
6

Options:

(1) Googling "Accom axial" finds various people who bought it, made Youtube reviews etc. If these are not you, contact them and see if they have details.

(2) As has been mentioned in the comments, you need a RS422 (not RS232) adapter, e.g. to USB. The cheapest I found after a quick search is 20 EUR.

(3) You can often find the serial parameters by trying out the most often used ones. Press keys and see if you get anything. Having a scope etc. helps, but trial and error is a good substitute.

(4) Once you've seen what every keypress produces, make a list and compare them with the ones from known terminals. The termcap library can help. If you find similar ones, then

(5) you can guess what you can send to the terminal. Again, do trial and error: send a few things and see what you get back. If there's some kind of negative acknowledge for a sequence that's not understood, then even better.

Looks like a fun project.

3
  • Thank you. I'm already reaching out to the YouTube users and pro service centres, but honestly it seems the YouTube folks are generally not focused on actual operation. – Noughtnaut Jan 23 at 15:55
  • 3
    Another way would be a 422 to 232 signal level converter, allowing the use of the existing 232 interface. After that it's playing with a few settings until sensible data show up - like starting with 8N1 and ignoring the top bit will cover all 7x1 transmission and so on. – Raffzahn Jan 23 at 21:04
  • 1
    @Raffzahn, this is good info for a newbie! – Noughtnaut Jan 24 at 13:28

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.