Code Monkey home page Code Monkey logo

meta-iot2000's Introduction

IOT2000 Board Support Package

This packages contains the following elements:

  • meta-iot2000-bsp
  • meta-iot2000-example

For updates, please visit https://github.com/siemens/meta-iot2000. We are also accepting issue reports, feature suggestions and patches this way.

meta-iot2000-bsp

Use this Yocto layer to enable all hardware features of the IOT2000 device. It allows to build standard Yocto images which will contain the required kernel, configurations and tools and will emit a bootable SD card image.

meta-iot2000-example

This Yocto layer builds on top of meta-iot2000-bsp, providing an exemplary image with additional tools and services to exploit features of the IOT2000 conveniently.

This layer shall only be considered as a starting point for own developments. It is not configured to provide product-grade maturity and security.

Building an Image

There are two recommended ways to build one of the provided images, may they be original or already customized: natively on a Linux machine or inside a Docker container.

Note: Before starting the build, make sure that your working directory is located on a native Linux file system such as ext4, xfs, btrfs, etc. NTFS is known to not work.

Native Build

On a compatible distribution, install the packages that Yocto 3.1 requires.

Furthermore, install the kas build tool:

$ sudo pip3 install kas

Clone the meta-iot2000 repository (or unpack an archive of it) into a work directory:

$ git clone https://github.com/siemens/meta-iot2000

Now you can build the example image like this:

$ kas build meta-iot2000/kas-example.yml

To build the BSP image instead, just specify the corresponding configuration file instead:

$ kas build meta-iot2000/kas-bsp.yml

You can also reproduce the Windows or Linux SDK this way:

$ kas build meta-iot2000/kas-sdk-windows-i586.yml
$ kas build meta-iot2000/kas-sdk-linux-x64.yml

Docker Build

Make sure Docker is installed and properly configured for your host system. You may have to switch the storage driver away from legacy aufs, see Docker documentation, if kas warns about this.

Again, the first step is cloning of the repository (or unpacking an archive):

$ git clone https://github.com/siemens/meta-iot2000

Next, install the kas-container script like this:

$ wget https://raw.githubusercontent.com/siemens/kas/2.6.2/kas-container
$ chmod a+x kas-container

Now you can generate a desired image. The following assumes that your user has permission to use docker. Usually, this is achieved by adding the user to the docker group (which has security implications). Note that running the build as root does not work.

$ ./kas-container build meta-iot2000/kas-example.yml

The above command disposes the build container after use, keeping downloads and build results in the current work directory.

You may want to use the container interactively:

$ ./kas-container shell meta-iot2000/kas-example.yml

If you are building from within a proxy-restricted network, make sure the settings are available via the standard environment variables (http_proxy etc.).

Booting the Image from SD card

Under Linux, insert an unused SD card. Assuming the SD card takes device /dev/mmcblk0, use dd to copy the image to it. For example:

$ sudo dd if=build/tmp/deploy/images/iot2000/iot2000-example-image-iot2000.wic \
          of=/dev/mmcblk0 bs=4M oflag=sync

The example image starts with the IP 192.168.200.1 preconfigured on the first Ethernet interface. You can use ssh to connect to the system.

The BSP image does not configure the network. If you want to ssh into the system, you can use the root terminal via UART to ifconfig the IP address and use that to ssh in.

NOTE: The root password is empty and must be changed before connecting the system to an untrustworthy network.

Booting the Image from USB stick

Under Linux, insert an unused USB stick. Assuming the USB stick takes device /dev/sda, use dd to copy the image to it. For example:

$ sudo dd if=build/tmp/deploy/images/iot2000/iot2000-example-image-iot2000.wic \
          of=/dev/sda bs=4M oflag=sync

meta-iot2000's People

Contributors

asurazeng avatar baochengsu avatar cmhe avatar debevv avatar fbezdeka avatar heiko-schabert avatar jan-kiszka avatar johnson325 avatar mschend avatar saschaweisenberger avatar stormc avatar xingxinghe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

meta-iot2000's Issues

build example build error - bits/c++config.h: No such file or directory

When bitbaking the meta-iot2000-master image, bitbake reports this error a few times,
when running Task 479 (/home/jancumps/iot2020/poky/meta-nodejs/recipes-devtools/nodejs/nodejs_7.7.3.bb, do_compile) , and then exits

| In file included from ../deps/v8/src/base/logging.h:8:0,
|                  from ../deps/v8/src/base/macros.h:10,
|                  from ../deps/v8/src/base/bits.h:9,
|                  from ../deps/v8/src/base/bits.cc:5:
| /usr/include/c++/5/cstring:41:28: fatal error: bits/c++config.h: No such file or directory
| compilation terminated.
| In file included from ../deps/v8/src/base/logging.h:8:0,
|                  from ../deps/v8/src/base/division-by-constant.cc:9:
| /usr/include/c++/5/cstring:41:28: fatal error: bits/c++config.h: No such file or directory
| compilation terminated.
| In file included from ../deps/v8/src/base/logging.h:8:0,
|                  from ../deps/v8/src/base/macros.h:10,
|                  from ../deps/v8/src/base/cpu.h:16,
|                  from ../deps/v8/src/base/cpu.cc:5:
| /usr/include/c++/5/cstring:41:28: fatal error: bits/c++config.h: No such file or directory
| compilation terminated.
| deps/v8/src/v8_libbase.host.mk:117: recipe for target '/home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/nodejs/7.7.3-r1.1/node-v7.7.3/out/Release/obj.host/v8_libbase/deps/v8/src/base/cpu.o' failed

failed to bitbake iot2000-example-imag depends nodejs but not enabled

I'm trying to build the image iot2000-example-image,
by following https://github.com/siemens/meta-iot2000/tree/master/meta-iot2000-example#sdk-target-architecture and where indicated also https://github.com/siemens/meta-iot2000/blob/master/meta-iot2000-bsp/README.md.

Once i'm bitbaking, I get this error immediately:

jancumps@jancumps-VirtualBox:~/iot2020/iot2000-build$ bitbake iot2000-example-image
ERROR: Layer 'iot2000-example' depends on layer 'nodejs', but this layer is not enabled in your configuration

When I encountered this the first time, I completely removed the folder I made for this exercise so that I could start from scratch, created a new folder and redid everything. I got that same error.

Where should I enable layer 'nodejs'?

Unable to build image: Fetcher failure for URL: 'https://www.example.com/'

