Skip to end of metadata
Go to start of metadata

Introduction

Upgrading Yocto version from morty to dunfell(Yocto 3.1) for Turris Omnia Reference Platform

Considerations for broadband & extender build:

  • OpenEmbedded and Yocto: Dunfell
  • Linux kernel 4.14
  • Version upgrades for bitbake and other oe recipes(if needed).

Environment Setup

     Host Environment

  1. In Ubuntu 18.04 version, consider the versions of git(1.8.3.1 or greater), tar(1.27 or greater), Python(3.4.0 or greater), Coreutils.
  2. Take a look on the following packages,

            $ sudo apt-get install gawk wget git-core diffstat unzip texinfo gcc-multilib build-essential chrpath socat cpio python python3 python3-pip python3-pexpect xz-utils debianutils iputils-ping python3-git python3-jinja2 libegl1-mesa libsdl1.2-dev pylint3 xterm

      3. Configure repo

      4. Ensure the .netrc and .gitconfig files

    Build instructions for creating rdk-generic-broadband-image 

       The following commands fetches the source code of turris using repo tool and create the image using bitbake

repo init -u https://code.rdkcentral.com/r/manifests -m rdkb-turris-extsrc.xml -b dunfell
 
repo sync -j4 --no-clone-bundle
 
MACHINE=turris source meta-turris/setup-environment
 
bitbake rdk-generic-broadband-image

Errors and Challenges


Error/ Issues

Layer and Recipe

Fix

1

Unable to start bitbake server (None)

ERROR: Server log for this session
meta-java

In layer.conf

Added

LAYERSERIES_COMPAT_meta-java = " dunfell"
2

Unable to parse Var <AVAILABLE_LICENSES[:=]>


bb.data_smart.ExpansionError: Failure expanding variable AVAILABLE_LICENSES[:=], expression was ${@' '.join(available_licenses(d))} which triggered exception FileNotFoundError: [Errno 2] No such file or directory
meta-cmfNeed to create a licenses directory under the meta-layer and add RDK license file to it
3

Deprecated variable(s) found: "IMAGE_DEPENDS_wic". Use do_image_<type>[depends] += "<recipe>:<task>" instead


Failed to parse recipe: /meta-java/recipes-images/images/java-test-image.bb
meta-marvell

In armada38x-base.inc ,

Removed IMAGE_DEPENDS_wic_append_armada38x = " virtual/bootloader"

added WKS_FILE_DEPENDS ?= ""
4ParseError at /meta-marvell/recipes-kernel/linux/linux-marvell.inc:16: Could not include required file recipes-kernel/linux/linux-dtb.incmeta-turris

In recipes-kernel/linux,

added linux-dtb.inc

5

ExpansionError during parsing / meta-cmf-mesh/recipes-common/mesh-agent/mesh-agent.bb


ExpansionError during parsing  /meta-rdk-broadband/recipes-rdkb/sysint-broadband/sysint-broadband.bb

meta-cmf-mesh

mesh-agent.bb


meta-rdk-broadband

sysinit-broadband.bb


In mesh-agent.bb

replace base_contains by bb.utils.contains
6ParseError at  /meta-browser/recipes-mozilla/mozilla-devscripts/mozilla-devscripts_git.bb:15: Could not inherit file classes/distutils.bbclassmeta-cmf-broadband

In rdk-bbmasks-broadband.inc,

add BBMASK .= "|meta-browser/*"

7ParseError at /Migration-3.1/meta-rdk-broadband/recipes-ccsp/ccsp/ccsp-webui.bb:32: Could not inherit file classes/lxc.bbclassmeta-virtualization

Under classes,

remove inherit lxc from ccsp-webui.bb

8

ExpansionError during parsing /meta-rdk-broadband/recipes-ccsp/ccsp/ccsp-wifi-agent.bb


ExpansionError during parsing /meta-rdk-broadband/recipes-ccsp/ccsp/parodus2ccsp.bb

meta-rdk-broadband

ccsp-wifi-agent.bb


parodus2ccsp.bb

replace base_containes by bb.utils.contains
9

