Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

RDK-V IP Client is a IP based Client Set-Top-Box (STB) with RDK 4.0 features which connnects connects directly with Network Gateways. Targets on Accelerator platforms and utilizes only open-sourced RDK components.

...

Code Block
languagebash
themeRDark
titleGeneric build
mkdir workspace
cd workspace

# initialize the manifest with repo tool # initialize the manifest with repo tool
repo init -u https://code.rdkcentral.com/r/rdkcmf/manifests -b ipstb_bringuprdk-next -m rdkv-ipstb-nosrcextsrc.xml
repo sync  -j `nproc` --no-clone-bundle --no-tags

...

Code Block
languagebash
themeRDark
titlegeneric image
MACHINE=raspberrypi-rdk-ipmc source meta-cmf-raspberrypi/setup-environment

bitbake rdk-generic-ipclient-image

Flashing Procedure

The image file will be generated under build-<MACHINE>/tmp/deploy/images/<MACHINE> directory.

eg: $ pwd

 dsrava434@dvm-yocto3-docker-dsrava434:~/varsha/build-raspberrypi-rdk-ipmc/tmp/deploy/images/raspberrypi-rdk-ipmc$ pwd/home/dsrava434/varsha/build-raspberrypi-rdk-ipmc/tmp/deploy/images/raspberrypi-rdk-ipmcdsrava434@dvm-yocto3-docker-dsrava434:~/varsha

/build-raspberrypi-rdk-ipmc/tmp/deploy/images/raspberrypi-rdk-ipmc$ $ ls -lrt rdk-generic-ip-stb-client_rdk-next_2021091311235620210914060227.rootfs.wic.bz2rpi-sdimg

-rw-r--r-- 2 dsrava434 dsrava434 141959535 478150656 Sep 13 12:33 rdk-generic-ip-stb-client_rdk-next_2021091311235620210914060227.rootfs.wic.bz2rpi-sdimg

dsrava434@dvm-yocto3-docker-dsrava434:~/varsha/build-raspberrypi-rdk-ipmc/tmp/deploy/images/raspberrypi-rdk-ipmc$ 

For flashing the image use dd command.

eg:   sudo dd if=rdk-generic-ip-stb-client_rdk-next_20210914060227.rootfs.rpi-sdimg of=/dev/sdb bs=4M

[sudo] password for bcpuser149: 

114+0 records in

114+0 records out

478150656 bytes (478 MB, 456 MiB) copied, 7.01847 s, 68.1 MB/s


Code Block
languagebash
themeRDark
# Insert the micro SD card to the host system and mention the card's device file name
# input file (if) is the image file to flash and the output file (of) is the card's device file name
bzcat <image name> | sudo dd if=<imagename> of=/dev/<sd file> bs=4M iflag=fullblock oflag=direct conv=fsync

System View

Image Modified

JIRA Tracker

Jira
serverJIRA
columnIdsissuekey,summary,issuetype,created,updated,duedate,assignee,reporter,priority,status,resolution
columnskey,summary,type,created,updated,due,assignee,reporter,priority,status,resolution
maximumIssues20
jqlQuerytargets = R-Pi AND project = REFPLTV AND labels in (_rdk_ip_stb, _rdk_rpi_open_sourcing)
serverId11deff04-0380-3a3d-a916-0849d4e573f7

Compilation Errors(Now all are resolved)

...

...

Testing Procedure

  •  Controller UI : For

...

Testing Procedure

  •  For connecting Controller UI, use URL: http://<machineip>:9998

 

  • Pluggins can be enabled or disabled Enabling / Disabling the Plugins from controller UI. 

     

  • Wi-Fi Services: Wifi related services can be triggered from Wi-Fi tab in controller UI. We can scan and select from available networks.

  • R-Pi Board Console Access : Execute ssh root@machineip from your host PC
  • Image Details Verification:
  • For ssh, we can use ssh root@machineip
  • For verifying the image details, we can use cat /version.txt command.     

root@raspberrypi-rdk-ipmc:~# cat /version.txt 

imagename:rdk-generic-ip-stb-client_rdk-next_2021090210193020210913065804

BRANCH=rdk-next

YOCTO_VERSION=dunfellmorty

VERSION=4.09.0213.21

SPIN=0

BUILD_TIME="2021-09-02 1013 06:1958:3004"

Generated on Thu Mon Sep 02  1013  06:1958:30 04 UTC 2021