I'm unable to build the bsp image.

with or without docker doesn't matter :/

--- Error summary ---
ERROR:  OE-core's config sanity checker detected a potential misconfiguration.
    Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
    Following is the list of potential problems / advisories:

    Fetcher failure for URL: 'https://www.example.com/'. URL https://www.example.com/ doesn't work. Please ensure your network is configured correctly.

Why should the build process resolve example.com?

Add latest version of boost library

Hi,
According to bergmanu in this post is necessary to add a layer that contain the recipe for boost. As far as I can understand the necessary recipe is this and is located in the openembedded-core layer. Cloning this layer and adding it to the bblayers.conf ends in bitbake error.

ERROR: Unable to parse /media/nuno/yocto_build/meta-iot2000/poky/bitbake/lib/bb/data_smart.py
Traceback (most recent call last):
  File "/media/nuno/yocto_build/meta-iot2000/poky/bitbake/lib/bb/data_smart.py", line 400, in DataSmart.expandWithRefs(s="${@os.path.dirname(bb.utils.which(d.getVar('PATH'),'bitbake'))}:${HOSTTOOLS_DIR}", varname='PATH[:=]'):
                 except Exception as exc:
    >                raise ExpansionError(varname, s, exc) from exc
     
bb.data_smart.ExpansionError: Failure expanding variable PATH[:=], expression was ${@os.path.dirname(bb.utils.which(d.getVar('PATH'),'bitbake'))}:${HOSTTOOLS_DIR} which triggered exception TypeError: getVar() missing 1 required positional argument: 'expand'

How can I add the 1.66 boost version to the image/build ?
Is there any tool to, using a GUI, select the desired recipes to be included in the build?

Thank you,
Nuno

Analog Read doesn't work with meta-iot2000 default configuration

gpio and pwm work properly but ADC chip driver is not initialized successfully.
I have tested it with Intel's mraa examples on Analog read and with the method described on http://www.malinov.com/Home/sergey-s-blog/intelgalileo-programminggpiofromlinux

echo -n "37" > /sys/class/gpio/export
echo -n "out" > /sys/class/gpio/gpio37/direction
echo -n "0" > /sys/class/gpio/gpio37/value
but still,
there is no "/sys/bus/iio/devices/iio:device0"

Add setup automation

We will soon release a tool that allows to describe the bitbake setup, all dependencies of the build and further configuration aspects in a single file. Once it's publicly available, meta-iot2000 should adopt support for it.

DHCP problem

Hi, seems like DHCP is not working if a 3G mPCIe target is enabled, any idea of how to fix this issue?

Yocto Version

Any reason behind this layer not supporting the pyro yocto version?

Question - MPCIE

Hi, I'm trying to use a Telit HE910-G.
It's just a 3g mPCIe.

I was expecting to be "plug and play" but seems like the SO is not generating an ethernet adapter,

I'm missing something?

Image size parameters don't work

Hello,
I have tried IMAGE_ROOTFS_SIZE and IMAGE_ROOTFS_EXTRA_SPACE variables in local.conf but the wic image size didn't change. Other images are resized as expected.

When trying to bitbake , meta-intel/conf/layer.conf not found

I'm using the instructions in the readme for building meta-iot2000
https://github.com/siemens/meta-iot2000/tree/master/meta-iot2000-bsp

prereqs installed, Prepare, Download, enter build steps all work.
Config done. both conf scripts adapted as indicated.

When bitbaking, I get the next error immediately:

ERROR: Unable to parse /home/build/poky/meta-intel/conf/layer.conf: [Errno 2] file /home/build/poky/meta-intel/conf/layer.conf not found

It seems to think that my build folder is /home/build/ , although I initiated everything from /home/jancumps/iot2020/ .

jancumps@jancumps-VirtualBox:~/iot2020/iot2000-build$ bitbake core-image-minimalERROR: Traceback (most recent call last):
  File "/home/jancumps/iot2020/poky/bitbake/lib/bb/cookerdata.py", line 179, in wrapped
    return func(fn, *args)
  File "/home/jancumps/iot2020/poky/bitbake/lib/bb/cookerdata.py", line 203, in parse_config_file
    return bb.parse.handle(fn, data, include)
  File "/home/jancumps/iot2020/poky/bitbake/lib/bb/parse/__init__.py", line 113, in handle
    return h['handle'](fn, data, include)
  File "/home/jancumps/iot2020/poky/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 124, in handle
    abs_fn = resolve_file(fn, data)
  File "/home/jancumps/iot2020/poky/bitbake/lib/bb/parse/__init__.py", line 136, in resolve_file
    raise IOError(errno.ENOENT, "file %s not found" % fn)
IOError: [Errno 2] file /home/build/poky/meta-intel/conf/layer.conf not found

ERROR: Unable to parse /home/build/poky/meta-intel/conf/layer.conf: [Errno 2] file /home/build/poky/meta-intel/conf/layer.conf not found

Default root password is not empty

Hi,
just start playing with the IOT2040. Firstly, I flashed an SD card with the prebuilt example-v2.2.0.wic found online. Then, I git-cloned this repo and build my own image and added the meta-qt5 framework. The problem is that the output image, built with kas, has a non-empty root password. Why? Which password is it? How can I change it?
My actual workaround was removing the root password from the /etc/shadow file

Building the image on Fedora 25 fails due to missing acpica-native

Hi!

I'm trying to build the image on a Fedora 25 system.
The build fails with the following error message:

$ bitbake core-image-minimal
WARNING: Host distribution "Fedora-25" has not been validated with this version of the build system; you may possibly experience unexpected failures. It is recommended that you use a tested distribution.
Loading cache: 100% |###################################################################################################| Time: 0:00:00
Loaded 1343 entries from dependency cache.
Parsing recipes: 100% |#################################################################################################| Time: 0:00:00
Parsing of 888 .bb files complete (886 cached, 2 parsed). 1344 targets, 56 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
ERROR: Nothing PROVIDES 'acpica-native' (but /home/build/poky/meta-iot2000/meta-iot2000-bsp/recipes-bsp/acpi-upgrades/acpi-upgrades.bb DEPENDS on or otherwise requires it). Close matches:
  cpio-native
  byacc-native
  asciidoc-native
ERROR: Required build target 'core-image-minimal' has no buildable providers.
Missing or unbuildable dependency chain was: ['core-image-minimal', 'core-image-minimal-initramfs', 'acpi-upgrades', 'acpica-native']