ExpansionError during parsing /meta-rdk-opensync/recipes/opensync/opensync_1.4.0.bb


ExpansionError during parsing /meta-rdk-ext/recipes-support/base64/base64_git.bb

meta-turris

opensync_1.4.0.bbappend


meta-rdk-ext

base64_git.bb

change branch to master
10Nothing RPROVIDES '${ROOTFS_PKGMANAGE_BOOTSTRAP}' (but /openembedded-core/meta/recipes-core/images/core-image-minimal.bb RDEPENDS on or otherwise requires it)

ERROR: Required build target 'core-image-minimal' has no buildable providers.
openembedded-core

add  ROOTFS_PKGMANAGE_BOOTSTRAP = "postinsts"

11

Nothing RPROVIDES 'wireless-tools' (but /meta-turris/recipes-core/packagegroups/packagegroup-turris-core.bb RDEPENDS on or otherwise requires it)


Nothing RPROVIDES 'trace-cmd' (but /meta-turris/recipes-core/packagegroups/packagegroup-turris-core.bb RDEPENDS on or otherwise requires it)


Nothing RPROVIDES 'iperf' (but /meta-turris/recipes-core/packagegroups/packagegroup-turris-core.bb RDEPENDS on or otherwise requires it)

openembedded-core




openembedded-core



meta-openembedded

remove wireless-tools ,trace-cmd , iperf  from packagegroup-turris-core.bb

12

ERROR: 265 unbuildable tasks were found.
These are usually caused by circular dependencies and any circular dependency chains found will be printed below. Increase the debug level to see a list of unbuildable tasks.

openembedded-core

python3_3.8.2.bb

 BBMASK openssl unused version
13ERROR: kern-tools-native-0.2+gitAUTOINC+7604d2d1a4-r12 do_patch: Command Error: 'quilt --quiltrc /build-turris/tmp/work/x86_64-linux/kern-tools-native/0.2+gitAUTOINC+7604d2d1a4-r12/recipe-sysroot-native/etc/quiltrc push' exited with 0 Outputmeta-rdk-opensyncRecreate the patch file ./meta-rdk-opensync/recipes/kern-tools/files/dont_install_kconfiglib.patch
14dbus-1.12.16-r0 do_fetch: Fetcher failure: Unable to find file file://01-dbus-ccsp-apis-1.12.16.patch anywhere.meta-rdk-ext

rename the existing patch for dbus version 1.12.16 and recreate the patch with the following name

01-dbus-ccsp-apis-1.12.16.patch

15u-boot-marvell-2013.01+gitAUTOINC+25998da8b6-r0 do_configure: Execution of /build-turris/tmp/work/turris-rdk-linux-musleabi/u-boot-marvell/2013.01+gitAUTOINC+25998da8b6-r0/temp/run.do_configure.12492' failed with exit code 1

meta-turris

u-boot-marvell_2013.01.bbappend

Add,

do_configure_prepend() {
touch ${S}/.config
cp ${WORKDIR}/recipe-sysroot-native/usr/bin/oldconfig ${WORKDIR}/uboot/oldconfig
}

