auto3000 / pedalpi-dev-platform

pedalpi development platform
MIT License
5 stars 1 forks source link

Raspberry PI Image #26

Open progtologist opened 3 years ago

progtologist commented 3 years ago

Although not a development issue, I guess this is the best way of getting in touch and providing feedback for the project.

I have used MODEP in the past, and MODEP is what I am currently using in my RPi3 with PiSound to get a usable MOD-* environment. Given the limitations of MODEP (image does not get regularly updated, normal MOD-DUO functionality is disabled by the maintainers), I have modified a few things on the packages to add support for ControlChain devices, but during my efforts I bumped into your project, which seems better suited for what I am doing (with proper support and regular builds).

I must state that I am not at all familiar to Yocto, but I am an experienced linux user and software engineer.

I decided to test the image that you provide prebuild for the RPi3, but I could not get it to properly work. I did not spend a lot of time trying to understand the whys and hows of it not working but I noticed a few things that may actually be bugs and some potential improvements.

Steps I followed

Initial experience: No pedalpi WIFI network appeared on my wifi list

Next step: To debug this I thought of connecting the RPi to my router over ethernet and ssh into it to see why it wouldn't work. To my disappointment, I couldn't ssh into it (is no ssh server installed?)

Last step: As I couldn't ssh into the device, I decided to mount a monitor, keyboard and mouse into my RPi to see what is actually happening at boot. I was greeted by the login screen being spammed with bcm2835-i2s SYNC errors, is that normal? Still, I couldn't use it to see what was failing or not, logs where minimal and normal linux tools are not installed in the image. How would I go around and connect over wifi? Limited documentation on that side as well :/

In a retrospect, I would gladly test the platform and contribute to it to my best knowledge, but the documentation and initial experience for me was quite rough. Is there something I am doing wrong? Is the RPi3 image I tried tested and validated working? Is there a better way to debug potential problems in this?

Thx for your work and sorry for the long text!

auto3000 commented 3 years ago

Yocto is complex, but it could be rewarding... I ve used it professionally on multiple automotive projects / companies, so this a good skill and, as sw engineer, your time will not be totally lost. Except the first two weeks you will try to build locally with bitbake, this will be an absolute pain to understand the constraints. Next, you will discover "devtool" for day to day.

