Updating the eVOLVER server

This is how I update the code on eVOLVER units when we have software updates. I plan to make deployment scripts in the future to streamline this, but if you only have one or two eVOLVERs to update this process is fairly simple.

  1. Open up a terminal of your choice (I use iTerm).
  2. Use the cd command to navigate to the eVOLVER server software.
  3. Use git to pull the latest version of the code. I have my own fork, so I need to pull the code from an upstream master branch. git pull origin master should work for most setups.
  4. I like to use the scp command to transfer the files over to the eVOLVER. scp stands for secure copy - it uses ssh to transfer files between computers on a network. You can also use any GUI based tool - Filezilla is a popular one. I also normaly only transfer the python files, and not the entire evolver directory. The server saves calibration files and other configurations which we don’t want to modify. To transfer only the relevant python files, run the following command:
    scp evolver/*.py pi@<eVOLVER_IP>:evolver/evolver
  5. Now that the files have been updated, the last step is to restart the server so the changes will take effect. ssh over to the evolver and run sudo supervisorctl. Then enter restart evolver, and you’re done!
1 Like

On Windows, SCP is not built into the operating system. But you can use WinSCP or another FTP client (like Filezilla) as a GUI for accessing the files on the Raspberry Pi. Here are modifications to the steps above.

1-3. Download and extract the files from the appropriate Github release.

  1. Use WinSCP to drag the .py files into the correct locations. Be careful to not overwrite other types of files, as you might overwrite your calibrations.

  2. Most Windows 10 computers have a Windows 10 SSH Client (such as OpenSSH Client) so you can log into the Raspberry Pi from Command Prompt in order to restart the server. Simply type ssh pi@192.168.1.X to indicate the IP address of your eVOLVER and log in. From here, you can run sudo supervisorctl as normal.

1 Like

NOTE: The blink.py seen in the screenshots is not a necessary file to worry about updating. It was a test file was removed from the repository.

What is the password for the evolver’s raspberry pi?

Responded via DM.