Skip to content

Operator Control Panel Remote Control

The Idea:

It would be nice to be able to the push all the physical OCP buttons by software (Network/TCP/IP).

In test automation some times the device or firmware is in a state where physical user input is required. E.g. the device was powered down or there is an "internal IP range" select thing and no other interface is running yet or just simple does the Open Mailslot button fire the correct OCP screen (we can read the OCP content by OCP automation)

It could look like this:

OCP diagram

Device X e.g. Raspberry Pi:

  • Connects to the network
  • Connects to an Interface Card e.g. by GPIOs

Interface Card e.g. 8x Relay board :

  • Connects to the OCP buttons.

Software:

  • A REST server receives commands and pushes the buttons.

Future Versions:

  • LED state detection (OpenCV?)
  • Device under test serial port access able by network too

Current Version (prototype thing):

Hardware:

  • Cables are soldered to the OCP buttons and connected to a 8 channel relay board
  • This board is connected to a Raspberry Pi by GPIO
  • The pi is connect to the Network.

Software:

  • On the Pi runs a python REST server (Flask is your friend)
  • It uses the Rasp Pi GPIOs to switch the relays
  • The Raspberry Pi Camera runs a a webcam
  • For manual pushing it shows a web page with links to push the buttons and the webcam image
  • For automated button pushing a simple http request can be made http://[IPofRaspi:SomePort]/key/enter?timepressed=3000

SourceCode

Problems:

Hardware:

  • Right now there are more than 8 buttons, so we need more / all

Software:

  • We can only push one button at a time,
  • Camera integration not so nice yet

Web UI

And a really "high" quality demo video :-) OCPButtonsDemo.mp4

Trackbacks

No Trackbacks

Comments

Display comments as Linear | Threaded

No comments

The author does not allow comments to this entry

Add Comment

Markdown format allowed
Standard emoticons like :-) and ;-) are converted to images.
Enclosing asterisks marks text as bold (*word*), underscore are made via _word_.
E-Mail addresses will not be displayed and will only be used for E-Mail notifications.

To prevent automated Bots from commentspamming, please enter the string you see in the image below in the appropriate input box. Your comment will only be submitted if the strings match. Please ensure that your browser supports and accepts cookies, or your comment cannot be verified correctly.
CAPTCHA

Form options