Professional Documents
Culture Documents
Project
Yocto Summit 2021
Tomasz Żyjewski
1 / 34
Agenda
whoami
Who we are?
OpenWrt description
Advantages of using the Yocto Project
meta-openwrt overview
HW - short description
Description of tests
Boot OpenWrt community version
Build OpenWrt with meta-openwrt
Boot meta-openwrt image
Summary
Q&A
Tomasz Żyjewski
Embedded Systems Engineer
Releases
Stable version numbers are mode from the year and the month when a
new stable branch was created
Table of Hardware contains the release version that supports the device
Packages
Repository - https://github.com/kraj/meta-openwrt
README.md review
Available images
Recipes
$ ls meta-openwrt/recipes-*/
meta-openwrt/recipes-core/:
firewall3 fstools images iwinfo jsonpath libubox make-ext4fs netifd
odhcp6c odhcpd packagegroups procd rpcd ubox ubus uci uclient
ustream-ssl xtables-addons
meta-openwrt/recipes-extended/:
images libnl-tiny libroxml luci packagegroups ugps usbmode usign
meta-openwrt/recipes-kernel/:
linux
meta-openwrt/recipes-networking/:
ipset relayd uhttpd umbim umdnsd uqmi
meta-openwrt/recipes-support/:
lua lua-socket
meta-openwrt/recipes-tweaks/:
base-files busybox dnsmasq hostapd iptables modutils-initscripts packagegroups udev
Lots of core recipes use source code from OpenWrt projects repositories
each recipe has its own revision from which it retrieves the code, it
should be remembered when the OpenWrt version is updated
looks like some of them still needs a lot of patches e.g. hostapd
$ tree meta-openwrt/classes/
meta-openwrt/classes/
├── openwrt-base-files.bbclass
├── openwrt.bbclass
├── openwrt-distro-defaults.bbclass
├── openwrt-kmods.bbclass
├── openwrt-lua.bbclass
├── openwrt-services.bbclass
└── openwrt-virtual-runtimes.bbclass
Issues review
there are 12 open issues
some of them are open since 2017, some of them are couple
months old
the maintainer is responsive and open to any PR improving the
state of the layer
Raspberry Pi 4 ver. B
SoC: Broadcom BCM2711
RAM: 4GB
WLAN: Cypress CYW43456
Ethernet: 1 Gbit port
Boot log
# logread -f -l 5
Mon May 10 12:42:21 2021 daemon.info urandom_seed[17614]: Seed saved (/etc/urandom.seed)
Mon May 10 12:42:22 2021 daemon.info dnsmasq[16440]: read /etc/hosts - 4 addresses
Mon May 10 12:42:22 2021 daemon.info dnsmasq[16440]: read /tmp/hosts/odhcpd - 1 addresses
Mon May 10 12:42:22 2021 daemon.info dnsmasq[16440]: read /tmp/hosts/dhcp.cfg01411c - 2 addresses
Mon May 10 12:42:22 2021 daemon.info dnsmasq-dhcp[16440]: read /etc/ethers - 0 addresses
$ ifconfig eno1
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.1.105 netmask 255.255.255.0 broadcast 192.168.1.255
inet6 fd1d:bf:8d15:0:85ac:98c6:8e4c:89bd prefixlen 64 scopeid 0x0<global>
inet6 fd1d:bf:8d15:0:6e9c:c0fe:e686:8c28 prefixlen 64 scopeid 0x0<global>
meta-openwrt
poky
meta-raspberrypi
meta-openembedded: meta-oe, meta-python and meta-networking
Used refspecs
poky:
url: https://git.yoctoproject.org/git/poky
refspec: 6a751048e50c00261d99c2d8d69534f7a8da38a9
meta-openembedded:
url: https://git.openembedded.org/meta-openembedded
refspec: f3f7a5f1a4713f145107bb043e0d14cb3a51c62f
meta-openwrt:
url: https://github.com/kraj/meta-openwrt.git
refspec: 6e8159a07ce8991cb6b04e3cb15f82b9eadad1e5
meta-raspberrypi:
url: git://git.yoctoproject.org/meta-raspberrypi
refspec: 3ae135e590e375c8da26b003bda41c18fb977ae1
Boot log
root@(none):/#
# logread -f -l 5
Failed to find log object: Not found
Failed to find log object: Not found
Failed to find log object: Not found
$ ifconfig eno1
eno1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet6 fe80::f0d:a471:f7ae:6289 prefixlen 64 scopeid 0x20<link>
ether 34:17:eb:d7:a5:9f txqueuelen 1000 (Ethernet)
(...)
$ ping 192.168.1.1
ping: connect: Network is unreachable
dnsmasq issue
uhttpd problems
collectd
dropbear
contact@3mdeb.com
facebook.com/3mdeb
@3mdeb_com
linkedin.com/company/3mdeb
https://3mdeb.com
Book a call
Feel free to contact us if you believe we can help you in any way. We are always
open to cooperate and discuss.