Coding

  • Further reading about PowerVR
  • Started creating CMakefiles for two elements of my project: C API library and the application using it (for now the application uses PowerVR SDK)

Setting the evironment

  • Received BBB rev C and flashed the Debian IoT image - might change to a different distro laters as I am not a Debian lover.
  • Since Kitware does not provide PPA’s for Debian 9, I had to download it and build from scratch - the default one is too old for my needs (3.7.4 vs 3.15+)

Network connection

  • Set up internet connection via USB with help of packets forwarding taken from this page

The echo command needs to be altered, otherwise you will just see: -bash: /etc/resolv.conf: Permission denied

The right command to be used: echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf

Additionally the commands have to be put to a script ran at startup, for example as an entry in the crontab:

sudo vim /etc/crontab
# append the following line
@reboot         root    route add default gw 192.168.7.1 && echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf

Also be sure to set up the host commands as a script on your host machine and also run it at startup.

Alternatively you may create a shell script:

#!/usr/bin/sh
sudo route add default gw 192.168.7.1 && echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf

And a systemd unit:

[Unit]
After=default.target

[Service]
Type=simple
RemainAfterExit=yes
ExecStart=/bin/bash /usr/bin/inet_enable.sh
TimeoutStartSec=0

[Install]
WantedBy=default.target

Apparently neither of those worked for me (I am unable to reach beyond my gateway), so for now I am just typing the commands manually whenever I need them…

  • Resized the partition following steps from here
  • I had to change the partition type label to GPT and create an ext4 partition. Also I created a filesystem with mkfs.ext4 command.
  • First create the entry in fstab like this:
     # /etc/fstab: static file system information.
     #
     /dev/mmcblk1p1  /  ext4  noatime,errors=remount-ro  0  1
     /dev/mmcblk0p1 /home ext4 defaults 0 2
     debugfs  /sys/kernel/debug  debugfs  defaults  0  0
    
  • Chose the SD card to be my /home partition and left the root filesystem on the built-in MMC Flash. It required me to:
    • sudo cp -r /home /home-old
    • Mount the new disk and copy content of /home there: sudo mount /tempmount /dev/mmcblk0 && sudo cp -r /home-old/* /tempmount
    • Unmount the newly copied /home: sudo umount /tempmount and clean the contents of old /home: sudo rm -rf /home/*
    • Reboot to be sure that the new disk mounts properly
    • Clean up: sudo rm-rf /home-old

PowerVR SDK

  • cloned the SDK and tried building it, with following errors (for now unsolved):
    make[2]: *** No rule to make target '../external/PVRScope/../../lib/Linux_armv7l/libPVRScopeDeveloper.a', needed by 'bin/OpenGLESPVRScopeExample'.  Stop.
    make[1]: *** [CMakeFiles/Makefile2:1646: examples/OpenGLES/PVRScopeExample/CMakeFiles/OpenGLESPVRScopeExample.dir/all] Error 2
    make: *** [Makefile:130: all] Error 2
    

    They were solved by following the discussion with Omar from PowerVR.

Video

  • Prepared the opening GSoC 21 presentation
  • Discussed the presentation with my mentors
  • Recorded the video and uploaded it here

Setting up Libera IRC with Matrix client

  • We will be discussing all project related things on the #beagle-gsoc on libera.chat for transparency - I followed this guide to set things up