16ERROR: /build-turris/tmp/work/turris-rdk-linux-musleabi/u-boot-marvell/2013.01+gitAUTOINC+25998da8b6-r0/uboot/fs/jffs2/mini_inflate.c:222: undefined reference to `cramfs_memset'

meta-turris

u-boot-marvell_2013.01.bbappend

Create a patch and apply

u-boot-inline-error.patch

17dnsmasq-2.80-r0 do_patch: Command Error: 'quilt --quiltrc /home/krishna/RAJ/Migration-3.1/build-turris/tmp/work/armv7ahf-neon-rdk-linux-musleabi/dnsmasq/2.80-r0/recipe-sysroot-native/etc/quiltrc push' exited with 0 meta-rdk-ext

recreate the patch

130-fingerprint-dhcp-lease-file.patch

18kern-tools-native-0.2+gitAUTOINC+7604d2d1a4-r12 do_populate_lic: QA Issue: kern-tools-native: LIC_FILES_CHKSUM points to an invalid file: /build-turris/tmp/work/x86_64-linux/kern-tools-native/0.2+gitAUTOINC+7604d2d1a4-r12/git/git/Kconfiglib/LICENSE.txt [license-checksum]

meta-rdk-opensync

kern-tools-native_%.bbappend

comment 

LIC_FILES_CHKSUM = "file://git/Kconfiglib/LICENSE.txt;md5=448ee4da206e9be8f4a79c48e0741295"

19

core-image-minimal-1.0-r0 do_rootfs: Unable to install packages. 

- nothing provides fftw needed by packagegroup-turris-core-1.0-r0.all

- do not ask to install a package providing packagegroup-turris-core


add

fftw.bbappend

20

When reparsing /openembedded-core/meta/recipes-core/images/core-image-minimal.bb:do_rootfs, the basehash value changed from 1c76594fd609e77323d32b96b490551409f1dd7494e75119b74115805687e530 to 435cd9fd2595cbf5d3420df8cdcf1366179c1c68f804f4ab735b6cff5f84d03f. The metadata is not deterministic and this needs to be fixed.

ERROR: $ bitbake core-image-minimal -cdo_rootfs -Snone
ERROR: $ bitbake core-image-minimal -cdo_rootfs -Sprintdiff

meta-turris

minimal.bbappend 

add BB_HASH_IGNORE_MISMATCH = "1"
21ERROR: core-image-minimal-1.0-r0 do_rootfs: Postinstall scriptlets of ['systemd'] have failed. If the intention is to defer them to first boot,
then please place them into pkg_postinst_ontarget_${PN} ()

Removed installing resolv.conf for dunfell branch
22ERROR: core-image-minimal-1.0-r0 do_rootfs: Taskhash mismatch 8f27e0dbdfe3ca200423ce2c2b7235163592522452134eeb952f0ed25647769d versus 7db8ecb95cf063d5b230c2eefa967d5e6888f6c0455f20a701f8c2113198ce9b for /openembedded-core/meta/recipes-core/images/core-image-minimal.bb:do_rootfs
ERROR: Taskhash mismatch 

meta-turris

core-image-minimal.bbappend

 add IMAGE_NAME[vardepsexclude] = "DATETIME"
23

ERROR: core-image-minimal-1.0-r0 do_image_wic: Execution of /build-turris/tmp/work/turris-rdk-linux-musleabi/core-image-minimal/1.0-r0/temp/run.do_image_wic.29811' failed with exit code 1:

ERROR: _exec_cmd: install -m 0644 -D /build-turris/tmp/deploy/images/turris/zImage-armada-385-turris-omnia.dtb 
/images/turris/zImage-armada-385-turris-omnia.dtb': No such file or directory

meta-turris

turris.conf

 remove zImage-armada-385-turris-omnia.dtb from IMAGE_BOOT_FILES
24

ERROR: Nothing PROVIDES 'wireless-tools'

meta-rdk-opensync

meta-rdk

In opensync_1.4.0.bb, remove wireless-tools from depends 

And in packagegroup-rdk-oss-broadband.bb, remove wireless-tools for dunfell branch

25

ERROR: Nothing PROVIDES 'bridge-utils-native'

ERROR: Nothing PROVIDES 'virtual/kernel-native'

meta-virtualization

openvswitch_git.bb

upgraded from 2.6.3 to 2.13

Add,
DEPENDS_remove = "virtual/kernel bridge-utils"
DEPENDS_append_class-target = " virtual/kernel"
DEPENDS_append_class-target = " bridge-utils"
26
ERROR: Nothing RPROVIDES 'cpp-symlinks'

ERROR: Nothing RPROVIDES 'cpp'

meta-openembedded

python3-pycparser_2.19.bb
Add,
RDEPENDS_${PN}_class-target_remove = " cpp cpp-symlinks"
27

ERROR: mosquitto-1.4.8-r0 do_compile: oe_runmake failed

security_default.c:773:13: error: storage size of 'context' isn't known

meta-rdk-ext

mosquitto_1.4.8.bb

In rdk.conf

Include preferred version of mosquitto with 1.6.9

28make: *** No targets specified and no makefile found. Stop.
ERROR: oe_runmake failed

meta-rdk-broadband

ccsp-common-library.bb

change source directory by including,

S = "${WORKDIR}/ccsp-common-library-yocto-dunfell-upgrade+git${SRCPV}"

29

error: dereferencing pointer to incomplete type 'SSL' {aka 'struct ssl_st'}

error: 'SSL_ST_OK' undeclared (first use in this function); did you mean 'TLS_ST_OK'?

meta-rdk-broadband

ccsp-common-library.bb

remove "SSL_ST_OK" 
(that has been removed for openssl version 1.1.0g)
30
error: 'void* memcpy(void*, const void*, size_t)' 
copying an object of non-trivial type
msgpack-c

Reference:

https://github.com/msgpack/msgpack-c/pull/659/commits/a05d92ae85024d0648f69f95307a1d3e8e51109c

31
undefined reference to `SSLeay_add_all_algorithms'
collect2: error: ld returned 1 exit status

