No announcement yet.

display does not accept incoming commands

  • Filter
  • Time
  • Show
Clear All
new posts

  • display does not accept incoming commands

    I am using a gen4-uLCD-70DCT-CLB display connected to a UART in a BeagleBone host running Debian 10, using a gen4-IB simple interface. The panel has 14 buttons and 2 LEDs programmed onto it using Visi-Genie, and the GTX tool on the development environment verifies that the widgets on the panel are working properly (buttons report when pressed and LEDs can be turned on and off via the serial port, running at 9600 baud). I have installed the geniePi.c library on the host and have a short c program that listens for event reports from the panel and sends commands to the panel to change the state of the LEDs.

    Now the problem. If I push any button on the panel, the display successfully sends a message to the host that the specific button was pressed; in other words, the host UART is getting proper data from the panel and the host is properly receiving and interpreting it. However, when the host sends any command to the panel, the display responds with a NAK character. I have an oscilloscope connected to both TX and RX lines of the panel, and the scope can receive and decode the hex characters being sent to the panel. These characters exactly match the character strings displayed the I use the GTX tool with the display connected to my development PC.

    I've tried both asking the panel to change the state of the LEDs and also asking for status of the buttons; both commands result in a NAK response. I don't see any noise or spurious characters on the data lines.

    Any ideas on what's going on here? Am I missing something? I'm pretty convinced that the software on the host is doing the right thing. Is there something in the panel programming that needs to be set to allow commands to be accepted by an external host?

  • #2
    Hi Phil,

    If I am understanding correctly, the communication (both sending and receiving) using the GTX tool works perfectly fine, and the BeagleBone host can receive event data with no issue, but the host cannot send commands. Would you be able to first send me the c program that changes the states of the LEDs? You can attach the file or if you would like just send the relevant code, for example any genieWriteObject function uses. Thanks.



    • #3
      Hello Adem,

      I have attached the code I have been using. It is based on the demo code from the Genie RaspPi library package. Again, the host seems to be sending the proper string of bytes to the display, but the display ignores them and returns a NAK character. I can read the data in both directions using my oscilloscope and a serial data decoding function that it has. Each of the 14 buttons on my display sends data to the host and triggers the proper response on the host terminal. Two of the button press events are supposed to send a command back to the panel and change the state of an LED object. The GeniePi library is being used as it was downloaded; I have not modified it before loading it into the BeagleBone host. I'm mystified. Thanks.

      Attached Files