I should first say "sorry" because I did not exercise the raspberry pi * for months. Moreover, we changed the yocto release two months ago, this was a quite major move required to enable an odroid-c2 based project to start (very interesting project, more ambitious than mine... if you have opportunity to discuss with rezzo). So actually I just guarantee the raspberry images "are building" :(

My legacy raspi setup was very simple: a usb audio card and some gpio to button switches, but no wifi. I did never enable the wifi on raspberry pi 3, mostly because I was just happy to upgrade my previous rasp 2 setup with more cpus.

Consequently you will have to customize the image with your new requirements. For info, the entry point is : https://github.com/auto3000/pedalpi-dev-platform/blob/master/pedalpi-src-build/conf/templates/raspberrypi3.local.conf Since I do not use this platform for day to day tests, feel free to add any custom package you need, I merge since the image remains "small" (no xwindow, no qt).

You can start to add the missing package " packagegroup-ap-base " at: https://github.com/auto3000/pedalpi-dev-platform/blob/master/pedalpi-src-build/conf/templates/raspberrypi3.local.conf#L12

(for "ap => wifi access point") but you may also have to add missing firmwares/kernel modules to support the wifi if missing... May be the ethernet driver is missing too... but it would be surprising.

I'm not sure if this is still useful, but you may have to add DISTRO_FEATURES_append = " wifi " This is mentioned at https://github.com/auto3000/pedalpi-dev-platform/blob/master/pedalpi-src-build/conf/templates/nanopi-neo-air.local.conf#L19 .

About SSH it worked in the past with an ethernet link on the previous yocto release. But I did not re test yet. For info the package "dropbear" provides the ssh server, so I don't know what's the problem... is this a IP address issue ? I do not remember how this was configured...

You have PiSound connected to I2S and this is probably related to bcm2835-i2s SYNC problems. Try to disconnect this.

I will try to rebuild my setup starting this w-e, to help to fix your first catches, this was originally in my plans but not in priority.

Good luck. You can drop me emails, no problem.

Le jeu. 21 janv. 2021 à 13:25, Aris Synodinos notifications@github.com a écrit :

Although not a development issue, I guess this is the best way of getting in touch and providing feedback for the project.

I have used MODEP in the past, and MODEP is what I am currently using in my RPi3 with PiSound to get a usable MOD-* environment. Given the limitations of MODEP (image does not get regularly updated, normal MOD-DUO functionality is disabled by the maintainers), I have modified a few things on the packages to add support for ControlChain devices, but during my efforts I bumped into your project, which seems better suited for what I am doing (with proper support and regular builds).

I must state that I am not at all familiar to Yocto, but I am an experienced linux user and software engineer.

I decided to test the image that you provide prebuild for the RPi3, but I could not get it to properly work. I did not spend a lot of time trying to understand the whys and hows of it not working but I noticed a few things that may actually be bugs and some potential improvements.

Steps I followed

  • Flash the image to the SD Card
  • Mount the SD Card on the RPi (with the PiSound on it)
  • Boot the RPi3 (headless)

Initial experience: No pedalpi WIFI network appeared on my wifi list

Next step: To debug this I thought of connecting the RPi to my router over ethernet and ssh into it to see why it wouldn't work. To my disappointment, I couldn't ssh into it (is no ssh server installed?)

Last step: As I couldn't ssh into the device, I decided to mount a monitor, keyboard and mouse into my RPi to see what is actually happening at boot. I was greeted by the login screen being spammed with bcm2835-i2s SYNC errors, is that normal? Still, I couldn't use it to see what was failing or not, logs where minimal and normal linux tools are not installed in the image. How would I go around and connect over wifi? Limited documentation on that side as well :/

In a retrospect, I would gladly test the platform and contribute to it to my best knowledge, but the documentation and initial experience for me was quite rough. Is there something I am doing wrong? Is the RPi3 image I tried tested and validated working? Is there a better way to debug potential problems in this?

Thx for your work and sorry for the long text!

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/auto3000/pedalpi-dev-platform/issues/26, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACDPVF2GPQARNTFB5T2HAKLS3AMKNANCNFSM4WMYV4OQ .

auto3000 commented 3 years ago

@progtologist I did a check on my raspberry pi 2 (ethernet plug only).

By default, the eth is configured by dhcp. This means you need to connect it to your internet box (simpler) and try to ping some IP addresses. Alternatively but boring, you can connect on one of your ethernet plug by following to this tutorial https://wiki.debian.org/DHCP_Server to setup the DHCP service on your PC (don't forget the INTERFACESv4... I spent 20 minutes to fix this). Then you can use the command "arp -a" to obtain the raspberry pi IP address.

Next, you can do a ssh root@xxxx where xxxx is the IP address. The password is "root".

The result of the dmesg command:

[   14.016609] Bluetooth: HCI device and connection manager initialized
[   14.021263] Bluetooth: HCI socket layer initialized
[   14.026024] Bluetooth: L2CAP socket layer initialized
[   14.030641] Bluetooth: SCO socket layer initialized
[   14.143879] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[   14.148700] Bluetooth: BNEP filters: protocol multicast
[   14.154074] Bluetooth: BNEP socket layer initialized
[   14.781658] vc4_hdmi 3f902000.hdmi: ASoC: can't open interface 3f902000.hdmi: -19
[   32.039282] random: crng init done
[   32.043460] random: 1 urandom warning(s) missed due to ratelimiting
[  201.545832] smsc95xx 1-1.1:1.0 eth0: link down
[  203.146122] smsc95xx 1-1.1:1.0 eth0: link up, 100Mbps, full-duplex, lpa 0xC5E1
root@raspberrypi2:~# 

If you wish to set up a static ip address instead, you would have to modify the /etc/network/interfaces file on the SDcard... or more advanced, create a recipe append stored in platform (https://www.yoctoproject.org/pipermail/yocto/2014-January/017935.html).

About wifi... my raspi 3 is broken (too much bad soldering, I forgot it was broken). I'm just happy to find the old raspi 2 in one of my big stack of boxes to do this experiment... But I will not be able to reproduce the raspi 3 setup anymore.

My pointers to add the wifi access point in the previous message "would" work with some luck. If you have some difficulties, try to check on nanopi folder (which only use wifi, no eth). I could still help because, I found in one of my boxes an old usb-wifi key that could be plugged onto raspi2 usb, but this will not fully same setup.