acpica-native is required by meta-iot2000/meta-iot2000-bsp/recipes-bsp/acpi-upgrades/acpi-upgrades.bb

Who should provide acpica-native?
Is there something missing on my build system?

BSP-Patch failed

I'm trying to build the example image for the iot2000.
I used the morty-branch and followed the steps, described in the README file.
During the Build by bitbake, i get the following Error:

ERROR: linux-yocto-4.8.17+gitAUTOINC+bb6984f46b_9bcb4ea3fa-r0 do_patch: Function failed: do_patch (log file is located at /home/super/Dokumente/poky-morty-16.0.1/build/tmp/work/i586-nlp-32-intel-common-poky-linux/linux-yocto/4.8.17+gitAUTOINC+bb6984f46b_9bcb4ea3fa-r0/temp/log.do_patch.5552)
ERROR: Logfile of failure stored in: /home/super/Dokumente/poky-morty-16.0.1/build/tmp/work/i586-nlp-32-intel-common-poky-linux/linux-yocto/4.8.17+gitAUTOINC+bb6984f46b_9bcb4ea3fa-r0/temp/log.do_patch.5552

ERROR: Task (/home/super/Dokumente/poky-morty-16.0.1/meta/recipes-kernel/linux/linux-yocto_4.8.bb:do_patch) failed with exit code '1'

Any ideas how i can fix this?

Logfile:
DEBUG: Executing shell function do_patch
(1/18) 0001-stmmac-adding-support-for-platform-IOT2000.patch
(2/18) 0002-serial-uapi-Add-support-for-bus-termination.patch
(3/18) 0003-serial-8250_pci-Use-symbolic-constants-for-EXAR-s-MP.patch
(4/18) 0004-serial-8250_pci-Fix-EXAR-feature-control-register-co.patch
(5/18) 0005-serial-8250_pci-Add-support-for-IOT2000-platform.patch
[INFO]: check of .kernel-meta//patches//./0005-serial-8250_pci-Add-support-for-IOT2000-platform.patch with "git am" did not pass, trying reduced context.
(6/18) 0006-serial-8250_pci-Add-support-for-red-user-LED-on-IOT2.patch
[INFO]: check of .kernel-meta//patches//./0006-serial-8250_pci-Add-support-for-red-user-LED-on-IOT2.patch with "git am" did not pass, trying reduced context.
(7/18) 0007-efi-Move-efi_status_to_err-to-drivers-firmware-efi.patch
[INFO]: check of .kernel-meta//patches//./0007-efi-Move-efi_status_to_err-to-drivers-firmware-efi.patch with "git am" did not pass, trying reduced context.
[INFO]: Context reduced git-am of .kernel-meta//patches//./0007-efi-Move-efi_status_to_err-to-drivers-firmware-efi.patch with "git am" did not work, trying "apply".
error: patch failed: drivers/firmware/efi/vars.c:318
error: drivers/firmware/efi/vars.c: patch does not apply
Context reduced to (1/1) to apply fragment at 1001
[ERROR]: Application of .kernel-meta//patches//./0007-efi-Move-efi_status_to_err-to-drivers-firmware-efi.patch failed.
Patch needs to be refreshed. Sample resolution script:
.git/rebase-apply/resolve_rejects
WARNING: exit code 1 from a shell command.
ERROR: Function failed: do_patch (log file is located at /home/super/Dokumente/poky-morty-16.0.1/build/tmp/work/i586-nlp-32-intel-common-poky-linux/linux-yocto/4.8.17+gitAUTOINC+bb6984f46b_9bcb4ea3fa-r0/temp/log.do_patch.5552)

My Building Configurations:
Build Configuration:
BB_VERSION = "1.32.0"
BUILD_SYS = "x86_64-linux"
NATIVELSBSTRING = "universal"
TARGET_SYS = "i586-poky-linux"
MACHINE = "iot2000"
DISTRO = "poky"
DISTRO_VERSION = "2.2.1"
TUNE_FEATURES = "m32 i586-nlp"
TARGET_FPU = ""
meta
meta-poky
meta-yocto-bsp = ":"
meta-oe = "HEAD:1efa5d623bc64659b57389e50be2568b1355d5f7"
meta-intel = "morty:6add41510412ca196efb3e4f949d403a8b6f35d7"
meta-java = "HEAD:a265b31ec7d022be254abdf959360a7624208585"
meta-intel-iot-middleware = "HEAD:fc8eabfa4fb54802d3f97123b9d2954450175e33"
meta-iot2000-bsp
meta-iot2000-example = ":"

kas build doesn't finish doing a task

Hello,

I'm trying to create an image for the sd following the page https://github.com/siemens/meta-iot2000. For that, I'm using Debian operative system in a virtual machine. When I do
kas build meta-iot2000-example/kas.yml,
it start to do the tasks correctly, but it stays frozen in a task for many hours. This information appears in the task:
INFO - NOTE: Running task 123 of 4302 (/root/meta-iot2000/poky/meta/recipes-devtools/binutils/binutils-cross_2.29.1.bb:do_compile)
INFO - NOTE: recipe binutils-cross-i586-2.29.1-r0: task do_compile: Started

I have used two different virtual machines (one with Debian 8 and the other with Debian 9) and in both machines it has been frozen in the same task. What is this about?

Thanks,

failed to bitbake iot2000-example-image: compile error in task 407 MRAA

'm trying to build the image iot2000-example-image,
by following https://github.com/siemens/meta-iot2000/tree/master/meta-iot2000-example#sdk-target-architecture and where indicated also https://github.com/siemens/meta-iot2000/blob/master/meta-iot2000-bsp/README.md.

Once i'm bitbaking, I get this error when the MRAA libs get built:
ERROR: Task 407 (/home/jancumps/iot2020/poky/meta-intel-iot-middleware/recipes-devtools/mraa/mraa_0.10.1.bb, do_compile) failed with exit code '1'

mraajsJAVASCRIPT_wrap.cxx:964:27: error: 'WeakCallbackData' in namespace 'v8' does not name a template type

A number of errors occur with similar v8 namespace references. This is the first one:

