Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Suggestion of Software architecture



  • I am making a GUI unit's whose Interface and functional requirements to be realized as Software functions.

    1. The development is based on TI-SITARA FAMILY OF ARM processor with Linux OS on it. The development host platform is Ubuntu 14.04 LTS with QT 5.8.0 and the target platform is TI SDK version 4.0

    2. As for as processing is concerned, it should process switches (some set of switches) pack the data in CAN interface as well as RS 422 interface. It should also receive the health information related to Elegant Controller Health through CAN interface and use it for QT display. – CAN TX/RX

    3 Similarly Process another groupt of switches related to payloads and send the information over RS 485 interface. It should receive the status information also and display the status in the QT GUI display. (RS485 TX/RX)

    1. Similarly Process all the switches related to calibration send the information over RS 485 & CAN interface and display the Status Information???( RS485 TX/RX)
      5.Receive the Video Input data from PAL interface through (CCIR connector)QT in 8" LCD display Video Rx

    2. Process the video input data from PAL interface through QT in 8" LCD display Video Rx.

    3. Have provision to display single video or dual video through soft switch selection. (S/W provision)
      Display Requirements: ( Fixed Page & TAB provisions in QT)

    4. i. Display the selected operational switch information related to in Display as fixed page along with Video.
      ii. Receive the data via CAN and Display the position in dial format using QT in the Fixed Page

    iii. Display health information and other subsystems in QT using TAB pages
    iv. Display provision to earmark the function keys as per the switches configurable (TI polarity, Brightness, etc)
    iv . To enable the simultaneous display , outside by duplicating through HDMI port using QT s/w option should be explored & enabled.( S/W provision)
    Data Logging Requirements:
    9. Upon Record button (provisioned in Soft Touch Panel), the logging of events should take place as CSV file with time stamp.
    10. Errors arising all over the modules have to be logged in emmc of Sitara Chip.
    11. Ethernet Stream out: The logged data shall be streamed out from Ethernet upon request.
    12. Same Ethernet data shall be passed via Wifi module it can be sent wirelessly to the base station during testing through LORA interface.

    Pl suggest me a suitable and reliable sw architecture for the above tasks.
    How to handle this?
    As single thread or multiple threads.? How to set the priority /
    No time the display should hang . but at the same time the keypad should be acquired in real time.
    Pl suggest me a good architecture so start efficient coding and professional system

    thank you


  • Lifetime Qt Champion

    Hi and welcome to devnet,

    You should start by using a more current version of Qt as well as development system since it seems you are starting a new project.

    And that for several reasons:

    • Qt 5.8 is outdated and it's not even an LTS release.
    • Support for CAN through the QtSerialBus module
    • The Qt safe renderer
    • Modern tooling
      Etc.

Log in to reply