dimanche 1 octobre 2017

Wayland is coming

Me presenting a lightning talk at Embedded Recipes in Paris (26-09-2017).
A short talk about the choice of Wayland on embedded devices.





How to promote Wayland for embedded devices and prove it works fine for common operations?
I just decided to present my slides on an embedded devices : RiotBoard (imx6 solo).


On the software side, the system was built using OpenEmbedded (master branches).
Board BSP can be find here https://github.com/aragua/meta-arm-board.

I chose to run only open source and mainline software:
- mainline u-boot 2017.09
- mainline linux 4.13 with etnaviv driver
- Wayland 1.14.0
- Weston 3.0.0
- Mesa 2.17.0

I also chose to disable X support to run only Wayland and all apps as Wayland clients.
Wayland and weston recipes have been submitted to openembedded-core and be available soon.

Find slides pdf here.

jeudi 2 mars 2017

Building Weston image with Yocto for Raspberry pi

This article aims at describing how to setup a weston image for raspberry pi3.
1. Start by cloning poky:

/ $ git clone git://git.yoctoproject.org/poky.git -b morty

2. Then clone layers

/ $ cd poky
/poky $ git clone git://git.yoctoproject.org/meta-raspberrypi -b morty
/poky $ git clone git://git.openembedded.org/meta-openembedded -b morty

3. setup a new environment  for your build

/poky $ source oe-init-build-env rpi3-build
/poky/rpi3-build $

4. Add the 2 repos to the layers config

/poky/rpi3-build $ cat conf/bblayers.conf
....
BBLAYERS ?= " \
  /home/geh0003/sdb1/morty/meta \
  /home/geh0003/sdb1/morty/meta-poky \
  /home/geh0003/sdb1/morty/meta-yocto-bsp \
  /home/geh0003/sdb1/morty/meta-raspberrypi \
  /home/geh0003/sdb1/morty/meta-openembedded/meta-oe \
  /home/geh0003/sdb1/morty/meta-openembedded/meta-multimedia \
  "

5. Add the following to your local.conf

/poky/rpi3-build $ cat conf/local.conf
...
MACHINE ?= "raspberrypi3"

# IMHO this should be in raspberrypi3.conf
MACHINE_FEATURES += "vc4graphics"

# Remove black border
DISABLE_OVERSCAN = "1"

# Heavily recommended for Wayland/Weston.
DISPMANX_OFFLINE = "1"

GPU_MEM = "128"
...

6. Start the build

/poky/rpi3-build $ bitbake core-image-weston -k

7. Take a coffee or a beer 

(or both this takes some time)

8. If no errors =D, copy to sdcard ...

/poky/rpi3-build $ sudo dd if=tmp/deploy/images/raspberrypi3/core-image-weston-raspberrypi3.rpi-sdimg of=/dev/mmcblk0
540672+0 records in
540672+0 records out
276824064 bytes (277 MB, 264 MiB) copied, 62.256 s, 4.4 MB/s
/poky/rpi3-build $ sync
/poky/rpi3-build $ 

9. ... and enjoy









mardi 3 janvier 2017

2016 : Linux kernel contribution

After my first 6 months as a Collaborans, this is my contribution to the Linux kernel (as author or submitter):

Linux stable 4.8:

0593d4612146dc16ff6bd23423bdd434dd7b8c7b : sgtl5000: add Lineout volume control

Linux 4.9:

d04eba90998fdfeb09b7c655fa894207fe175042  : ARM: dts: imx53: Add DMA configuration for UART
2a8e583c09c841744a6aa17d7247bc4fd5c6dfbf : ARM: dts: imx53: Add IPU nodes for csi
1c06bde643d0a0b17f117539e961300cad69aad3 : Allowing UART DMA to be configured on i.MX53
e5e8960236dbff4b49eac1ec7f47b1c912531b62 : serial: imx: Replace dmaengine old API
377d6479d298339888c5d6fb460d3275e1763f8f : clk: imx53: Add clocks configuration

Linux 4.10-rc2:

05ec0e4501f7f05ef610070294fcc806ccbbb981 : drm/panel: simple: Add NVD9128 as a simple panel
144235ea752b4d56d66fe03bb6b7fae7e0032404 : spi: spidev: Add device to spidev device tree compatibility list
d13631bb15cebe8eba50777cb96e2223e5485c23 : usb: chipidea: imx: configure imx for ULPI phy
3be3251db0887f721f9c110e1966900922fc4ff4 : usb: chipidea: imx: Disable internal 60Mhz clock with ULPI PHY

mardi 20 décembre 2016

New year fireworks

Since 4 years, my friend Peter and me shoot firework for the new year.
Each year the firework must be better than the previous.



This year, we bought those compacts:




-- Part 1 --
line 1: Bengale cligno x3 (Jorge JS021)
line 2: Volcan géant crackling (Jorge FC1304)
line 3: Magical Shots Barrage (Jorge JW16)
line 4: Saturn missiles x50 (Jorge JW02)
line 5: Macrocosmos 2 (Jorge SM2125)
line 6: Mars (Jorge JW07)
line 7: Alligator (Xplod C31)
-- Part 2 --
line 8: Burner (Superpower 04244)
line 9: Uran (Jorge JW04)
line 10: Macrocosmos 2 (Jorge SM2125)
line 11: Macrocosmos 3 (Jorge SM2126)
line 12: Saturn missiles x50 (Jorge JW02)
line 13: Mars x2 éventaillé (Jorge JW07)
line 14: Aries x2 éventaillé (Superpower NS36-81604)
-- Part 3 --
line 15: Magical Shots Barrage (Jorge JW16)
line 16: Macrocosmos 3 (Jorge SM2126)
line 17: Crazy Whistling Comets x300 (Jorge JW31)
line 18: Copernicus (Jorge JW4054)
line 19: Wenus x2 éventaillé (Jorge JW08)
line 20: Nemezis (Jorge JW2026)
line 21: Imagine JW52 (Jorge JW52) 
line 22: Imagine JW107 x2 éventaillé (Jorge JW107)

And create a shoot table to remotely launch fireworks:



And a custom 30 meters cable with 24 lines:


Previous fireworks video:

2015/2016



2014/2015