Evolver SocketIO python versions


So we’ve been running a altered version of the evolver and dpu code, and I had a few questions:

  1. Why is the dpu code using socketio-client instead of python-socketio?
  2. Is there any push to update the evolver python-socketio version to a later version?
  3. In the install script for the evolver, the python-socketio version is not specified. Does this mean that any version of python-socketio should work? I know python-engineio and python-socketio can have issues if mismatched, so I wanted to know for sure.

The current version we are running on our evolver is python-socketio 3.0.0 and python-engineio 3.1.2


Hi Vincent,

Welcome to the forum!

  1. We inherited some of the websockets code many years back from an internal software dev team at BU. It seemed to work well for us so we stuck with their framework decisions.
  2. There are no current development efforts towards this. If you want to update this aspect of the software and make a PR that would be awesome!
  3. I doubt any version would work, thanks for bringing it to our attention. I haven’t run into any issues with it as it currently is, but it would be better if a version is specified. Again, if you want to make a PR that would be great. If not, I can make an issue for it and hopefully get to it soon.


Hello Zack,

Thanks for your quick response.
I have also inherited a modified version of the evolver and dpu code that I am currently making modifications on. I have a strong feeling that it may be difficult to merge. What I have confirmed is:

  1. As long as the versions match for the pi socketio and engineio with the dpu socketio and engineio, the dpu is able to connect.
  2. When upgrading the pi socketio, it seems that any version except 3.0.0 will fail to connect to the gui, and so I have left it out.

I can try to do some more experimentation. I can also post the updated version of our “fork” and see if that is helpful to you guys.


Ok, if you send me a link to your fork I can take a look. Let me know if you have any specific issues, happy to help.


Sure. When I’m done refactoring the “fork” i’ll put it on github. Our lab didn’t use github before we made these changes, so I’ll have to upload it. I’ll reply with a link here.


So my code refactor is basically done. I’m still doing some testing, but I did some major changes regarding the python socket-io versions and python versions.

I managed to update all the packages in the evolver rpi requirements file to the latest versions available for python 3.9.2, and was able to get it to work. These changes are not backwards compatible with the older evolver versions, but I was able to get the gui and our “forked” code base to work with python-socketio ver 5.7.2.

Given that they are not backwards compatible, would you like this in a pull request? If not, I can host it on our lab github and link you to it

Could you send a link to this fork? I’d be interested to check out the updates you made since I’m doing some server modifications as well. Thanks

just wanted to follow up on this - having some issues with the socketio code on the dpu and currently trying to switch to using python-socketio

1 Like