RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
Children Display |
---|
Table of Contents |
---|
Info |
---|
This Page is under Development |
Briefly describe in general terms the system/application and the purpose for which it is intended, written in non-technical terminology. Consider including a high-level architecture diagram for the system. The description should include, but is not limited to, the following:
<Briefly describe and graphically depict as appropriate the equipment, communications, and network configuration of the system in a way that a non-technical user can understand>
<Briefly describe and graphically depict as appropriate the equipment, communications, and network configuration of the system in a way that a non-technical user can understand>
<Provide detailed information and describe the procedures necessary to access the system. If applicable, include how to get a user ID and log on to the system, as well as the actions a user must take to change and/or reset a password.>
<Describe how system flow is happening mentioning checkpoints which can be verified during flow to ensure system is working as expected>
<Mention the validation artifacts that are essential to ensure the functionality is working as expected. Also any limitation while closing the validation process>
Describe the specific system function or feature in detail and depict graphically by including screen prints and descriptive narrative as appropriate. Ensure each screen print is captioned and has an associated tag providing appropriate alternative text
Follow the above for sub feature / use cases
<Identify the error messages that a user may receive and the likely cause(s) and/or possible corrective actions for the error>
This document describes purpose and functionality of some of Thunder plugins like WifiControl,Network Control,Location sync,Time sync,SystemCommands plugins and DHCP server.
$ repo init -u https://code.rdkcentral.com/r/manifests -m rdkv-asp-nosrc.xml -b thunder
$ repo sync -j4 --no-clone-bundle
$ source meta-cmf-raspberrypi/setup-environment
select meta-cmf-raspberrypi/conf/machine/raspberrypi-rdk-hybrid-thunder.conf
$ bitbake rdk-generic-hybrid-thunder-image
Wifi Control plugin:- It allows us to manage wireless connectivity things through UI such as
1)SCAN: It will list all the wifi connections.we have to select particular connection to connect.
2)SSID :If you select the wifi connection by using above scan automatically ssid will display as part of UI.
3)PASSWORD: we Should provide the password for particular connection which you are selecting for wifi connection.
4)CONFIGS:-we should save the configs of particular ssid.
5)Connect:- If you press the connect button it will show the status of the connection as part of UI .
6)Disconnect:- If you press the disconnect button it will disconnect the connected wifi.
Below picture shows that successfully connected to RDK wifi connection:-
for more details go through this link
Network control plugin:-
It provides the following methods:
reload | Reloads a static and non-static network interface adapter |
request | Reloads a non-static network interface adapter |
assign | Reloads a static network interface adapter |
flush | Flushes a network interface adapter |
Not only the above functionalities but also we can able to know the status of the connected interface for eth0,wlan0,lo.
For more details go through the below link https://github.com/WebPlatformForEmbedded/ThunderNanoServices/blob/master/NetworkControl/doc/NetworkControlPlugin.md
the below picture shows the Network control UI for ETH0 interface
Location sync plugin:-
It provides the geo-location functionality such as the City,Country ,Region,Timezone, Public IP, Sync.As of now it will list the country,timezone and public ip as part of UI
For more details go through this link https://github.com/WebPlatformForEmbedded/ThunderNanoServices/blob/master/LocationSync/doc/LocationSyncPlugin.md
Below pic shows the Location sync plugin UI
TIme sync plugin:-
It provides time synchronization functionality from various time sources (e.g. NTP).
UI will show the parameter like Current time ,Source ,Last synced , ,Control
we can also set time by using UI,Below picture show the UI for time sync plugin
For more details go through this link https://github.com/WebPlatformForEmbedded/ThunderNanoServices/blob/master/TimeSync/doc/TimeSyncPlugin.md
System commands plugin:
It allows executing of low level actions on the system.It is supporting USBRESET functionality,means USB device can be reset using USBFS_RESET ioctl command.
we have to pass the dev path as part of params usually in RPI it should be there in /dev/bus/usb/
By using lsusb it will list the connected usb:
root@raspberrypi-rdk-hybrid-thunder:~# lsusb
Bus 001 Device 006: ID 05e3:0751
Bus 001 Device 005: ID 0424:7800
Bus 001 Device 004: ID 03f0:0024
Bus 001 Device 003: ID 0424:2514
Bus 001 Device 002: ID 0424:2514
Bus 001 Device 001: ID 1d6b:0002
By using the JSON RPC we can able to do reset the usb device.Your jason rpc looks like below
curl --data-binary '{"jsonrpc": "2.0", "id": 1234567890, "method": "SystemCommands.1.usbreset", "params": {"device": "/dev/bus/usb/001/006"} }' -H 'content-type:text/plain;' http://$ip/jsonrpc
for more details go through this link https://github.com/WebPlatformForEmbedded/ThunderNanoServices/blob/master/SystemCommands/doc/SystemCommandsPlugin.md
DHCP SERVER PLUGINS:
A DHCP Server is a network server that automatically provides and assigns IP addresses, default gateways and other network parameters to client devices.
By using the DHCP server plugin we can activate and deactivate the server by using the following jason commands
curl --data-binary '{"jsonrpc": "2.0", "id": 1234567890, "method": "DHCPServer.1.activate", "params": { "interface": "eth0" }}' -H 'content-type:text/plain;' http://$IP/jsonrpc
curl --data-binary '{"jsonrpc": "2.0", "id": 1234567890, "method": "DHCPServer.1.deactivate", "params": { "interface": "eth0" }}' -H 'content-type:text/plain;' http://SIP/jsonrpc
It also allows Provides access to the server status. By using below command we can get the server status details
curl --data-binary '{"jsonrpc": "2.0", "id": 1234567890, "method": "DHCPServer.1.status@eth0" }' -H 'content-type:text/plain;' http://SIP/jsonrpc
for more details go through this link https://github.com/WebPlatformForEmbedded/ThunderNanoServices/blob/master/DHCPServer/doc/DHCPServerPlugin.md
For debugging purpose need to select the plugins which are shown as part of Tracing in UI.And check the wpeframework.service logs
journalctl -x -u wpeframework.service
Below picture shows how to select the plugins in UI to get more debug logs
https://github.com/WebPlatformForEmbedded/ThunderNanoServices
...
Contact | Organization | Phone | Role | |||
<Contact Name>Rajkumar Narayanan | <Organization>LTTS | <Phone> | <Email> | Nil | rajkumar.narayanan@ltts.com | <Role>Program Manager |