>  [ 62%] Built target mraa-i2c
> | make -f examples/CMakeFiles/spi_max7219.dir/build.make examples/CMakeFiles/spi_max7219.dir/depend
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:964:27: error: 'WeakCallbackData' in namespace 'v8' does not name a template type
> |    void (*dtor) (const v8::WeakCallbackData<v8::Object, SWIGV8_Proxy> &data);
> |                            ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:964:43: error: expected ',' or '...' before '<' token
> |    void (*dtor) (const v8::WeakCallbackData<v8::Object, SWIGV8_Proxy> &data);
> |                                            ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1012:53: error: 'WeakCallbackData' in namespace 'v8' does not name a template type
> |  SWIGRUNTIME void SWIGV8_Proxy_DefaultDtor(const v8::WeakCallbackData<v8::Object, SWIGV8_Proxy> &data) {
> |                                                      ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1012:69: error: expected ',' or '...' before '<' token
> |  SWIGRUNTIME void SWIGV8_Proxy_DefaultDtor(const v8::WeakCallbackData<v8::Object, SWIGV8_Proxy> &data) {
> |                                                                      ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx: In function 'void SWIGV8_Proxy_DefaultDtor(int)':
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1013:25: error: 'data' was not declared in this scope
> |    SWIGV8_Proxy *proxy = data.GetParameter();
> |                          ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx: In function 'void SWIGV8_SetPrivateData(v8::Handle<v8::Object>, void*, swig_type_info*, int)':
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1084:78: error: no matching function for call to 'v8::Persistent<v8::Object>::SetWeak(SWIGV8_Proxy*&, void (*&)(int))'
> |      cdata->handle.SetWeak(cdata, ((SWIGV8_ClientData*)info->clientdata)->dtor);
> |                                                                               ^
> | In file included from /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/node.h:42:0,
> |                  from /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:169:
> | /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/v8.h:557:18: note: candidate: template<class P> void v8::PersistentBase<T>::SetWeak(P*, typename v8::WeakCallbackInfo<P>::Callback, v8::WeakCallbackType) [with P = P; T = v8::Object]
> |    V8_INLINE void SetWeak(P* parameter,
> |                   ^
> | /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/v8.h:557:18: note:   template argument deduction/substitution failed:
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1084:78: note:   candidate expects 3 arguments, 2 provided
> |      cdata->handle.SetWeak(cdata, ((SWIGV8_ClientData*)info->clientdata)->dtor);
> |                                                                               ^
> | In file included from /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/node.h:42:0,
> |                  from /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:169:
> | /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/v8.h:568:18: note: candidate: void v8::PersistentBase<T>::SetWeak() [with T = v8::Object]
> |    V8_INLINE void SetWeak();
> |                   ^
> | /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/v8.h:568:18: note:   candidate expects 0 arguments, 2 provided
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1086:58: error: no matching function for call to 'v8::Persistent<v8::Object>::SetWeak(SWIGV8_Proxy*&, void (&)(int))'
> |      cdata->handle.SetWeak(cdata, SWIGV8_Proxy_DefaultDtor);
> |                                                           ^
> | In file included from /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/node.h:42:0,
> |                  from /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:169:
> | /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/v8.h:557:18: note: candidate: template<class P> void v8::PersistentBase<T>::SetWeak(P*, typename v8::WeakCallbackInfo<P>::Callback, v8::WeakCallbackType) [with P = P; T = v8::Object]
> |    V8_INLINE void SetWeak(P* parameter,
> |                   ^
> | /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/v8.h:557:18: note:   template argument deduction/substitution failed:
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1086:58: note:   candidate expects 3 arguments, 2 provided
> |      cdata->handle.SetWeak(cdata, SWIGV8_Proxy_DefaultDtor);
> |                                                           ^
> | In file included from /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/node.h:42:0,
> |                  from /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:169:
> | /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/v8.h:568:18: note: candidate: void v8::PersistentBase<T>::SetWeak() [with T = v8::Object]
> |    V8_INLINE void SetWeak();
> |                   ^
> | /home/jancumps/iot2020/iot2000-build/tmp/sysroots/iot2000/usr/include/node/v8.h:568:18: note:   candidate expects 0 arguments, 2 provided
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx: In function 'int SwigV8Packed_Check(v8::Handle<v8::Value>)':
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1240:40: error: 'class v8::Object' has no member named 'GetHiddenValue'
> |    v8::Handle<v8::Value> flag = objRef->GetHiddenValue(SWIGV8_STRING_NEW("__swig__packed_data__"));
> |                                         ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx: At global scope:
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1290:58: error: 'WeakCallbackData' in namespace 'v8' does not name a template type
> |  SWIGRUNTIME void _wrap_SwigV8PackedData_delete(const v8::WeakCallbackData<v8::Object, SwigV8PackedData> &data) {
> |                                                           ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1290:74: error: expected ',' or '...' before '<' token
> |  SWIGRUNTIME void _wrap_SwigV8PackedData_delete(const v8::WeakCallbackData<v8::Object, SwigV8PackedData> &data) {
> |                                                                           ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx: In function 'void _wrap_SwigV8PackedData_delete(int)':
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1291:34: error: 'data' was not declared in this scope
> |    v8::Local<v8::Object> object = data.GetValue();
> |                                   ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx: In function 'v8::Handle<v8::Value> SWIGV8_NewPackedObj(void*, size_t, swig_type_info*)':
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1320:8: error: 'class v8::Object' has no member named 'SetHiddenValue'
> |    obj->SetHiddenValue(SWIGV8_STRING_NEW("__swig__packed_data__"), SWIGV8_BOOLEAN_NEW(true));
> |         ^
> | /home/jancumps/iot2020/iot2000-build/tmp/work/i586-nlp-32-poky-linux/mraa/1.5.1-r0/build/src/javascript/mraajsJAVASCRIPT_wrap.cxx:1344:61: error: no matching function for call to 'v8::Persistent<v8::Object>::SetWeak(SwigV8PackedData*&, void (&)(int))'
> |    cdata->handle.SetWeak(cdata, _wrap_SwigV8PackedData_delete);
> 

|

iot2000setup does not remove node-red / mosquitto from autostart

If node-red was selected in autostart, deselecting it does not remove it from autostart, it will still start at the next reboot.
it is missing a parameter in the function to do that:

  • you have to add the option -f to update-rc.d (line 425), do not forget to let a space between f and the double quote :
    elif (status == "off"):
    subprocess.call("update-rc.d -f " + fileName + " remove", shell=True, stdout=open(os.devnull, 'wb'))
    os.remove("/etc/init.d/" + fileName)
    The option is there for the removal of SSH at startup , but not there for node-red and mosquitto which share the same lines of code.

Please use a locale setting which supports utf-8.

When building bsp using "kas build meta-iot2000-bsp/kas.yml", below error showed up:

2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-iot2000-bsp$ /usr/bin/git rev-parse --show-toplevel
2017-10-13 23:54:38 - INFO - Using /home/iot/iot2000-github/meta-iot2000 as root for repository meta-iot2000
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-intel$ /usr/bin/git cat-file -t 6add41510412ca196efb3e4f949d403a8b6f35d7
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/poky$ /usr/bin/git cat-file -t 7d5822bf4cb2089687c3c9a908cf4a4ef4e9a53a
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-openembedded$ /usr/bin/git cat-file -t fe5c83312de11e80b85680ef237f8acb04b4b26e
2017-10-13 23:54:38 - INFO - Repository meta-intel already contains 6add41510412ca196efb3e4f949d403a8b6f35d7 as commit
2017-10-13 23:54:38 - INFO - Repository poky already contains 7d5822bf4cb2089687c3c9a908cf4a4ef4e9a53a as commit
2017-10-13 23:54:38 - INFO - Repository meta-openembedded already contains fe5c83312de11e80b85680ef237f8acb04b4b26e as commit
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-iot2000-bsp$ /usr/bin/git rev-parse --show-toplevel
2017-10-13 23:54:38 - INFO - Using /home/iot/iot2000-github/meta-iot2000 as root for repository meta-iot2000
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-intel$ /usr/bin/git diff --shortstat
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-intel$ /usr/bin/git rev-parse --verify HEAD
2017-10-13 23:54:38 - INFO - 6add41510412ca196efb3e4f949d403a8b6f35d7
2017-10-13 23:54:38 - INFO - Repo meta-intel has already checkout out correct refspec. nothing to do
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/poky$ /usr/bin/git diff --shortstat
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/poky$ /usr/bin/git rev-parse --verify HEAD
2017-10-13 23:54:38 - INFO - 7d5822bf4cb2089687c3c9a908cf4a4ef4e9a53a
2017-10-13 23:54:38 - INFO - Repo poky has already checkout out correct refspec. nothing to do
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-openembedded$ /usr/bin/git diff --shortstat
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-openembedded$ /usr/bin/git rev-parse --verify HEAD
2017-10-13 23:54:38 - INFO - fe5c83312de11e80b85680ef237f8acb04b4b26e
2017-10-13 23:54:38 - INFO - Repo meta-openembedded has already checkout out correct refspec. nothing to do
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-iot2000-bsp$ /usr/bin/git rev-parse --show-toplevel
2017-10-13 23:54:38 - INFO - Using /home/iot/iot2000-github/meta-iot2000 as root for repository meta-iot2000
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/poky$ /tmp/tmp78md2pru /home/iot/iot2000-github/meta-iot2000/build
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/meta-iot2000-bsp$ /usr/bin/git rev-parse --show-toplevel
2017-10-13 23:54:38 - INFO - Using /home/iot/iot2000-github/meta-iot2000 as root for repository meta-iot2000
2017-10-13 23:54:38 - INFO - /home/iot/iot2000-github/meta-iot2000/build$ /home/iot/iot2000-github/meta-iot2000/poky/bitbake/bin/bitbake -k core-image-minimal -c build
2017-10-13 23:54:39 - ERROR - Please use a locale setting which supports utf-8.
2017-10-13 23:54:39 - ERROR - Python can't change the filesystem locale after loading so we need a utf-8 when python starts or things won't work.
2017-10-13 23:54:39 - ERROR - Command "/home/iot/iot2000-github/meta-iot2000/build$ /home/iot/iot2000-github/meta-iot2000/poky/bitbake/bin/bitbake -k core-image-minimal -c build" failed
--- Error summary ---
Please use a locale setting which supports utf-8.
Python can't change the filesystem locale after loading so we need a utf-8 when python starts or things won't work.

The output of command "printenv":

iot@XXXXXXXXX:~/iot2000-github/meta-iot2000$ printenv
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:.tar=01;31:.tgz=01;31:.arc=01;31:.arj=01;31:.taz=01;31:.lha=01;31:.lz4=01;31:.lzh=01;31:.lzma=01;31:.tlz=01;31:.txz=01;31:.tzo=01;31:.t7z=01;31:.zip=01;31:.z=01;31:.Z=01;31:.dz=01;31:.gz=01;31:.lrz=01;31:.lz=01;31:.lzo=01;31:.xz=01;31:.zst=01;31:.tzst=01;31:.bz2=01;31:.bz=01;31:.tbz=01;31:.tbz2=01;31:.tz=01;31:.deb=01;31:.rpm=01;31:.jar=01;31:.war=01;31:.ear=01;31:.sar=01;31:.rar=01;31:.alz=01;31:.ace=01;31:.zoo=01;31:.cpio=01;31:.7z=01;31:.rz=01;31:.cab=01;31:.jpg=01;35:.jpeg=01;35:.mjpg=01;35:.mjpeg=01;35:.gif=01;35:.bmp=01;35:.pbm=01;35:.pgm=01;35:.ppm=01;35:.tga=01;35:.xbm=01;35:.xpm=01;35:.tif=01;35:.tiff=01;35:.png=01;35:.svg=01;35:.svgz=01;35:.mng=01;35:.pcx=01;35:.mov=01;35:.mpg=01;35:.mpeg=01;35:.m2v=01;35:.mkv=01;35:.webm=01;35:.ogm=01;35:.mp4=01;35:.m4v=01;35:.mp4v=01;35:.vob=01;35:.qt=01;35:.nuv=01;35:.wmv=01;35:.asf=01;35:.rm=01;35:.rmvb=01;35:.flc=01;35:.avi=01;35:.fli=01;35:.flv=01;35:.gl=01;35:.dl=01;35:.xcf=01;35:.xwd=01;35:.yuv=01;35:.cgm=01;35:.emf=01;35:.ogv=01;35:.ogx=01;35:.aac=00;36:.au=00;36:.flac=00;36:.m4a=00;36:.mid=00;36:.midi=00;36:.mka=00;36:.mp3=00;36:.mpc=00;36:.ogg=00;36:.ra=00;36:.wav=00;36:.oga=00;36:.opus=00;36:.spx=00;36:.xspf=00;36:
HTTP_PROXY=http://192.168.100.100:1080/
LANG=en_HK.UTF-8
GDM_LANG=en_HK.utf8
DISPLAY=:0
GTK_OVERLAY_SCROLLING=0
COLORTERM=truecolor
XDG_VTNR=7
SSH_AUTH_SOCK=/run/user/1000/keyring/ssh
XDG_SESSION_ID=14
XDG_GREETER_DATA_DIR=/var/lib/lightdm/data/iot
USER=iot
DESKTOP_SESSION=lightdm-xsession
QT_QPA_PLATFORMTHEME=gtk2
PWD=/home/iot/iot2000-github/meta-iot2000
HOME=/home/iot
SSH_AGENT_PID=3957
QT_ACCESSIBILITY=1
XDG_SESSION_TYPE=x11
XDG_DATA_DIRS=/usr/share/gnome:/usr/local/share/:/usr/share/
http_proxy=http://192.168.100.100:1080/
XDG_SESSION_DESKTOP=lightdm-xsession
no_proxy=localhost,127.0.0.0/8,::1
GTK_MODULES=gail:atk-bridge
NO_PROXY=localhost,127.0.0.0/8,::1
TERM=xterm-256color
SHELL=/bin/bash
VTE_VERSION=4601
XDG_SEAT_PATH=/org/freedesktop/DisplayManager/Seat0
XDG_CURRENT_DESKTOP=X-Cinnamon
GPG_AGENT_INFO=/run/user/1000/gnupg/S.gpg-agent:0:1
QT_LINUX_ACCESSIBILITY_ALWAYS_ON=1
SHLVL=1
XDG_SEAT=seat0
LANGUAGE=en_HK:en
WINDOWID=37748742
GDMSESSION=lightdm-xsession
GNOME_DESKTOP_SESSION_ID=this-is-deprecated
LOGNAME=iot
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus
XDG_RUNTIME_DIR=/run/user/1000
XAUTHORITY=/home/iot/.Xauthority
XDG_SESSION_PATH=/org/freedesktop/DisplayManager/Session5
PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games
SESSION_MANAGER=local/IotBuildMachine:@/tmp/.ICE-unix/3929,unix/IotBuildMachine:/tmp/.ICE-unix/3929
_=/usr/bin/printenv
OLDPWD=/home/iot/iot2000-github/meta-iot2000/meta-iot2000-bsp

ERROR: linux-libc-headers-4.4-r0 do_fetch: Fetcher failure

Seems like it fails when it try to fetch git://git.kernel.org/pub/scm/linux/kernel/git/bwh/linux-cip;protocol=https

Attach of log of the kas command
build.log

ERROR: linux-libc-headers-4.4-r0 do_fetch: Fetcher failure: Fetch command export SSH_AUTH_SOCK="/run/user/1000/keyring/ssh"; export PATH="/home/deinok/meta-iot2000/build/tmp/sysroots-uninative/x86_64-linux/usr/bin:/home/deinok/meta-iot2000/poky/scripts:/home/deinok/meta-iot2000/build/tmp/sysroots/x86_64-linux/usr/bin/i586-poky-linux:/home/deinok/meta-iot2000/build/tmp/sysroots/iot2000/usr/bin/crossscripts:/home/deinok/meta-iot2000/build/tmp/sysroots/x86_64-linux/usr/sbin:/home/deinok/meta-iot2000/build/tmp/sysroots/x86_64-linux/usr/bin:/home/deinok/meta-iot2000/build/tmp/sysroots/x86_64-linux/sbin:/home/deinok/meta-iot2000/build/tmp/sysroots/x86_64-linux/bin:/home/deinok/meta-iot2000/poky/scripts:/home/deinok/meta-iot2000/poky/bitbake/bin:/usr/sbin:/usr/bin:/sbin:/bin"; export HOME="/tmp/tmp522xqn_p"; LANG=C git -c core.fsyncobjectfiles=0 clone --bare --mirror https://git.kernel.org/pub/scm/linux/kernel/git/bwh/linux-cip /home/deinok/meta-iot2000/build/downloads/git2/git.kernel.org.pub.scm.linux.kernel.git.bwh.linux-cip --progress failed with exit code 128, output:
Cloning into bare repository '/home/deinok/meta-iot2000/build/downloads/git2/git.kernel.org.pub.scm.linux.kernel.git.bwh.linux-cip'...

Example image build fails with nodejs

Hi, I'm trying to build the example image but keep getting this error:

ERROR: nodejs-native-6.10.2-r1.8 do_configure: Function failed: do_configure (log file is located at /home/santiago/iot2000-build/tmp/work/x86_64-linux/nodejs-native/6.10.2-r1.8/temp/log.do_configure.24361)
ERROR: Logfile of failure stored in: /home/santiago/iot2000-build/tmp/work/x86_64-linux/nodejs-native/6.10.2-r1.8/temp/log.do_configure.24361
Log data follows:
| DEBUG: Executing python function sysroot_cleansstate
| DEBUG: Python function sysroot_cleansstate finished
| DEBUG: Executing shell function do_configure
| /home/santiago/iot2000-build/tmp/work/x86_64-linux/nodejs-native/6.10.2-r1.8/temp/run.do_configure.24361: 108: /home/santiago/iot2000-build/tmp/work/x86_64-linux/nodejs-native/6.10.2-r1.8/temp/run.do_configure.24361: ./configure: Permission denied
| WARNING: exit code 126 from a shell command.
| ERROR: Function failed: do_configure (log file is located at /home/santiago/iot2000-build/tmp/work/x86_64-linux/nodejs-native/6.10.2-r1.8/temp/log.do_configure.24361)
ERROR: Task (virtual:native:/home/santiago/poky/meta-nodejs/recipes-devtools/nodejs/nodejs_6.10.2.bb:do_configure) failed with exit code '1'
NOTE: Tasks Summary: Attempted 803 tasks of which 0 didn't need to be rerun and 1 failed.

Summary: 1 task failed:
virtual:native:/home/santiago/poky/meta-nodejs/recipes-devtools/nodejs/nodejs_6.10.2.bb:do_configure
Summary: There were 3 WARNING messages shown.
Summary: There was 1 ERROR message shown, returning a non-zero exit code.

Any comment on where the error could be would be appreciated.

mraa and upm no longer in intel-iot-middleware

I just tried to build my own version for the IOT2000 roughly following this description (not official, I know). During this, I got into some version incompabatilities and found the following: The newest commits of intel-iot-middleware deleted mraa and upm in favour of them being included in openembedded (source). This caused some "no recipts available for [...]" errors.
Because of this it is necessary to use an older commit of intel-iot-middleware for everything to work (I used commit 821cf14c8304).

I don't know if this is the right place to state this, I just wanted to prevent others to make the same mistake I made :)

bitbake fails on Ubuntu 17.04

I just tried to build the meta-iot2000-bsp image on Ubuntu 17.04, exactly like specified in the README, and it fails with this error message:

error

I also wanted to add that all of the tested distros listed on the README page are out of date, except OpenSuse 42.2, which will go out of date in less than a week. I'll test it with Debian 9 now, hopefully that will work.

"Illegal instruction" when running docker

Starting from meta-iot2000-bsp, I added the docker recipe from the meta-virtualization layer, but every docker-related executable fails with "Illegal instruction".
I learned that this should work after this commit, so am I missing something?
By inspecting build/tmp the go-cross version used is 1.6 and looks like the patches are being picked up

Error creating Example IOT2000 image

Hi,

I'm trying to build a Yocto image based in this repository.
I have followed the README instructions without any success (with and without docker).
I always find the following error:
2018-01-26 20:47:11 - INFO - NOTE: Running task 1790 of 3415 (/shared-volume/poky/meta/recipes-devtools/gcc/gcc-runtime_6.2.bb:do_compile)
2018-01-26 20:47:11 - INFO - NOTE: recipe gcc-runtime-6.2.0-r0: task do_compile: Started
2018-01-26 20:54:52 - ERROR - ERROR: gcc-runtime-6.2.0-r0 do_compile: oe_runmake failed
2018-01-26 20:54:52 - ERROR - ERROR: gcc-runtime-6.2.0-r0 do_compile: Function failed: do_compile (log file is located at /shared-volume/build/tmp/work/i586-nlp-32-poky-linux/gcc-runtime/6.2.0-r0/temp/log.do_compile.10059

Log file: log.do_compile.10059.txt
How can i correct this issue?

Thank you,
Nuno

Integrate in-field image update support

The bits and pieces for a software update mechanism for IOT2000 devices is work in progress. It would be useful to integrate this feature in form of a reference implementation into meta-iot2000 once the missing pieces are done and published.

Oracle JDK / JRE

As the title suggests, I cannot find anywhere how to install oracle java onto the IOT 2040, it would be nice if the image had it already included or to select what version.

Regards,
Frank.

Yocto version branches

Hi guys,
are you planning on creating branches named the same as the yocto versions?
So for example, having a rocko branch that works with Yocto Rocko release.
And similarly, having a sumo branch that works with the Yocto Sumo release.

This is how all the Yocto compatible layers do it. Would be awesome if meta-iot2000 had this also.

Thank you

Switch to CIP kernel

Once upstream kernel support is completed, build up a backport queue for 4.4-cip (https://git.kernel.org/pub/scm/linux/kernel/git/bwh/linux-cip.git) and drop the Yocto kernel.

We may need to carry some additional patches until mraa and specifically the Arduino runtime has been extended to support upstream Linux. Patches for mraa are work in progress (https://git.kernel.org/pub/scm/linux/kernel/git/bwh/linux-cip.git/), corelibs-galileo (https://github.com/01org/corelibs-galileo) and its toolchain is more complex.

integrating meta-python layer and library dependencies

Some python packages need "meta-python" layer to be included in the base image (e.g.: python-lxml). It would be grateful to have this layer in the example image, not only because of this package, but also because of many other python functionalities. In the same way, I think there are some useful packages to include in the base image, such as: libxml2, libxslt, zlib, python3-pip, python3-setuptools, python3-modules...

Build environment

Hello, i'm trying to build the latest example-image from the repo master (i already did it successfully in the past), and i'm having some issue with task do_image_ext4 (getting error "mkfs.ext4: No data available while populating file system"). I have already google for that error but have found no answer about it, before spending several days after it i would try to start with a clean build environment (i played quite bit with it).

What Linux distro and version are you using to build the image? Poky is complaining with a warning that Ubuntu 16.04 is not a validated version, as long as everithing works i just ignore it, but from past experience i know that it might cause problems hard to track down.

Thanks in advance.

Move to SystemD

Due the fact that the SO of IOT seems to lack some common commands from Linux, I would like to suggest move to SystemD init system.

I know that SystemD have a bit of bad reputation for Linux purists, but this will really help IOT be more near to an expected Linux Board

meta-intel-iot-middleware This layer is no longer maintained

meta-iot2000/meta-iot2000-example/kas.yml
meta-intel-iot-middleware

This layer is no longer maintained - the useful recipes that used to be here have now been moved out to other layers (meta-oe, meta-python, meta-networking etc.)

So I dont need it anymore?

Websever using Apache, SQL and PHP

Hi everyone,

since I had some hard time creating an image for IOT2000 using apache, SQL and PHP, I wanted to share my solution with others to save them some time. I am not sure if this is the right place to do so. If there is a better place, I would appreciate if you would transfer the information to there.

As a base, a used the example layer of this thread: Link

Add the following to meta-iot2000-example/kas.yml:

meta-openembedded:
	layers:
		meta-webserver:
		meta-oe:
		meta-networking:
		meta-python:

Create a the new file (if not existing) meta-iot2000-example/receipes-code/images/iot2000-example-image.bbappend and add the following content:

DEPENDS= "apache2 uclibc"
RDEPENDS_${PN} = "apache2 uclibc"
PACKAGECONFIG_append += " mysql apache2 ${@bb.utils.contains('DISTRO_FEATURES', 'pam, 'pam', '', d)}"
 
IMAGE_INSTALL_append += " phpmyadmin"
IMAGE_INSTALL_append += " proftpd"
IMAGE_INSTALL_append += " apache2"
IMAGE_INSTALL_append += " mysql5"	
IMAGE_INSTALL_append += " php"
IMAGE_INSTALL_append += " php-cli"
IMAGE_INSTALL_append += " php-modphp"

Add the following to meta-iot2000-example/conf/layer.conf:

PACKAGECONFIG_append_pn-php= " apache2"
PACKAGECONFIG_append_pn-php = " uclib"

Make sure to not forget the spaces between " and the beginning of the package name.

Compile everything with kas build meta-iot2000-example/kas.yml and write the resulting .wic file to the IOT2000.

To make apache and php work together, add the following lines to /etc/apache2/httpd.conf on the IOT2000:

LoadModule php5_module lib/apache2/modules/libphp5.so

<FilesMatch \.php$>
	SetHandler application/x-httpd-php
</FilesMatch>

Then you can restart apache using /etc/init.d/apache2 restart

I hope this helps somebody!

iot2000setup Excute Error

ImportError: No module named snack

root@iot2000:~# iot2000setup
Traceback (most recent call last):
File "/usr/bin/iot2000setup", line 4, in
from snack import *
ImportError: No module named snack

root@iot2000:/etc# cat image-release
IMAGE_RELEASE="V2.1.3"
root@iot2000:/etc# uname -a
Linux iot2000 4.4.60-yocto-standard #1 PREEMPT Sat Jun 17 00:49:42 CST 2017 i586 i586 i386 GNU/Linux

mraa i2c read IOError Connection timed out

Hello,

I wanted to read 45 Bytes from a I²C device. When I do so I get the following error:

ssh [email protected]
root@iot2000:~# i2cdetect -y -r 0
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- 1d -- -- 
20: -- -- -- -- -- UU UU UU 28 -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- -- 
50: -- -- -- -- 54 55 56 57 -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: 70 -- -- -- -- -- -- --                         
root@iot2000:~# cd gits/test_python_bno055/      
root@iot2000:~/gits/test_python_bno055# python publish_imu_roslibpy.py 
Traceback (most recent call last):
  File "publish_imu_roslibpy.py", line 82, in <module>
    ros_client.on_ready(publish_imu_data(publisher))
  File "publish_imu_roslibpy.py", line 56, in publish_imu_data
    buf = bno.readBytes(bno055.BNO055.BNO055_ACCEL_DATA_X_LSB_ADDR, 45)
  File "/home/root/gits/test_python_bno055/bno055.py", line 313, in readBytes
    return self._i2c.readBytesReg(register, numBytes)
  File "/usr/lib/python2.7/site-packages/mraa.py", line 1198, in readBytesReg
    return _mraa.I2c_readBytesReg(self, reg, data)
IOError: [Errno 110] Connection timed out
root@iot2000:~/gits/test_python_bno055# i2cdetect -y -r 0
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- UU UU UU -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- --                         

Is this an already known issue?
The I²C line is broken after this call. After a reboot of the IoT2040 everything works again.
The error is repeatable.

boot error: kernel panic rootfs.

I built the image and recorded it on the memory card.
During the boot process this error occurs:

VFS: Unable to mount root fs on unknown-block(0,0)
User configuration error - no valid root filesystem found
Kernel panic - not syncing: Invalid configuration from end user prevents continuing
CPU: 0 PID: 1 Comm: swapper Not tainted 4.8.17-yocto-standard #1
Hardware name: Intel Corp. QUARK/SIMATIC IOT2000, BIOS V24.01.01 01/01/2014
f5105e00 f5105e00 f5105ec4 c13789f9 f5105edc c10f1e7b f68e3000 f5105ef4
f68e3000 fffffffa f5105f20 c1938f1c c17a9fb8 00008000 c17a9893 f5fc6378
6e6b6e75 2d6e776f 636f6c62 2c30286b c1002930 00006180 00000000 f5105f38
Call Trace:
[] dump_stack+0x16/0x1d
[] panic+0x86/0x18b
[] mount_block_root+0x132/0x1da
[] ? x86_pmu_commit_txn.part.5+0x50/0x80
[] mount_root+0xef/0xf6
[] ? initrd_load+0x282/0x28e
[] prepare_namespace+0x145/0x176
[] kernel_init_freeable+0x1b8/0x1ca
[] kernel_init+0x10/0x100
[] ? schedule_tail+0x11/0x50
[] ret_from_kernel_thread+0xe/0x30
[] ? rest_init+0x80/0x80
Kernel Offset: disabled
---[ end Kernel panic - not syncing: Invalid configuration from end user prevents continuing
mmcblk0: mmc0:0007 SL16G 14.5 GiB

Node.js Version

The latest example image (v2.1.2) has Node.js version 4.2.4. Could you please upgrade it to the latest stable version 6.9.4 in the next SD-Card example image? Thanks.

kas-sdk-linux-x64.yml version not compatible with README.md examples

I noticed that the kas command described in README.md for building the SDK is not compatible with the docker build command inside the README.md:

docker run -v (pwd):/shared-volume:rw -e USER_ID=(id -u) --rm -t -i \
              kasproject/kas:0.11.0 sh -c "
              cd /shared-volume &&
              git clone https://github.com/siemens/meta-iot2000 &&
              kas build meta-iot2000/meta-iot2000-example/kas-sdk-linux-x64.yml"

kas.includehandler.LoadConfigException: This version of kas is compatible with version 1 to 2, file has version 3: /shared-volume/meta-iot2000/meta-iot2000-example/kas-sdk-linux-x64.yml

Not sure if that is intended. Changing either the file to version 2, or using the latest kasproject/kas image solves the problem. Although I did not take the time to check whether build successfully completes with the latest docker image. I went for the first solution.

bitbake error

ERROR: Traceback (most recent call last):
File "/export/home/narikatla/NOS/openembedded-core/bitbake/lib/bb/cookerdata.py", line 178, in wrapped
return func(fn, *args)
File "/export/home/narikatla/NOS/openembedded-core/bitbake/lib/bb/cookerdata.py", line 200, in parse_config_file
return bb.parse.handle(fn, data, include)
File "/export/home/narikatla/NOS/openembedded-core/bitbake/lib/bb/parse/init.py", line 113, in handle
return h['handle'](fn, data, include)
File "/export/home/narikatla/NOS/openembedded-core/bitbake/lib/bb/parse/parse_py/ConfHandler.py", line 124, in handle
abs_fn = resolve_file(fn, data)
File "/export/home/narikatla/NOS/openembedded-core/bitbake/lib/bb/parse/init.py", line 136, in resolve_file
raise IOError(errno.ENOENT, "file %s not found" % fn)
IOError: [Errno 2] file /export/home/narikatla/NOS/meta-rdk-video/conf/layer.conf not found

ERROR: Unable to parse /export/home/narikatla/NOS/meta-rdk-video/conf/layer.conf: [Errno 2] file /export/home/narikatla/NOS/meta-rdk-video/conf/layer.conf not found

please giveme any suggestions

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.