MPPT Version 1.1 
  
  
  Autostart at Boot?
   https://www.instructables.com/id/Nodejs-App-As-a-RPI-Service-boot-at-Startup/
  requires
  sudo npm install forever -g
  to be able to run this as non-root user:
  https://raspberrypi.stackexchange.com/questions/40105/access-gpio-pins-without-root-no-access-to-dev-mem-try-running-as-root
  Three methods:
  SysVinit
  Systemd
  Upstart
  https://unix.stackexchange.com/questions/106656/how-do-services-in-debian-work-and-how-can-i-manage-them
  Preferred:
  Systemd
  Examples:
  https://www.raspberrypi.org/documentation/linux/usage/systemd.md
  https://learn.adafruit.com/running-programs-automatically-on-your-tiny-computer/systemd-writing-and-enabling-a-service
  https://nodesource.com/blog/running-your-node-js-app-with-systemd-part-1/
  Support
  Q: PC simulation getting serialport version error
  Error: Error: The module '/node_modules/serialport/build/Release/serialport.node'
    was compiled against a different Node.js version using
    NODE_MODULE_VERSION 48. This version of Node.js requires
    NODE_MODULE_VERSION 57. Please try re-compiling or re-installing
    A: Possible solutions:
    method 1
    run your program with an older version of node by installing Node Version Manager nvm
    git clone https://github.com/creationix/nvm.git ~/.nvm
    cd ~/.nvm
    git checkout `git describe --abbrev=0 --tags`
    cd ..
    . ~/.nvm/nvm.sh
    Add these lines to ~/.bashrc
    export NVM_DIR="$HOME/.nvm"
    [ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh" # This loads nvm
    Install and use different node version
    nvm install 6
    nvm use 6
    method 2
    Try completely removing node and reinstalling.
    sudo apt remove nodejs
    delete .npm folder in home
    delete .nvm folder in home
    delete package json lock file
    delete package.json file
    sudo apt install nodejs
    try running 
    sudo node server.js
    install node modules as requested
    npm install express
    etc