he meant “Raspberry Pi Configuration”, you can access through the Menu
Hi thanks,
I understood I don’t have this menu on my version but I installed it and it’s running (netstat -lnput):
tcp 0 0 0.0.0.0:8888 0.0.0.0:* LISTEN 4192/pigpiod
… but unlikely the GPIO dashboard is empty.
Is there any command to debug my situation?
Thanks in advance.
Gianluca
This looks to me like you might have the opposite version – a very old kernel? I’m used to seeing the 4.4 Linux kernel on Pi’s running Raspbian Jessie. Could you run:
cat /etc/os-release
to see what version of Raspbian you’re running? The Cayenne Pi Agent currently supports Raspbian Jessie and Jessie Lite, though if you’re tied to some other OS, perhaps the Cayenne Linux Agent or a Python MQTT Client would be other options to explore for connecting your device to Cayenne.
I have this same problem. I can’t seem to do anything related to GPIO.
If I create a Generic Device on GPIO 17 (pin 11), yet it doesn’t show up on the left side when created.
pi@RPI-Generator:~ $ uname -a
Linux RPI-Generator 4.9.24-v7+ #993 SMP Wed Apr 26 18:01:23 BST 2017 armv7l GNU/Linux
pi@RPI-Generator:~ $ cat /etc/os-release
PRETTY_NAME=“Raspbian GNU/Linux 8 (jessie)”
NAME=“Raspbian GNU/Linux”
VERSION_ID=“8”
VERSION=“8 (jessie)”
ID=raspbian
ID_LIKE=debian
pi@RPI-Generator:~ $
This is a clean build. Am I missing something obvious, or is this a bug or limitation?
The Icon is created, but is missing on the left side, so you can’t drag anything in to create a trigger. Also, when you look at the GPIO page, you don’t see that port as an input or output.
Mike
Hi Rsiegel,
I have an older version (Raspbian GNU/Linux 7 (wheezy)), I’ve tried with another SD card with Jessie onboard and I confirm it works.
I’ll check if Cayenne Linux Agent can work on my Wheezy version as suggested.
Thanks for the support.
GL
Hi @mike7 and welcome to the Cayenne Community.
The issue is that webiopi, a component of the Cayenne Pi software, is not yet compatible with the 4.9 Linux Kernel. There are a few options to resolve this until we push an update with support for this kernel:
If you have no specific need for the 4.9 kernel on your Pi (most people would not), you can downgrade to 4.4 by running this command (it will require a reboot after it runs)
sudo rpi-update 52241088c1da59a359110d39c1875cda56496764
After you’re running 4.4 again the problems you’ve described should automatically go away.
If you do need the 4.9 kernel or don’t want to downgrade, you can try a beta of the new agent we’re testing resolve this issue, and a number of others. Just be aware this is beta software and you may encounter bugs (please let us know if you go this route, and do have trouble)
To try it out:
First get the test agent install script:
wget http://updates.mydevices.com/raspberry/rpi_testing.sh
If updating an existing install run:
sudo bash rpi_testing.sh -update
If this is a new install get the invite code from adding a new Raspberry Pi via the Cayenne Dashboard. The invite code is part of the install file name listed in the Terminal/SSH instructions: rpi_[invitecode].sh.
Run the rpi_testing.sh script with this invite code:
sudo bash rpi_testing.sh -code [invite code]
Thanks
I downgraded the firmware and that solved it. I should have asked about 4 hours earlier.
Mike
Glad it worked. Sorry for the trouble, it’s a bit of a frustrating one if you don’t know what you’re looking for.
Hi,
Thanks for sharing the test agent script. I tried it with Linux Kernel 4.9 and I confirm that I can control the GPIO pins from the web interface on my laptop. However, the pins still cannot be controlled through the Cayenne app on my iphone. Is there a way to make this work as well?
All the best,
David
@rsiegel can confirm, but I’m pretty sure the test agent uses MQTT for communication which means the iPhone and Android apps will not work correctly until the test agent is officially pushed out.
@salekd @mike7 @gianluca.torriglia @tiendle @hypnojesus We have just released an updated Cayenne Pi agent version that includes the fix for 4.9 Linux kernel. It can be downloaded by installing a new Raspberry Pi through the Cayenne add device process.
We will be updating all existing Pi agents w/ this fix very soon, so you may prefer to wait until we roll out the fix. Either way, I’m hoping that you will be able to confirm our fix is working
~Benny
Just bumping one more time to note that the existing agent auto-update has been released as well. It’s totally a silent update, so there would not be any indication on the user side. Feel free to use rpi-update
to move forward to the 4.9 kernel at this point if you’d like!
@salekd I’d be interested to hear if this new agent is allowing you to manipulate the pins via the iOS app, and if not, if you could share a bit more information on what exactly you’re trying to do in the app that isn’t working.
Thanks for mentioning rpi-update, I used it to move from kernel 4.9.35 to 4.9.54 which, as I understand, includes the new Cayenne Pi agent. However, I still cannot control the pins through the GPIO section of the iPhone Cayenne app.
I have also defined a button in the dashboard, connected to one of the output GPIO pins. I can switch this button on and off from my iPhone (I was not able to do even this before), but nothing happens in reality. From this I conclude that the new firmware still does not fix the problem. Or did I miss any important step in the firmware update?
Cheers,
David
Hi @salekd,
Basically our new agent version should have come down the pipe automatically. The goal was to fix an incompatibility with the 4.9.x Linux kernel in general. You can check if you have the newest update with the command curl http://127.0.0.1:8000/version
. The old version is 0.7.22, new one is 0.7.23.
That being said, I’m not aware of any incompatibilities between different sub-versions of 4.9. After seeing your post, I tested with 4.9.41 and 4.9.56 (just what my Pi was on, and what rpi-update
updated it to without demanding something specific), and in both cases I was able to control a LED with both the GPIO tab, and a button widget, with both iOS and web browser Cayenne.
If you do have that newest agent version, the next thing I’d test is if you’re able to turn on and off the pin outside the context of Cayenne, with something like a Python script. Let me know if you need help finding one to do this. It would also be a good sanity check of your wiring to make sure that’s not the issue here. Might be worth trying on a different pin as there are a few that have reserved uses that could be causing an issue as well (which pin are you having trouble with?)
Hi @rsiegel,
Thanks for testing this. As I said previously, controlling GPIO pins through Cayenne in a web browser on my laptop works for me. It is only the iPhone app that doesn’t work. Following your suggestion, I tried testing the version by doing curl http://127.0.0.1:8000/version
on my Raspberry Pi Zero and I got the following error:
curl: (7) Failed to connect to 127.0.0.1 port 8000: Connection refused
Can this be part of the problem?
Cheers,
David
Hello again,
I’m not sure why you’re seeing that error message, you might want to try curl http://localhost:8000/version
which should be equivalent to that command.
Ultimately I don’t think it’s related to the issue you’re seeing though. If you can control the GPIO pins through the Cayenne web dashboard on a Pi running the 4.9+ kernel, then I have to assume you have the latest agent and that it is running OK. Perhaps there is something something specific to the account (or phone) setup that is going on here.
Could you let me know what model of iOS device and what version of iOS you’re running? If you don’t mind, I’d also be interested to try it from one of our test iOS devices if you would PM me with your Cayenne username and password, and an example of a GPIO pin that you can change the state of OK from the web but not from the iOS app.
Hi @rsiegel,
Actually, restarting my iPhone and/or restoring its network settings fixed the GPIO control. Thanks again for the tests you have done.
I have also noticed an inconsistency in the number of running processes and the reported network speed in the dashboards on laptop and iphone. The other displayed metrics (storage, memory, CPU consumption and CPU temperature) are consistent.
All the best,
David
Thanks for the update, glad to here the larger GPIO issue is resolved for you now. Please let me know if you suspect it has returned in the future. As for the Network speed/Processes widgets, agreed that these are not consistent between the two platforms. It looks like the iOS app is only showing a count of the number of services running instead of all processes. Perhaps the speed is being miscalculated, we’ll investigate.
Looks like we’re going to be dropping the processes widget in an upcoming update. It was really just a demo of funneling data into a widget via Cayenne anyway. If you want to get a more accurate count for this sort of thing, you can use our Remote Access feature to log into your Pi and use Linux commands like ps
or other process managers to view this information there.
If you really want it on your dashboard you could even gather a count and push it to a Cayenne custom widget with your Pi connected as an MQTT device.
We’ll look into the network speed one!