meta-rdk-broadband

utopia.bb

In user_openssl.c,

Add condition for the function,

#if OPENSSL_VERSION_NUMBER < 0x10100000L
#endif

32fatal error: cJSON.h: No such file or directory

meta-rdk-broadband

utopia.bbccsp-psm.bb

meta-rdk-ext, ccsp-tr069-pa.bb

wdmp-c_1.0.bb

meta-rdk

dca_git.bb


In apply_system_defaults.c, wdmp_internal.c, wdmp-c.c, 

cosa_x_cisco_com_mta_apis.h, libpd.c, ssp_cfmif.c, dcautils.h, dca.c,
ssp_ccsp_cwmp_cfg.c

add the path for header file, 

#include "cjson/cJSON.h"

33error: format '%ld' expects argument of type 'long int', but argument 8 has type 'time_t'

meta-rdk-opensync

opensync_1.4.0.bb

In sm_survey_report.c,

change long int to long long int

34error: 'strncpy' output truncated before terminating nul copying 23 bytes from a string of the same length

meta-rdk-ext

wrp-c_1.0.bb

In wrp-c.c,

change strncpy with memcpy

35

error: implicit declaration of function 'strnlen' 'gmtime_r'

'localtime_r' , 'asctime_r'

error: nested extern declaration of 'gmtime_r' , 'localtime_r' , 'asctime_r'
error: assignment to 'struct tm * restrict' from 'int' makes pointer from integer without a cast

meta-openembedded

safec_3.5.bb

In safec_3.5.bb

Add, CFLAGS += " -D_POSIX_C_SOURCE"


36
error: implicit declaration of function 'explicit_bzero'

meta-openembedded

safec_3.5.bb

In memzero_s.c,
Add, #undef HAVE_EXPLICIT_ZERO
37configure: error: Package requirements (openssl >= 1.0.1f) were not met:
No package 'openssl' found

meta-rdk-broadband

sso.bb

In sso.bbappend 

Add openssl in depends

38Patch 0001-DELIA-19972-Dibbler-client-crash-in-checkDecline.patch does not apply

meta-openembedded

dibbler_git.bb

In dibbler_%.bbappend

Remove the patch file included.

39checking for and configuring transport modules to use... configure: error: IPv6 transports not available if IPv6 support is not enabled

meta-openembedded 

net-snmp_5.8.bb

Edit IPv6 configurations according to the support needed
40
aclocal: error: couldn't open directory 'cfg': No such file or directory

meta-rdk-broadband

notify-comp.bb

In configure.ac,
change cfg to m4
41fatal error: avro.h: No such file or directory

meta-rdk-broadband

ccsp-wifi-agent.bb

In ccsp-wifi-agent.bbappend 
Add, DEPENDS += "avro-c"
42

undefined reference to symbol 'breakpad_ExceptionHandler'

error adding symbols: DSO missing from command line

meta-rdk-broadband

ccsp-epon-agent.bb,

ccsp-eth-agent.bb,

ccsp-p-and-m.bb

In respective recipes, 

Add, 

