qmsk / e2

E2 Client, Tally output
Mozilla Public License 2.0
26 stars 7 forks source link

gpio stopped working after kernel upgrade to 4.9 #29

Closed dirkdamerau closed 6 years ago

dirkdamerau commented 6 years ago

After I upgraded my pi for other reason e2 tally v0.4.2 stopped working with --gpio option. I get this error:

2018/03/14 23:22:07 GPIO main: embd.InitGPIO: embd: your host ": ARMv7 Processor rev 5 (v7l)" is not supported at this moment. request support at https://github.com/kidoman/embd/issues

A further upgrade to 4.14 didn't fixed the issue. A downgrade to 4.4 made it working again but then other applications do not work correctly I'm tryin to use besides e2 tally.

Thanks in advance Best regards Dirk

SpComb commented 6 years ago

See https://github.com/kidoman/embd/issues/83

The vendored github.com/kidoman/embd needs updating to include https://github.com/kidoman/embd/pull/79

dougthebug commented 6 years ago

Edit: I got this project (qmsk/e2) running by downgrading the kernel to something from 2016. I followed the directions from this blog post: https://isahatipoglu.com/2015/09/29/how-to-upgrade-or-downgrade-raspberrypis-kernel-servoblaster-problem-raspberry-pi2/

It refers us to https://github.com/Hexxeh/rpi-firmware/commits/master

Asks us to copy the hash of the “bump”

And then use rpi-update to do the deed.

The precompiled e2 binaries ran as expected after a reboot.

I understand that downgrading may not be an option.

I can’t speak to the nature of the files I’m downloading from hexxeh, I suppose there’s a way to verify that the kernel is legit, but I’m just trusting in the internet. YMMV. Don’t use this in a production environment.

I first had this issue almost a year ago, and I did it on a vm that doesn’t exist anymore, but I think I used tev’s fork of embd, and something like:

$find ./qmsk/e2/ -type f | xargs sed -i 's/kidoman/tev/g'

But I wasn’t running on rpi3 hardware. I’m running all my stuff of rpi2 and B+ hw, but I have some zeros and a C.H.I.P I’d like to get this running on. I don’t have any rpi3, but maybe I’ll pick one up now, and the new one.

I’m curious what else you’re running on the pi and if there’s a way to achieve that with other methods that will support an earlier kernel, just to get your tally working, but I’m more curious in trying to understand how to fully implement this on the new pi and other embedded single board computers, since this problem doesn’t seem to be going away, and without downloading kernels from some random github user.

-Doug

dirkdamerau commented 6 years ago

As I'm not a programming guy I figured out how to compile tally on my pi. With the modified detect.go I got rid of the previous error. But now I have a new one.

GPIO main: embd.InitGPIO: host: invalid host "Raspberry Pi"

This issue is also already know at kidoman/embd#88 Thanks for your really fast help.

SpComb commented 6 years ago

With the modified detect.go I got rid of the previous error. But now I have a new one.

GPIO main: embd.InitGPIO: host: invalid host "Raspberry Pi"

That looks like an issue with incorrectly vendoring the forked embd: the sed -i 's/kidoman/tev/g' is wrong, you should clone the fork under vendor/... instead.

I don't see anything like that with the newer version of embdhaving the updated detect.go.