root@raspberrypi-rdk-ipmc:~# 

  • For playing  Playing a video using aamp-cli, launch aamp-cli from terminal, cd /usr/bin;aamp-cli.

 Image Removed

  •  For playing a video using gstreamer, use gst-launch-1.0.gstreamer, with aamp as gstreamer plugin element by using aamp:// in the uri:

  eg :- gst-launch-1.0 playbin uri=aamp://bitdash-a.akamaihd.net/content/MI201109210084_1/m3u8s/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.m3u8 video-sink=westerossink

  • Playback through Youtube Application : For launching youtube from controller UI, enable cobalt plugin, youtube page will be loaded in TV UI.

    Image Added

  • Youtube Launched Output in the TV:

Image Added


  • Youtube Launching Via Resident App: To load Youtube from Resident app UI, select Premium content 1 and press enter

Image Added

  • Once entered the premium content1, Youtube page will be loaded.

Image Added

  • Select and press enter to begin the playback.

Image Added

  • To return to main menu, press cntl+m or home button.
  • CNN Launching via Resident App UI: Select CNN and press Enter key to launch CNN.

            Image Added

            Image Added

         select video and press Enter key to start playback

          Image Added

Launching Vimeo using Resident APP : Select vimeo from resident app UI and press Enter to launch app.

          Image Added

      Select and press Enter to start playback.

         Image Added


         Image Added  

To return to main menu from any of the app window use "Home" button in keyboard.

For further details on UI page, visit RDK Accelerator Home UI - Version 2.0#ControllerUI

Cobalt lifecycle using terminal:

Launching cobalt using RDK Shell : execute below command from ssh terminal

   curl --data-binary '{"jsonrpc":"2.0", "id":3, "method":"org.rdk.RDKShell.1.launch", "params":{"callsign": "Cobalt", "type":"", "uri":""}}' -H 'content-type:text/plain;' http://127.0.0.1:9998/jsonrpc

 Setting a video URL using deeplink method.

    curl --data-binary '{"jsonrpc":"2.0", "id":3, "method":"Cobalt.1.deeplink","params": "<videoURL>"}' -H 'content-type:text/plain;' http://127.0.0.1:9998/jsonrpc

Sending enter key to proceed video playback

    curl --header "Content-Type: application/json" --request POST --data '{"jsonrpc":"2.0", "id":3, "method":"org.rdk.RDKShell.1.generateKey", "params":{"keys":[ {"keyCode": 13,"modifiers": [],"delay":1.0}]}}' http://127.0.0.1:9998/jsonrpc

Suspending the plugin using RDKShell

   curl --data-binary '{"jsonrpc":"2.0", "id":3, "method":"org.rdk.RDKShell.1.suspend", "params":{"callsign": "Cobalt"}}' -H 'content-type:text/plain;' http://127.0.0.1:9998/jsonrpc

Resuming the plugin

   curl --data-binary '{"jsonrpc":"2.0", "id":3, "method":"org.rdk.RDKShell.1.launch", "params":{"callsign": "Cobalt", "type":"", "uri":""}}' -H 'content-type:text/plain;' http://127.0.0.1:9998/jsonrpc

Destroy

    curl --data-binary ' {"jsonrpc":"2.0", "id":3, "method":"org.rdk.RDKShell.1.destroy", "params":{"callsign":"Cobalt"}}' -H 'content-type:text/plain;' http://127.0.0.1:9998/jsonrpc

Known Issues

playback is successful, but screen is visible only if we disable residentapp service.
S. NoIssuesStatusRemarks
1Unable to pair bluetooth remote via resident appopenBT via controller UI is working as expected
2Wifi connections are unsuccessful via resident appOpenWifi via controller Ui is working as expected
3Playback using aamp-cli is not working as expectedopen4Board reboot every 30 minutesopen

As work around, comment out On failure from dsmgr.service.

Path : /lib/systemd/system/dsmgr.service

Comment out " OnFailure=reboot-notifier@%i.service"

4App launch takes 5CNN application taking to more time to load the application.Sometimes device rebooted when we try to play any content.OpenSimilar behavior is observed in dunfell branch
6Vimeo application taking to more time to load the application.Sometimes device rebooted when we try to play any content. OpenSimilar behavior is observed in dunfell branch

Trouble Shooting

blank screen is observed between key press and video playback begins for a small amount of time

Trouble Shooting

  • Overcoming build time fetch errors: 
    • If fetch failure occurs for libinput, comment SRC_URI related changes from meta-cmf/recipes-graphics/libinput/libinput_git.bbappend.
    • If fetch failure occurs for gst-plugins-ugly,use mirror source, for that comment out SRC_URI related changes from meta-cmf/recipes-multimedia/gstreamer/gstreamer1.0-plugins-ugly_git.bbappend.    
  •        If the wireless networks are not listed in controller wifi page, try after disabling and enabling wifi from Network page, networks will be listed.       Disable cntlm-main.service if device reboot occasionally.