LDFLAGS += " -lbreakpadwrapper"
43error: storage size of 'ctx' isn't known

meta-rdk-broadband

ccsp-p-and-m.bb

ccsp-tr069-pa.bb

Its applicable for openssl version < 1.1, for updated version use dynamic allocations for ctx
44undefined reference to `syscfg_get'

meta-rdk-broadband

ccsp-eth-agent.bb

ccsp-p-and-m.bb

In ccsp-eth-agent.bb

Add -lsyscfg in LDFLAGS_append, 

45
fatal error: uuid/uuid.h: No such file or directory

meta-rdk-ext

miniupnpd_2.1.bb

In miniupnpd_2.1.bb 
Add, DEPENDS += "util-linux"
46dibbler-1.0.1/scripts/notify-scripts/client-notify-bsd.sh': No such file or directory

meta-openembedded

dibbler_git.bb

In dibbler_%.bb

Change the installation path of the client-notify-bsd.sh

47ERROR: $ bitbake rdk-generic-broadband-image -cdo_populate_lic_deploy -Snone
ERROR: $ bitbake rdk-generic-broadband-image -cdo_populate_lic_deploy -Sprintdiff

meta-rdk-broadband

ccsp-p-and-m.bb

In rdk-generic-broadband-image.bbappend

Add, BB_HASH_IGNORE_MISMATCH = "1"

48
 requires /bin/bash, but no providers

ccsp-p-and-m.bb

dibbler_%.bbappend
mesh-agent.bb

In respective recipe,

Add according to the component,

For Example, RDEPENDS_${PN}-ccsp_append_dunfell = " bash"


49
contained in package hal-wifi-generic requires libwpa_client.so, 
but no providers found in RDEPENDS_hal-wifi-generic?
meta-rdk-broadband
hal-wifi-generic_git.bb
In hal-wifi-generic_git.bbappend  
Add, RDEPENDS_${PN}_append_dunfell = " wpa-supplicant"
50
 Postinstall scriptlets of ['utopia'] have failed
meta-rdk
rdk-generic-broadband-image.bb
In utopia.bb 
comment out
ALTERNATIVE_LINK_NAME[syslog-conf] = "${sysconfdir}/syslog.conf"
51rdk-generic-broadband-image-1.0-r0 do_rootfs: Taskhash mismatch

meta-turris

rdk-generic-broadband-image.bbappend

IMAGE_NAME[vardepsexclude] = "DATETIME"
52

ERROR: Configure error in PAM , tr069, dmcli and webui

meta-rdk-broadband

Safec version has been upgraded from 3.5 to 3.5.1

Changed LDFLAGS to libsafec-3.5.1

53

ERROR: Nothing RPROVIDES 'cpp-symlinks'

ERROR: Nothing RPROVIDES 'cpp'

meta-openembedded

meta-turris

python3-pycparser version has been upgraded from 2.19 to 2.20

renamed the bbappend to 2.20 version

54
ERROR: Mosquitto compile error, build breakage
meta-rdk-ext

patch-set In  has been provided to fix this issue with openssl
55

wan interface erouter0 did not get IP

Utopia -repo

service_wan.c code seem not proper,

Fails in dhcp_parse_vendor_info API

56lan interface brlan0  not acquiring the IP

meta-turris /utopia.bbappend

Provided the patch-set as work-around in lan_handler.sh

57

Interfaces did not acquire inet6 address

meta-turris/machine/conf/turris.conf

DISTRO_FEATURES_append = " ipv6"
58check.php gives the blank image, after logged on in RDKB-WebUI

webui - repo

Replaced  the suspicious line in check.php 

59WebUI does not allow to navigate after Logging inwebui-repo/ webgui.shexport LANG=

ccspwifiagent.service requires manual restart to run

meta-rdk-ext/ recipes-connectivity/wireless-tools/wireless-tools_30.pre9.bb

meta-turris/ ccsp-common-library/checkturriswifisupport.service 

Add wireless-tools recipe for iwconfig binary


Add Restart=always

60Both SSID are grey out in WEBUI under connectionsCcspWifiagent repoExclude Forcedisableradios() by adding Turris Macro
61WebPA support on dunfell Turris-Omniameta-turrisAdded the script files needed.
62Firmware upgrade support on dunfell Turrismeta-turrisIncluded u-boot-fw-utils.bb 
63opkg build failure for 3.1 imagesmeta-rdk-extAdded a proper SRC_URI and checksum
64Opensync verification , with plume NOC and meshagent support

meta-turris

rdkb-turris-hal


Made rdkb-turris-hal repo as rdk-next

Fixed the issue with openvswitch

65WEBUI AP's are disabled with rdkb-turris-hal changesmeta-turrisUpdated proper hostapd-init.sh file in dunfell 

WebPA Support

System flow between the major components/services involved in fetching the data,

Ensure the parodus service is active on client-side and execute the curl commands ,

Getting the value,

Response Message:

{"parameters":[{"name":"Device.DeviceInfo.Manufacturer","value":"Turris CZ","dataType":0,"parameterCount":1,"message":"Success"}],"statusCode":200}


Setting the value,

Response Message:

{"parameters":[{"name":"Device.WiFi.SSID.10001.SSID","message":"Success"}],"statusCode":200}


Validated below list of parameter from client( Turris-Omnia ) device

WebPA Get-Only ParametersWebPA Get/Set Parameters
  • Device.DeviceInfo.Manufacturer
  • Device.DeviceInfo.ManufacturerOUI
  • Device.DeviceInfo.ModelName
  • Device.DeviceInfo.SerialNumber
  • Device.DeviceInfo.HardwareVersion
  • Device.DeviceInfo.SoftwareVersion
  • Device.DeviceInfo.MemoryStatus.Total
  • Device.DeviceInfo.MemoryStatus.Free
  • Device.DeviceInfo.UpTime
  • Device.DeviceInfo.ProcessStatus.CPUUsage
  • Device.Hosts.X_CISCO_COM_ConnectedDeviceNumber
  • Device.Users.User.1.X_CISCO_COM_Password
  • Device.WiFi.SSID.10001.SSID
  • Device.WiFi.AccessPoint.10001.Security.KeyPassphrase
  • Device.WiFi.SSID.10001.Enable
  • Device.WiFi.Radio.10000.Enable
  • Device.WiFi.Radio.10000.Channel



Note: 
In below Get/Set parameters, able to set the value successfully, but retrieving the same data set is failing. Wifi-HAL need to be updated in yocto_3.1 for this issue. 

  • Device.Users.User.1.X_CISCO_COM_Password
  • Device.WiFi.Radio.10000.Channel

Firmware Upgrade

For TFTP and Xconf Server Setup, Refer: Firmware upgrade through XCONF server

  • Verifying the XConf Server configuration through Json response,

URL: http://35.155.171.121:9092//xconf/swu/stb?eStbMac=D8:58:D7:00:A6:B4&model=%3Cmodel_name%3E&capabilities=RCDL&capabilities=supportsFullHttpUrl


Block Diagram:


Procedures to be carried out on Turris-Omnia:

1) Flash the image and confirm for the 7 partitions in the turris-omnia board

2) Verify the CLOUDURL parameter where XConf Server URL is mentioned

3) swupdate.service initiates the firmware upgrade

4) Download the image in the /tmp folder and move the rootfs filesystem(rdk*.rootfs.tar.gz) into the 7th partition and kernel (zImage*.bin) image into 3rd partition

5) By changing the Active partition (mmcblk0p5) by target partition (mmcblk0p7) the downloaded rootfs is loaded 

6) On reboot, the turris board comes up with the downloaded image

7) Verify the version of booted image which shows the downloaded image version(cat /version.txt)

Limitation: Image download process was verified through tftp server,Yet to have http support


OpenSync Verification, with Plume NOC and MeshAgent Support

Opensync covers layers from just above the drivers within a device, to the connection to the cloud within that device. It is responsible for translating Cloud management commands to the hardware driver calls and reports to the Cloud state and telemetry in a mesh multi-AP Wi-Fi network

Components Involved:

         1) Openvswitch - Provides OVSDB for opensync communication

         2)  OpenSync - Provides Various managers (DM,CM,WM,NM,etc..) 

         3) MeshAgent - Ensures the sync between RDKB and Plume

         4) rdkb-turris-hal - Contains the hardware level code to reterive AP and stats information, using Netlink, hostapd_cli and iw 

Version and branches of Compnents

Opensvswitch → Version has been upgraded from 2.6.0 to 2.13.0 (dunfell branch)

OpenSync → Version 1.4.0.1 (master branch)

MeshAgent → CMF git (dunfell branch)

rdkb-turris-hal → rdkcentral GitHub (dunell branch)

 Set-up Considerations

 Opensync has to be manually triggered , and respective certificate has to be copied into the image (/nvram/certs)


 Execute the below script , for linking the back-haul interfaces

root@TurrisOmnia-GW:# sh start_hostapd.sh
 
#!/bin/bash
 
killall dnsmasq
dnsmasq -u root -a 10.0.0.1 -i brlan0 -F 10.0.0.2,10.0.0.20 --dhcp-option=3,10.0.0.1 --dhcp-option=6,10.0.0.1 \
-a 169.254.2.1 -i wifi2 -F 169.254.2.2,169.254.2.10 \
-a 169.254.3.1 -i wifi3 -F 169.254.3.2,169.254.3.10 \
-C /dev/null -z --except-interface=lo -l /nvram/dnsmasq.leases --dhcp-script=/nvram/scripts/restart_mesh.sh \
--log-facility=/tmp/dnsmasq.log --log-dhcp
 
#touch /tmp/hostapd-acl0
#touch /tmp/hostapd-acl1
touch /tmp/hostapd-acl2
touch /tmp/hostapd-acl3
 
#hostapd_cli -i global raw ADD bss_config=wlan0:/nvram/hostapd0.conf
#hostapd_cli -i global raw ADD bss_config=wlan1:/nvram/hostapd1.conf
hostapd_cli -i global raw ADD bss_config=wlan2:/nvram/hostapd2.conf
hostapd_cli -i global raw ADD bss_config=wlan3:/nvram/hostapd3.conf


Execute the below script for running the opensync Managers

root@TurrisOmnia-GW:/# sh start_plume.sh
#temporary fix
iptables -P INPUT ACCEPT
 
brctl addbr br-home
 
#ln -s /nvram/dnsmasq.leases /tmp/dnsmasq.leases
 
if [ ! -f /usr/plume/etc/certs/ca.pem ];
then
cp /nvram/certs/c* /usr/plume/etc/certs/
fi
 
killall meshAgent
cd /usr/ccsp/mesh
meshAgent &
cd /usr/plume/etc/
/usr/plume/scripts/managers.init stop
/usr/plume/scripts/managers.init start


Note: Cert files are provided by Opensync for Licencees 


Opensync mangers and NOC status can verified by querying OVSDB table

root@TurrisOmnia-GW:#      /usr/plume/tools/ovsh  s  Manager


_uuid | cdff~a085 |
_version | b6e7~58ac |
connection_mode | ["set",[]] |
external_ids | ["map",[]] |
inactivity_probe | 30000 |
is_connected | true |
max_backoff | ["set",[]] |
other_config | ["map",[]] |
status | ["map",[["sec_since_connect","31"],["state","ACTIVE"]]] |
target | ssl:54.200.0.59:443 |

User Access Considerations

1)  Log on to plume NOC, with the following URL https://piranha-osacademy.dev.us-west-2.aws.plume.tech/noc/login

                    UserName and Password are provided for Opensync Licencees

2) We should be able to view Plume NOC with Connected device graph (If Device is connected)

Limitations

            SSID name change sync between Plume NOC and RDKB WEBUI is not supported.

Layers and its change-sets

S.NoLayerrecipes updatedChange-setsRemarks
1.meta-turris

opensync_2.0.5

u-boot-fw-utils-turris_2019.07

recipes-bsp/u-boot/u-boot-turris_2019.07

kern-tools-native

ccsp-common-library

ccsp-cr

ccsp-epon-agent

ccsp-eth-agent

ccsp-logagent

ccsp-misc

ccsp-p-and-m 

ccsp-wifi-agent 

ccsp-psm 

notify-comp 

hal-wifi-turris_git 

utopia

mesh-agent

rbus-core

rtmessage_git 

glibc_2.31 

core-image-minimal

rdk-generic-broadband-image 

rdk-generic-extender-image

packagegroup-rdk-ccsp-broadband

packagegroup-turris-core

systemd_244.3 

python3-pycparser_2.20

openvswitch_git

sysint-broadband

fftw_3.3.8

https://github.com/rdkcentral/meta-turris/pull/216

https://github.com/rdkcentral/meta-turris/pull/212

https://github.com/rdkcentral/meta-turris/pull/219

Resolved
2.meta-cmf-broadband
https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf-broadband/+/45199
https://github.com/rdkcentral/meta-turris/pull/205
Resolved
3.meta-cmf

https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf/+/45938

https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf/+/47065

In-progress

Challenges/Issues observed 

SNOISSUESCHANGE-SET
1specific breakpad_git.bb recipe has been added for dunfell in meta-openembedded layer


https://github.com/rdkcentral/meta-turris/pull/223

https://github.com/rdkcentral/meta-turris/pull/228

https://code.rdkcentral.com/r/c/manifests/+/48477

https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf-broadband/+/48474

2Linked the safec-3.5.1 library for ccsp components 
3Added the patch-sets for dunfell external source ccsp components
4Resolved the library linking issues  with some components

WAN interface erouter0 did not get IP, because of ethtool

6Wireless-tools recipe has been moved to iw for dunfell

Features Validated

  • dmcli - Retrieved the data from all ccsp components
  • Test and Diagnostics - Validated with ping and Tracroute commands
  • 2.4 GHz Band Support - Client is able to connect on 2.4 GHz
  • 5 GHz Band Support - Client is able to connect on 5 GHz
  • Persistent Storage Management - Psm service running fine and syscfg 
  • EthWan - gwprovapp-etwan is used 

Known Issues

  • WebUI is not working , throwing "500 Internal Server Error"
  • Opensync Status is in "BACKOFF"


Challenges/Issues observed

SNOISSUESCHNAGE-SET
1WEBUI issue "500 Internal Error"



https://github.com/rdkcentral/meta-turris/pull/231

https://github.com/rdkcentral/meta-turris/pull/234

2Opensync build failure, with abs()
3Opensync NM segmentation fault
4linux-libc-headers changes from comcast had an impact on turris


Known Issues

  • Plume NOC shows the device offline
  • WEBUI on LAN interface is not working(10.0.0.1)

 Features Supported

No

Feature

Supported

1LAN Connected Devices-Ethernet(tick)
2WAN Connected Devices-Wi-Fi(tick)
3Parental Control(error)
4Firewall settings(error)
5Advanced Config: Port Triggering(error)
6Advanced Config: Port Forwarding(error)
7Advanced Config: Remote Management(error)
8Advanced Config: DMZ(error)
9Xfinity Wi-Fi 2.4/5 GHz – Public Hotspot(error)
10Test and Diagnostics(error)
11Local WebUI Configuration(tick)
12Factory Reset(error)
13DHCP /Reserved IP(tick)
14EthWan(tick)
15Eth Agent(error)
162.4 GHz Band Support(tick)
175 GHz Band Support(tick)
18Bridge Mode Support(error)
19Persistent Storage Management(tick)
20WebPA for Comcast,community(error)
21Lost and Found(error)
22Bluetooth(error)
22Harvester Support(error)
23TR-69(error)
24SNMP(error)
27Boot time data measurement(error)
28Wireless Protection Setup(WPS)(error)
29Captive Portal(error)
30Wi-Fi MAC Filtering(error)
31Log Rotation Support(error)
32Firmware Upgrade Support(error)
33Multiboot Support(error)
34Telemetry Support(error)
35IPV6(error)

Flashing procedure


            Turris Omnia Reference Platform: Flashing Instruction

  • No labels