Posted by on 18 June 2022

Here are the commands required to reproduce the environment for running solutions on a Raspberry Pi Single Board Computer

The editor and language options available are:

VS Code

Python, Julia, R, Wolfram

Jupyter Lab

Python, Julia, R, Wolfram, Octave SciLab

Pluto notebook

Julia

Octave

Octave

wxMaxima

Maxima

These commands were entered on Raspberry Pi OS Buster 64bit on a 4GB Raspberry Pi

From https://downloads.raspberrypi.org/raspios_arm64/images/raspios_arm64-2021-05-28/ downloaded 2021-05-07-raspios-buster-arm64.zip

Flashed to 32GB sd card with Balena Etcher

Booted on RPI4

Tick use English language Next

New password Next

Set Up Screen tick this screen shows a black border Next

Select wifi network Skip (cabled)

Update software Skip

Setup Complete Restart

Raspberry > Preferences > Raspberry Pi Configuration> Interfaces enable SSH and VNC

In terminal

sudo apt-get update

sudo apt-get full-upgrade

sudo reboot

mkdir Developer

sudo apt-get update 

sudo apt-get install wolfram-engine

From https://github.com/conda-forge/miniforge downloaded Miniforge3-Linux-aarch64

In terminal in Downaloads bash Miniforge3-Linux-aarch64.sh

Chose to Initialise miniforge3

Restart Terminal

conda create -n rp395 python=3.9.5

conda activate rp395

which python shows /home/pi/miniforge3/envs/rp395/bin/python

python -V shows Python 3.9.5

which pip shows /home/pi/miniforge3/envs/rp395/bin/pip

pip install jupyterlab

conda install -c conda-forge vtk

ONE AT A TIME if crashes

pip install numpy sympy matplotlib pandas plotly bokeh scipy seaborn statsmodels octave-kernel ipympl ipyvtklink vispy jupyter_rfb vpython pyvista QtPy scilab-kernel

pip install watermark ipywidgets

sudo apt-get install octave

sudo apt-get install scilab

pip install gnuplot_kernel

python -m gnuplot_kernel install – -user

From julialang.org/downloads downloaded 64bit AArch64 of v1.6.2

Unzipped tar to /home/pi/julia-1.6.2

ln -s /home/pi/julia-1.6.2/bin/julia /home/pi/miniforge3/envs/rp395/bin/julia

julia

using Pkg

Pkg.add(“IJulia”)

Pkg.add(“Plots”)

Pkg.add(“DifferentialEquations”)

Pkg.add(“StaticArrays”)

Pkg.add(“BoundaryValueDiffEq”)

Pkg.add(“OrdinaryDiffEq”)

Pkg.add(“Sundials”)

Pkg.add(“SciMLBase”)

Pkg.add(“Plotly”)

Pkg.add(“PlotlyBase”)

exit()

From https://nodes.org/en/downloads/current downloaded Linux binaries ARMv8

Extract files from node-v16.8.0-Linux-arm64.tar.xz to /home/pi/node-v16.8.0

ln -s /home/pi/node-v16.8/bin/node /home/pi/miniforge3/envs/rp395/bin/node

From github.com/WolframResearch/WolframLanguageForJupyter.git downloaded WolframLanguageForJupyter-master.zip

Unzipped to home/pi/wolfram

In p395 environment in Wolfram directory created

./configure-jupyter.wls add

sudo apt-get purge dillo

sudo apt install r-base r-base-core r-base-dev

R

install.packages(‘IRkernel’)

yes

yes

IRkernel::installspec()

quit()

n

sudo apt install code

code

Add Python, Julia, REditor support extensions

jupyter-lab build

jupyter labextension list

jupyter kernelspec list

jupyter nbextension list

jupyter-lab Verify working with test notebook Then shutdown

jupyter notebook –generate-config

jupyter notebook password

In rp395 Julia add Pluto, import Pluto, Pluto.run(host=“=0.0.0.0”)

Posted in: Uncategorised