testing

Testing

Testing is essential to ensure the reliability, stability, and compliance of the ATSC 3.0 stack with broadcast standards.

User can control the functionlity via native application using below mentioned test tools which is added in the main.cpp file available in the path "DtvKit_ATSC30Stack_M3/src/atsc/app/atscapp/src/"

Interface PrintHelpMenu() will help for user provided input based on functionlities.

Here’s a detailed guide on how a user would interact with the console for each `eAppType_t` command, including descriptions, example inputs, and expected outputs.

Console-Based Test Tools Usage

Each command allows the user to test specific functionalities of the ATSC 3.0 stack.

  1. Exit Application[eAppExit]

    • Command: 0
    • Description: Terminates the application.
    • Console Interaction:
      • Enter command: 0
      • Output: Exiting application...
  2. Get ATSC Standards[eAppGetATSCStandards]

    • Command: 1
    • Description: Retrieves the ATSC standard mode supported by the device, such as ATSC 1.0 or ATSC 3.0.
    • Console Interaction:
      • Enter command: 1
      • Output: Supported ATSC Standard: ATSC 3.0
  3. Get Number of Instances[eAppGetNoOfInstances]

    • Command: 2
    • Description: Returns the number of tuner instances available on the device, which is important for multi-tuner support.
    • Console Interaction:
      • Enter command: 2
      • Output: Number of Tuner Instances: 2
  4. Channel Tuning[eAppChannelTune]

    • Command: 3
    • Description: Tunes to a specific channel by specifying Tuner ID, Channel Number, and PLP ID (Physical Layer Pipe ID).
    • Console Interaction:
      • Enter command: 3
      • Enter Tuner ID: 1
      • Enter Channel Number: 56
      • Enter PLP ID: 0
      • Output: Tuning the Channel 56 on Tuner 1 with PLP ID 0
  5. Channel Scanning[eAppScanChannel]

    • Command: 4
    • Description: Scans a range of channels, identifying available services. Useful for initial setup or when channels have changed.
    • Console Interaction:
      • Enter command: 4
      • Enter Tuner ID: 1
      • Enter PLP ID: 0
      • Enter Start Channel: 50
      • Enter End Channel: 58
      • Output: Scanning channels from 50 to 58 and tune the locked channel's services.
  6. Get Frontend Properties[eAppGetFeProperties]

    • Enter Command: 5
    • Description: Retrieves properties of the frontend tuner, such as frequency, modulation, and bandwidth.
    • Console Interaction:
      • Enter command: 5
      • Enter Tuner ID: 1
      • Output:
        • Tuner Properties:Chng[%d]Run[%d]Scan[%d:%d]BW[%d]Ch[%d]D[%d]F[%d]Plp[%d]Reg[%d]Id[%d]
        • Chng[0] - Whether there has been a change in the channel
        • Run[1] - Whether the front-end device is running
        • Scan[1:1] - Whether the device is scanning for channels : Whether the device is currently scanning
        • BW[60000] - Bandwidth
        • Ch[56] - Current Channel Number
        • D[3] - Modulation type as 8VSB or 64/256QAM or ATSC3.0
        • F[567000] - Channel frequency
        • Plp[1] - Physical Layer Pipe (PLP) ID
        • Reg[0] - Region locality name as US,Korea,India
        • Id[0] - Tuner ID
  7. Get Frontend Status[eAppGetFeStatus]

    • Command: 6
    • Description: Displays frontend lock status and signal metrics, including Signal-to-Noise Ratio (SNR) and RSSI (Received Signal Strength Indicator).
    • Console Interaction:
      • Enter command: 6
      • Enter Tuner ID: 1
      • Output:
        • Frontend Status: Ch[%d]D[%d]F[%d]Plp[%d]Reg[%d]Act[%d]BR[%d]Eas[%d]Id[%d]L[%d]Rssi[%d]snr[%d]
        • Ch - Tuner Channel Number
        • D - Modulation type as 8VSB or 64/256QAM or ATSC3.0
        • F - Channel frequency
        • Plp - Physical Layer Pipe (PLP) ID
        • Reg - Region locality name as US,Korea,India
        • Act - Status of Frontend
        • BR - Bitrate of Incoming TS/ALP data
        • Eas - ATSC 3.0 Emergency Alert System (EAS) status.
        • Id - Tuner ID
        • L - Tuner lock status
        • Rssi - Received Signal Strength Indicator (RSSI)
        • snr - Signal-to-Noise Ratio
  8. Start Tuning Process[eAppTunerStart]

    • Command: 7
    • Description: Starts the frontend tuning process to lock onto a signal.
    • Console Interaction:
      • Enter command: 7
      • Enter Tuner ID: 1
      • Output: Tuning process started with the new tuning info which is applied with TestTool - 3.
  9. Stop Tuning Process[eAppTunerStop]

    • Command: 8
    • Description: Stops the frontend tuning process, ending any active channel tuning.
    • Console Interaction:
      • Enter command: 8
      • Enter Tuner ID: 1
      • Output: Tuning process stopped.
  10. Get SLT Data[eAppGetSLTData]

    • Command: 9
    • Description: Retrieves Service List Table (SLT) data, used for creating guide information on available services.
    • Console Interaction:
      • Enter command: 9
      • Output: SLT data retrieved informations.
  11. Get Frontend Status via Callback[eAppEnableFeStatusCallback]

    • Command: 10
    • Description: Registers a callback to receive frontend status updates in real time.
    • Console Interaction:
      • Enter command: 10
      • Output: Frontend status callback enabled, it will give current FE status.
  12. Frontend register Callback[eAppDisableFeStatusCallback]

    • Command: 11
    • Description: Register/Unregisters the callback of frontend status updates.
    • Console Interaction:
      • Enter command: 11
      • Enter 1 to register Param CB or any other value to unregister :
      • Output: Frontend status continuously displayed on console until unregister the callback.
  13. Set Demodulator Type[eAppSetDemod]

    • Command: 12
    • Description: Sets the demodulator type (e.g., ATSC or QAM) used by the tuner.
    • Console Interaction:
      • Enter command: 12
      • Enter Demodulator ID: 3
      • Output: Demodulator ID set to 3 as ATSC 3.0.
  14. Note : 0 - Demod8VSB , 1 - Demod64QAM, 2 - Demod256QAM, 3 - DemodATSC30

  15. Get Demodulator ID[eAppGetDemod]

    • Command: 13
    • Description: Retrieves the current demodulator ID, showing which type is active.
    • Console Interaction:
      • Enter command: 13
      • Output: Demod ID = 3
  16. Get Region ID[eAppGetRegion]

    • Command: 14
    • Description: Obtains the configured region ID, which can be used for regional-specific tuning standards.
    • Console Interaction:
      • Enter command: 14
      • Output: Region ID: 0 (USA)
  17. Prepare Electronic Service Guide[eAppPrepareGuide]

    • Command: 15
    • Description: Prepares the electronic service guide for display, based on available services get from the SLT table.
    • Console Interaction:
      • Enter command: 15
      • Output: Electronic Service Guide prepared and it listed the available service information.
  18. Get Scanning Information[eAppGetScanningInfo]

    • Command: 16
    • Description: Shows the progress of an ongoing channel scan, including channels found.
    • Console Interaction:
      • Enter command: 16
      • Output:
      • Scanning Information : Status:%d, Channel:%2d, Demod Type:%2d, Lock Status:%2d TunerId:%2d Plp:%2d
  19. Cancel Scanning[eAppCancelScanning]

    • Command: 17
    • Description: Cancels any ongoing channel scanning.
    • Console Interaction:
      • Enter command: 17
      • Output: Channel scan cancelled.
  20. Get RRT Data[eAppGetRrt]

    • Command: 18
    • Description: Retrieves Regional Rating Table (RRT) data for regional content ratings.
    • Console Interaction:
      • Enter command: 18
      • Output: Regional Rating Table information retrieved and displayed.
  21. Get System Time[eAppGetSystemTime]

    • Command: 19
    • Description: Retrieves the system’s current time, useful for synchronization with broadcast schedules.
    • Console Interaction:
      • Enter command: 19
      • Output: System Time [2024-10-28 15:30:00]
  22. On-screen Message Notification[eAppOnScreenMsGNotify]

    • Command: 20
    • Description: Registers for on-screen message notifications.
    • Console Interaction:
      • Enter command: 20
      • Output: On-screen message notifications enabled.
  23. Start Web Application [eAppStartWebApp]

    • Command: 30
    • Description: Launches the web application, allowing remote control through a browser.
    • Console Interaction:
      • Enter command: 30
      • Output: Web application started.

Each command allows the user to verify the ATSC 3.0 stack’s functionalities directly via the console, ensuring robust testing and control over system operations.


Page Tools