RDK Resources
[*RDK Preferred*]
Code Management Facility
RDK Forums
[RDK Conferences]
RDK Support
Archives
Papers & Presentations Archive
...
$ 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
The following The following commands fetches the source code of turris using repo tool and create the image using bitbake
Code Block | ||||
---|---|---|---|---|
| ||||
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 |
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[:=]> | meta-cmf | Need 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 | meta-marvell | In armada38x-base.inc , Removed IMAGE_DEPENDS_wic_append_armada38x = " virtual/bootloader" added WKS_FILE_DEPENDS ?= "" |
4 | ParseError at /meta-marvell/recipes-kernel/linux/linux-marvell.inc:16: Could not include required file recipes-kernel/linux/linux-dtb.inc | meta-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 meta-rdk-broadband | replace base_contains by bb.utils.contains |
6 | ParseError at /meta-browser/recipes-mozilla/mozilla-devscripts/mozilla-devscripts_git.bb:15: Could not inherit file classes/distutils.bbclass | meta-cmf-broadband | In rdk-bbmasks-broadband.inc, add BBMASK .= "|meta-browser/*" |
7 | ParseError at /Migration-3.1/meta-rdk-broadband/recipes-ccsp/ccsp/ccsp-webui.bb:32: Could not inherit file classes/lxc.bbclass | meta-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 | 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 | change branch to master |
10 | Nothing 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. | openembedded-core | BBMASK openssl unused version |
13 | ERROR: 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 Output | meta-rdk-opensync | Recreate the patch file ./meta-rdk-opensync/recipes/kern-tools/files/dont_install_kconfiglib.patch |
14 | dbus-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 |
15 | u-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() { |
16 | ERROR: /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 |
17 | dnsmasq-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 |
18 | kern-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 | meta-turris minimal.bbappend | add BB_HASH_IGNORE_MISMATCH = "1" |
21 | ERROR: 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 | |
22 | ERROR: 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 | 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 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' | meta-openembedded python3-pycparser_2.19.bb | Add, |
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 | In rdk.conf Include preferred version of mosquitto with 1.6.9 |
28 | make: *** No targets specified and no makefile found. Stop. ERROR: oe_runmake failed | meta-rdk-broadband | 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 | remove "SSL_ST_OK" |
30 | error: 'void* memcpy(void*, const void*, size_t)' | 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 | In user_openssl.c, Add condition for the function, #if OPENSSL_VERSION_NUMBER < 0x10100000L |
32 | fatal error: cJSON.h: No such file or directory | meta-rdk-broadband meta-rdk-ext, ccsp-tr069-pa.bb meta-rdk | 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, add the path for header file, #include "cjson/cJSON.h" |
33 | error: format '%ld' expects argument of type 'long int', but argument 8 has type 'time_t' | meta-rdk-opensync | In sm_survey_report.c, change long int to long long int |
34 | error: 'strncpy' output truncated before terminating nul copying 23 bytes from a string of the same length | meta-rdk-ext | 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' | meta-openembedded | In safec_3.5.bb Add, CFLAGS += " -D_POSIX_C_SOURCE" |
36 | error: implicit declaration of function 'explicit_bzero' | meta-openembedded | In memzero_s.c, |
37 | configure: error: Package requirements (openssl >= 1.0.1f) were not met: No package 'openssl' found | meta-rdk-broadband | In sso.bbappend Add openssl in depends |
38 | Patch 0001-DELIA-19972-Dibbler-client-crash-in-checkDecline.patch does not apply | meta-openembedded | In dibbler_%.bbappend Remove the patch file included. |
39 | checking for and configuring transport modules to use... configure: error: IPv6 transports not available if IPv6 support is not enabled | meta-openembedded | Edit IPv6 configurations according to the support needed |
40 | aclocal: error: couldn't open directory 'cfg': No such file or directory | meta-rdk-broadband | In configure.ac, |
41 | fatal error: avro.h: No such file or directory | meta-rdk-broadband | In ccsp-wifi-agent.bbappend |
42 | undefined reference to symbol 'breakpad_ExceptionHandler' error adding symbols: DSO missing from command line | meta-rdk-broadband | In respective recipes, Add, LDFLAGS += " -lbreakpadwrapper" |
43 | error: storage size of 'ctx' isn't known | meta-rdk-broadband | Its applicable for openssl version < 1.1, for updated version use dynamic allocations for ctx |
44 | undefined reference to `syscfg_get' | meta-rdk-broadband | Add -lsyscfg in LDFLAGS_append, |
45 | fatal error: uuid/uuid.h: No such file or directory | meta-rdk-ext | In miniupnpd_2.1.bb |
46 | dibbler-1.0.1/scripts/notify-scripts/client-notify-bsd.sh': No such file or directory | meta-openembedded | In dibbler_%.bb Change the installation path of the client-notify-bsd.sh |
47 | ERROR: $ bitbake rdk-generic-broadband-image -cdo_populate_lic_deploy -Snone ERROR: $ bitbake rdk-generic-broadband-image -cdo_populate_lic_deploy -Sprintdiff | meta-rdk-broadband | In rdk-generic-broadband-image.bbappend Add, BB_HASH_IGNORE_MISMATCH = "1" |
48 | requires /bin/bash, but no providers | 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, | meta-rdk-broadband | In hal-wifi-generic_git.bbappend |
50 | Postinstall scriptlets of ['utopia'] have failed | meta-rdk | In utopia.bb |
51 | rdk-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' | 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 |
56 | lan 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" |
58 | check.php gives the blank image, after logged on in RDKB-WebUI | webui - repo | Replaced the suspicious line in check.php |
59 | WebUI does not allow to navigate after Logging in | webui-repo/ webgui.sh | export 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 | |
60 | Both SSID are grey out in WEBUI under connections | CcspWifiagent repo | Exclude Forcedisableradios() by adding Turris Macro |
61 | WebPA support on dunfell Turris-Omnia | meta-turris | Added the script files needed. |
62 | Firmware upgrade support on dunfell Turris | meta-turris | Included u-boot-fw-utils.bb |
63 | opkg build failure for 3.1 images | meta-rdk-ext | Added a proper SRC_URI and checksum |
64 | Opensync 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 |
65 | WEBUI AP's are disabled with rdkb-turris-hal changes | meta-turris | Updated proper hostapd-init.sh file in dunfell |
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 Parameters | WebPA Get/Set Parameters |
---|---|
|
|
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.
...
SSID name change sync between Plume NOC and RDKB WEBUI is not supported.
...
S.No | Layer | recipes updated | Change-sets | Remarks |
---|---|---|---|---|
1. | meta-turris | opensync_2.0.5 |
...
Build Instruction for the migration of meta-turris layer,
repo init -u https://code.rdkcentral.com/r/manifests -m rdkb-turris-extsrc.xml -b yocto-dunfell-upgrade
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 |
Once the repo init is done, the below repos revision must be changed in .repo/manifests/rdb-turris-extsrc.xml
meta-turris → master
rdkb-turris-hal → master
halinterafce → rdk-next
meta-rdk-opensync → osync_2.0.5
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 | 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 |
...
nopanel | true |
---|
...
SNO | ISSUES | CHANGE-SET |
---|---|---|
1 | specific 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/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
...
WAN interface erouter0 did not get IP, because of ethtool
...
No Format | ||
---|---|---|
| ||
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 |
...
https://github.com/rdkcentral/meta-turris/pull/234
...
Opensync has to be manually triggered , and respective certificate has to be copied into the image (/usr/opensync/etc/certs/)
Execute the below script , for linking the back-haul interfaces
...
title | Back haul and DNS script |
---|
...
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
.0
.1
-i wifi2 -F
169.254
.0
.2
,
169.254
.0
.10
\
-a
169.254
.1
.1
-i wifi3 -F
169.254
.1
.2
,
169.254
.1
.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-acl2
touch /tmp/hostapd-acl3
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
Expand | ||
---|---|---|
| ||
|
Note: Cert files are provided by Opensync for Licencees
Opensync mangers and NOC status can verified by querying OVSDB table
root@TurrisOmnia-GW:# /usr/opensync/tools/ovsh s Manager
...
title | Expand Output |
---|
...
...
No
...
Feature
...
Supported
...
...
Upgrading Yocto version from morty to dunfell(Yocto 3.1) for Turris Omnia Reference Platform
Considerations for broadband & extender build:
$ 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
The following commands fetches the source code of turris using repo tool and create the image using bitbake
Code Block | ||||
---|---|---|---|---|
| ||||
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 |
...
Error/ Issues
...
Layer and Recipe
...
Fix
...
Unable to start bitbake server (None)
...
In layer.conf
Added
...
Unable to parse Var <AVAILABLE_LICENSES[:=]>
...
Deprecated variable(s) found: "IMAGE_DEPENDS_wic". Use do_image_<type>[depends] += "<recipe>:<task>" instead
...
In armada38x-base.inc ,
Removed IMAGE_DEPENDS_wic_append_armada38x = " virtual/bootloader"
...
In recipes-kernel/linux,
added linux-dtb.inc
...
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
meta-rdk-broadband
...
...
In rdk-bbmasks-broadband.inc,
add BBMASK .= "|meta-browser/*"
...
Under classes,
remove inherit lxc from ccsp-webui.bb
...
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
...
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
...
add ROOTFS_PKGMANAGE_BOOTSTRAP = "postinsts"
...
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
...
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
...
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
...
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
}
...
meta-turris
u-boot-marvell_2013.01.bbappend
...
Create a patch and apply
u-boot-inline-error.patch
...
recreate the patch
130-fingerprint-dhcp-lease-file.patch
...
meta-rdk-opensync
kern-tools-native_%.bbappend
...
comment
LIC_FILES_CHKSUM = "file://git/Kconfiglib/LICENSE.txt;md5=448ee4da206e9be8f4a79c48e0741295"
...
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
...
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
...
https://code.rdkcentral.com/r/c/components/generic/rdk-oe/meta-cmf-broadband/+/48474 | |
2 | Linked the safec-3.5.1 library for ccsp components |
3 | Added the patch-sets for dunfell external source ccsp components |
4 | Resolved the library linking issues with some components |
5 | WAN interface erouter0 did not get IP, because of ethtool |
6 | Wireless-tools recipe has been moved to iw for dunfell |
SNO | ISSUES | CHNAGE-SET |
---|---|---|
1 | WEBUI issue "500 Internal Error" | |
2 | Opensync build failure, with abs() | |
3 | Opensync NM segmentation fault | |
4 | linux-libc-headers changes from comcast had an impact on turris |
...
meta-turris
core-image-minimal.bbappend
...
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
...
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
...
ERROR: Nothing PROVIDES 'bridge-utils-native'
ERROR: Nothing PROVIDES 'virtual/kernel-native'
meta-virtualization
...
upgraded from 2.6.3 to 2.13
...
meta-openembedded
python3-pycparser_2.19.bb
...
Add,
RDEPENDS_${PN}_class-target_remove = " cpp cpp-symlinks"
...
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
...
In rdk.conf
Include preferred version of mosquitto with 1.6.9
...
meta-rdk-broadband
...
change source directory by including,
S = "${WORKDIR}/ccsp-common-library-yocto-dunfell-upgrade+git${SRCPV}"
...
error: dereferencing pointer to incomplete type 'SSL' {aka 'struct ssl_st'}
...
meta-rdk-broadband
...
remove "SSL_ST_OK"
(that has been removed for openssl version 1.1.0g)
...
error: 'void* memcpy(void*, const void*, size_t)'
copying an object of non-trivial type
...
Reference:
https://github.com/msgpack/msgpack-c/pull/659/commits/a05d92ae85024d0648f69f95307a1d3e8e51109c
...
undefined reference to `SSLeay_add_all_algorithms'
collect2: error: ld returned 1 exit status
...
meta-rdk-broadband
...
In user_openssl.c,
Add condition for the function,
#if OPENSSL_VERSION_NUMBER < 0x10100000L
#endif
...
meta-rdk-broadband
meta-rdk-ext, ccsp-tr069-pa.bb
meta-rdk
...
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"
...
meta-rdk-opensync
...
In sm_survey_report.c,
change long int to long long int
...
meta-rdk-ext
...
In wrp-c.c,
change strncpy with memcpy
...
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
In safec_3.5.bb
Add, CFLAGS += " -D_POSIX_C_SOURCE"
...
error: implicit declaration of function 'explicit_bzero'
...
meta-openembedded
...
In memzero_s.c,
Add, #undef HAVE_EXPLICIT_ZERO
...
meta-rdk-broadband
...
In sso.bbappend
Add openssl in depends
...
meta-openembedded
...
In dibbler_%.bbappend
Remove the patch file included.
...
meta-openembedded
...
Edit IPv6 configurations according to the support needed
...
aclocal: error: couldn't open directory 'cfg': No such file or directory
...
meta-rdk-broadband
...
In configure.ac,
change cfg to m4
...
meta-rdk-broadband
...
In ccsp-wifi-agent.bbappend
Add, DEPENDS += "avro-c"
...
undefined reference to symbol 'breakpad_ExceptionHandler'
error adding symbols: DSO missing from command line
...
meta-rdk-broadband
...
In respective recipes,
Add,
LDFLAGS += " -lbreakpadwrapper"
...
meta-rdk-broadband
...
meta-rdk-broadband
...
Add -lsyscfg in LDFLAGS_append,
...
fatal error: uuid/uuid.h: No such file or directory
...
meta-rdk-ext
...
In miniupnpd_2.1.bb
Add, DEPENDS += "util-linux"
...
meta-openembedded
...
In dibbler_%.bb
Change the installation path of the client-notify-bsd.sh
...
meta-rdk-broadband
...
In rdk-generic-broadband-image.bbappend
Add, BB_HASH_IGNORE_MISMATCH = "1"
...
requires /bin/bash, but no providers
...
dibbler_%.bbappend
mesh-agent.bb
In respective recipe,
Add according to the component,
For Example, RDEPENDS_${PN}-ccsp_append_dunfell = " bash"
...
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"
...
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"
...
meta-turris
rdk-generic-broadband-image.bbappend
...
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
...
meta-openembedded
meta-turris
...
python3-pycparser version has been upgraded from 2.19 to 2.20
renamed the bbappend to 2.20 version
...
ERROR: Mosquitto compile error, build breakage
...
patch-set In has been provided to fix this issue with openssl
...
wan interface erouter0 did not get IP
...
Utopia -repo
...
service_wan.c code seem not proper,
Fails in dhcp_parse_vendor_info API
...
meta-turris /utopia.bbappend
...
Provided the patch-set as work-around in lan_handler.sh
...
Interfaces did not acquire inet6 address
...
meta-turris/machine/conf/turris.conf
...
DISTRO_FEATURES_append = " ipv6"
...
webui - repo
...
Replaced the suspicious line in check.php
...
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
...
meta-turris
rdkb-turris-hal
...
Made rdkb-turris-hal repo as rdk-next
Fixed the issue with openvswitch
...
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
...
...
For TFTP and Xconf Server Setup, Refer: Firmware upgrade through XCONF server
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 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
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
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)
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
...
title | Back haul and DNS script |
---|
...
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
Expand | ||
---|---|---|
| ||
|
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
...
title | Expand Output |
---|
...
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)
SSID name change sync between Plume NOC and RDKB WEBUI is not supported.
Build Instruction for the migration of meta-turris layer,
repo init -u https://code.rdkcentral.com/r/manifests -m rdkb-turris-extsrc.xml -b yocto-dunfell-upgrade
Once the repo init is done, the below repos revision must be changed in .repo/manifests/rdb-turris-extsrc.xml
meta-turris → master
rdkb-turris-hal → master
halinterafce → rdk-next
meta-rdk-opensync → osync_2.0.5
...
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
...
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
...
No Format | ||
---|---|---|
| ||
repo init -u https://code.rdkcentral.com/r/manifests -m rdkb-turris-extsrc.xml -b yocto-dunfell-upgrade
repo sync -j4 --no-clone-bundle
MACHINE=turris source meta-turris/setup-environment
bitbake rdk-generic-broadband-image |
...
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
...
WAN interface erouter0 did not get IP, because of ethtool
...
No Format | ||
---|---|---|
| ||
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 |
...
https://github.com/rdkcentral/meta-turris/pull/234
...
Opensync has to be manually triggered , and respective certificate has to be copied into the image (/usr/opensync/etc/certs/)
Execute the below script , for linking the back-haul interfaces
...
title | Back haul and DNS script |
---|
...
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
.0
.1
-i wifi2 -F
169.254
.0
.2
,
169.254
.0
.10
\
-a
169.254
.1
.1
-i wifi3 -F
169.254
.1
.2
,
169.254
.1
.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-acl2
touch /tmp/hostapd-acl3
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
Expand | ||
---|---|---|
| ||
|
Note: Cert files are provided by Opensync for Licencees
Opensync mangers and NOC status can verified by querying OVSDB table
root@TurrisOmnia-GW:# /usr/opensync/tools/ovsh s Manager
...
title | Expand Output |
---|
...
No | Feature | Supported |
---|---|---|
1 | LAN Connected Devices-Ethernet | |
2 | WAN Connected Devices-Wi-Fi | |
3 | Parental Control | |
4 | Firewall settings | |
5 | Advanced Config: Port Triggering | |
6 | Advanced Config: Port Forwarding | |
7 | Advanced Config: Remote Management | |
8 | Advanced Config: DMZ | |
9 | Xfinity Wi-Fi 2.4/5 GHz – Public Hotspot | |
10 | Test and Diagnostics | |
11 | Local WebUI Configuration | |
12 | Factory Reset | |
13 | DHCP /Reserved IP | |
14 | EthWan | |
15 | Eth Agent | |
16 | 2.4 GHz Band Support | |
17 | 5 GHz Band Support | |
18 | Bridge Mode Support | |
19 | Persistent Storage Management | |
20 | WebPA for Comcast,community | |
21 | Lost and Found | |
22 | Bluetooth | |
22 | Harvester Support | |
23 | TR-69 | |
24 | SNMP | |
27 | Boot time data measurement | |
28 | Wireless Protection Setup(WPS) | |
29 | Captive Portal | |
30 | Wi-Fi MAC Filtering | |
31 | Log Rotation Support | |
32 | Firmware Upgrade Support | |
33 | Multiboot Support | |
34 | Telemetry Support | |
35 | IPV6 |