Skip to content

Commit

Permalink
v0.8.1 and doc updates
Browse files Browse the repository at this point in the history
  • Loading branch information
gutow committed May 2, 2023
1 parent bb1defc commit 9c4de90
Show file tree
Hide file tree
Showing 20 changed files with 2,029 additions and 2,006 deletions.
14 changes: 7 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,19 +8,19 @@ This software allows GUI (Graphical User Interface) driven live collection,
plotting and analysis of
digitized data inside a Jupyter notebook. The package was initially developed
to provide an inexpensive laboratory system for teaching based on
the Raspberry Pi. __However, it now also works on other hardware__.
the Raspberry Pi. **However, it now works on other hardware**.
Presently the working combinations are:

__on Raspberry Pis__
**on Raspberry Pis**
* Adafruit compliant ADS1115 boards
([example](https://www.amazon.com/KNACRO-4-Channel-Raspberry-ADS1115-Channel/dp/B07149WH7P),
also available from other vendors);
* The [π-Plates DAQC2 plate](https://pi-plates.com/daqc2r1/).

__on Macs (and probably Windows)__
**on Macs and Windows**
* [Vernier](https://www.vernier.com) LabQuest USB A-to-Ds.

__demo mode on anything Jupyter runs on__
**demo mode on anything Jupyter runs on**
* A demo mode will run on any computer with a Jupyter notebook install and
Python 3.6+. You can try the demo mode without installing on your own
computer by launching an instance on the MyBinder servers:
Expand All @@ -37,14 +37,14 @@ appropriate for the sensor, in addition to the raw voltage signal returned
by the sensor. Not all sensors are compatible with all boards.
The developer(s) attempt to keep this list of known sensors up-to-date, but the
code may provide additional sensors not listed here:
* __ADS1115 compatible__ (board can provide 3.3 V of power/reference to
* **ADS1115 compatible** (board can provide 3.3 V of power/reference to
sensors):
* voltage reading (V, mV) from any sensor that puts out a voltage in the
range +/-3.3 V.
* built-in thermistor (V, mV, K, C, F).
* Vernier SS temperature probe (V, mV, K, C, F).

* __DAQC2 compatible__ (board can provide 5.0 V of power/reference to sensors):
* **DAQC2 compatible** (board can provide 5.0 V of power/reference to sensors):
* voltage reading (V, mV) from any sensor that puts out a voltage in the
range +/- 12 V.
* Vernier SS temperature probe (V, mV, K, C, F).
Expand All @@ -54,7 +54,7 @@ code may provide additional sensors not listed here:
* Compatible with standard Vernier analog probes. Default calibrations
being added as time and sensors become available.

* __LabQuest compatible__ (board provides 5.0 V of power/reference to sensors):
* **LabQuest compatible** (board provides 5.0 V of power/reference to sensors):
* voltage reading (V, mV) from any sensor that puts out a voltage in the
range +/- 10 V.
* Vernier SS temperature probe (V, mV, K, C, F).
Expand Down
5 changes: 5 additions & 0 deletions docs/Change_Log.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
# Change Log
* 0.8.1 (May 2, 2023)
* BUG FIX: Now always waits for all data to be transferred to plot before
writing backup to a file.
* More rapid update of display when using LabQuests.
* Docs now recommend launching `jupyter nbclassic` for old notebook interface.
* 0.8.0 (Apr. 20, 2023)
* Replaced `NewRun()` command with `Run()` command. This version works in
Jupyter Lab and removes the need for the `DisplayRun()` command because
Expand Down
18 changes: 9 additions & 9 deletions docs/Development_Notes.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,29 +9,29 @@ pip and a Jupyter notebook.
See: [python.org](https://python.org) and
[Jupyter.org](https://jupyter.org).

1. If not installed, install pipenv:`$ pip3 install --user pipenv`. You may
1. If not installed, install pipenv:`pip3 install --user pipenv`. You may
need to add `~/.local/bin` to your `PATH` to make `pipenv`
available in your command shell. More discussion:
[The Hitchhiker's Guide to Python](https://docs.python-guide.org/dev/virtualenvs/).
1. Navigate to the directory where this package will be
or has been downloaded to. Use `pipenv`to install an
["editable" package](https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs)
inside the directory as described below:
1. Start a shell in the environment `$ pipenv shell`.
1. Start a shell in the environment `pipenv shell`.
1. Install using pip.
1. If you downloaded the git repository named "JupyterPiDAQ"
and have used that directory to build your virtual
environment: `$ pip install -e ../JupyterPiDAQ/`.
environment: `pip install -e ../JupyterPiDAQ/`.
1. If you are downloading from PyPi
`$ pip install -e JupyterPiDAQ`
`pip install -e JupyterPiDAQ`
1. Either should install all the additional packages this
package depends upon. On a Raspberry Pi this will take
a long time. It probably will not run without at least 1 GB of swap. See:
[Build Jupyter on a Pi
](https://www.uwosh.edu/facstaff/gutow/computer-and-programming-how-tos/installing-jupyter-on-raspberrian).
1. Still within the environment shell test
this by starting jupyter `$ jupyter notebook`. Jupyter should launch in
your browser.
1. Still within the environment shell test this by starting jupyter
`jupyter nbclassic` or `jupyter lab`. Jupyter should launch in your
browser.
1. Open a new notebook using the default (Python 3) kernel.
1. In the first cell import all from DAQinstance.py:
`from jupyterpidaq.DAQinstance import *`.
Expand All @@ -43,10 +43,10 @@ inside the directory as described below:
possible to run this on any computer, not just a Pi.
1. If you wish, you can make this environment available to an alternate Jupyter
install as a special kernel when you are the user.
1. Make sure you are running in your virtual environment `$ pipenv shell`
1. Make sure you are running in your virtual environment `pipenv shell`
in the directory for virtual environment will do that.
1. Issue the command to add this as a kernel to your personal space:
`$ python -m ipykernel install --user --name=<name-you-want-for-kernel>`.
`python -m ipykernel install --user --name=<name-you-want-for-kernel>`.
1. More information is available in the Jupyter/Ipython documentation.
A simple tutorial from Nikolai Jankiev (_Parametric Thoughts_) can be
found [here](https://janakiev.com/til/jupyter-virtual-envs/).
Expand Down
6 changes: 4 additions & 2 deletions docs/User_Guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,8 @@ up, that lead to slightly different steps for starting the software:
[Installation Instructions](https://jupyterphysscilab.github.io/JupyterPiDAQ/jupyterpidaq.html#installation)).
* In this case launch
Jupyter, in whichever directory you want to work, using the
command: `jupyter notebook` or `jupyter lab`.
command: `jupyter nbclassic` (for the old notebook interface) or `jupyter
lab` (for the newer lab interface).
* Open a new notebook and choose the kernel
for `JupyterPiDAQ`. The kernel name will depend upon what was chosen
during installation.
Expand All @@ -54,7 +55,8 @@ up, that lead to slightly different steps for starting the software:
* Then enter the virtual environment with the command `pipenv shell`.
This assumes you set up `pipenv` as described in the
[Installation instructions](https://jupyterphysscilab.github.io/JupyterPiDAQ/jupyterpidaq.html#installation).
* Launch Jupyter using the command: `jupyter notebook` or `jupyter lab`.
* Launch Jupyter using the command: `jupyter nbclassic` (for the old
notebook interface) or `jupyter lab` (for the newer lab interface).
* Open a new python notebook.

### Initialize the Data Acquisition Tools
Expand Down
35 changes: 22 additions & 13 deletions docs/jupyterpidaq.html
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="generator" content="pdoc 13.1.0"/>
<meta name="generator" content="pdoc 13.1.1"/>
<title>jupyterpidaq API documentation</title>

<style>/*! * Bootstrap Reboot v5.0.0 (https://getbootstrap.com/) * Copyright 2011-2021 The Bootstrap Authors * Copyright 2011-2021 Twitter, Inc. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE) * Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md) */*,::after,::before{box-sizing:border-box}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans","Liberation Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529;background-color:#fff;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}hr{margin:1rem 0;color:inherit;background-color:currentColor;border:0;opacity:.25}hr:not([size]){height:1px}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5rem;font-weight:500;line-height:1.2}h1{font-size:calc(1.375rem + 1.5vw)}@media (min-width:1200px){h1{font-size:2.5rem}}h2{font-size:calc(1.325rem + .9vw)}@media (min-width:1200px){h2{font-size:2rem}}h3{font-size:calc(1.3rem + .6vw)}@media (min-width:1200px){h3{font-size:1.75rem}}h4{font-size:calc(1.275rem + .3vw)}@media (min-width:1200px){h4{font-size:1.5rem}}h5{font-size:1.25rem}h6{font-size:1rem}p{margin-top:0;margin-bottom:1rem}abbr[data-bs-original-title],abbr[title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;cursor:help;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none}address{margin-bottom:1rem;font-style:normal;line-height:inherit}ol,ul{padding-left:2rem}dl,ol,ul{margin-top:0;margin-bottom:1rem}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}dt{font-weight:700}dd{margin-bottom:.5rem;margin-left:0}blockquote{margin:0 0 1rem}b,strong{font-weight:bolder}small{font-size:.875em}mark{padding:.2em;background-color:#fcf8e3}sub,sup{position:relative;font-size:.75em;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}a{color:#0d6efd;text-decoration:underline}a:hover{color:#0a58ca}a:not([href]):not([class]),a:not([href]):not([class]):hover{color:inherit;text-decoration:none}code,kbd,pre,samp{font-family:SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;font-size:1em;direction:ltr;unicode-bidi:bidi-override}pre{display:block;margin-top:0;margin-bottom:1rem;overflow:auto;font-size:.875em}pre code{font-size:inherit;color:inherit;word-break:normal}code{font-size:.875em;color:#d63384;word-wrap:break-word}a>code{color:inherit}kbd{padding:.2rem .4rem;font-size:.875em;color:#fff;background-color:#212529;border-radius:.2rem}kbd kbd{padding:0;font-size:1em;font-weight:700}figure{margin:0 0 1rem}img,svg{vertical-align:middle}table{caption-side:bottom;border-collapse:collapse}caption{padding-top:.5rem;padding-bottom:.5rem;color:#6c757d;text-align:left}th{text-align:inherit;text-align:-webkit-match-parent}tbody,td,tfoot,th,thead,tr{border-color:inherit;border-style:solid;border-width:0}label{display:inline-block}button{border-radius:0}button:focus:not(:focus-visible){outline:0}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:inherit;line-height:inherit}button,select{text-transform:none}[role=button]{cursor:pointer}select{word-wrap:normal}select:disabled{opacity:1}[list]::-webkit-calendar-picker-indicator{display:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]:not(:disabled),[type=reset]:not(:disabled),[type=submit]:not(:disabled),button:not(:disabled){cursor:pointer}::-moz-focus-inner{padding:0;border-style:none}textarea{resize:vertical}fieldset{min-width:0;padding:0;margin:0;border:0}legend{float:left;width:100%;padding:0;margin-bottom:.5rem;font-size:calc(1.275rem + .3vw);line-height:inherit}@media (min-width:1200px){legend{font-size:1.5rem}}legend+*{clear:left}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-fields-wrapper,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-text,::-webkit-datetime-edit-year-field{padding:0}::-webkit-inner-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:textfield}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-color-swatch-wrapper{padding:0}::file-selector-button{font:inherit}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}iframe{border:0}summary{display:list-item;cursor:pointer}progress{vertical-align:baseline}[hidden]{display:none!important}</style>
Expand Down Expand Up @@ -68,7 +68,7 @@ <h2>API Documentation</h2>
</ul>


<footer>JupyterPiDAQ v0.8.0</footer>
<footer>JupyterPiDAQ v0.8.1</footer>

<a class="attribution" title="pdoc: Python API documentation generator" href="https://pdoc.dev" target="_blank">
built with <span class="visually-hidden">pdoc</span><img
Expand Down Expand Up @@ -138,7 +138,8 @@ <h3 id="starting-jupyterpidaq">Starting JupyterPiDAQ</h3>
<ul>
<li>In this case launch
Jupyter, in whichever directory you want to work, using the
command: <code>jupyter notebook</code> or <code>jupyter lab</code>.</li>
command: <code>jupyter nbclassic</code> (for the old notebook interface) or <code>jupyter
lab</code> (for the newer lab interface).</li>
<li>Open a new notebook and choose the kernel
for <code>JupyterPiDAQ</code>. The kernel name will depend upon what was chosen
during installation.</li>
Expand All @@ -152,7 +153,8 @@ <h3 id="starting-jupyterpidaq">Starting JupyterPiDAQ</h3>
<li>Then enter the virtual environment with the command <code>pipenv shell</code>.
This assumes you set up <code>pipenv</code> as described in the
<a href="https://jupyterphysscilab.github.io/JupyterPiDAQ/jupyterpidaq.html#installation">Installation instructions</a>.</li>
<li>Launch Jupyter using the command: <code>jupyter notebook</code> or <code>jupyter lab</code>.</li>
<li>Launch Jupyter using the command: <code>jupyter nbclassic</code> (for the old
notebook interface) or <code>jupyter lab</code> (for the newer lab interface).</li>
<li>Open a new python notebook.</li>
</ul></li>
</ol>
Expand Down Expand Up @@ -490,7 +492,7 @@ <h2 id="setting-up-development-environment">Setting up Development Environment</
<a href="https://jupyter.org">Jupyter.org</a>.</p>

<ol>
<li>If not installed, install pipenv:<code>$ pip3 install --user pipenv</code>. You may
<li>If not installed, install pipenv:<code>pip3 install --user pipenv</code>. You may
need to add <code>~/.local/bin</code> to your <code>PATH</code> to make <code>pipenv</code>
available in your command shell. More discussion:
<a href="https://docs.python-guide.org/dev/virtualenvs/">The Hitchhiker's Guide to Python</a>.</li>
Expand All @@ -499,23 +501,23 @@ <h2 id="setting-up-development-environment">Setting up Development Environment</
<a href="https://pip.pypa.io/en/stable/reference/pip_install/#editable-installs">"editable" package</a>
inside the directory as described below:
<ol>
<li>Start a shell in the environment <code>$ pipenv shell</code>.</li>
<li>Start a shell in the environment <code>pipenv shell</code>.</li>
<li>Install using pip.
<ol>
<li>If you downloaded the git repository named "JupyterPiDAQ"
and have used that directory to build your virtual
environment: <code>$ pip install -e ../JupyterPiDAQ/</code>.</li>
environment: <code>pip install -e ../JupyterPiDAQ/</code>.</li>
<li>If you are downloading from PyPi
<code>$ pip install -e JupyterPiDAQ</code></li>
<code>pip install -e JupyterPiDAQ</code></li>
<li>Either should install all the additional packages this
package depends upon. On a Raspberry Pi this will take
a long time. It probably will not run without at least 1 GB of swap. See:
<a href="https://www.uwosh.edu/facstaff/gutow/computer-and-programming-how-tos/installing-jupyter-on-raspberrian">Build Jupyter on a Pi
</a>.</li>
</ol></li>
<li>Still within the environment shell test
this by starting jupyter <code>$ jupyter notebook</code>. Jupyter should launch in
your browser.
<li>Still within the environment shell test this by starting jupyter
<code>jupyter nbclassic</code> or <code>jupyter lab</code>. Jupyter should launch in your
browser.
<ol>
<li>Open a new notebook using the default (Python 3) kernel.</li>
<li>In the first cell import all from DAQinstance.py:
Expand All @@ -531,10 +533,10 @@ <h2 id="setting-up-development-environment">Setting up Development Environment</
<li>If you wish, you can make this environment available to an alternate Jupyter
install as a special kernel when you are the user.
<ol>
<li>Make sure you are running in your virtual environment <code>$ pipenv shell</code>
<li>Make sure you are running in your virtual environment <code>pipenv shell</code>
in the directory for virtual environment will do that.</li>
<li>Issue the command to add this as a kernel to your personal space:
<code>$ python -m ipykernel install --user --name=&lt;name-you-want-for-kernel&gt;</code>.</li>
<code>python -m ipykernel install --user --name=&lt;name-you-want-for-kernel&gt;</code>.</li>
<li>More information is available in the Jupyter/Ipython documentation.
A simple tutorial from Nikolai Jankiev (_Parametric Thoughts_) can be
found <a href="https://janakiev.com/til/jupyter-virtual-envs/">here</a>. </li>
Expand Down Expand Up @@ -630,6 +632,13 @@ <h2 id="releasing-on-pypi">Releasing on PyPi</h2>
<h1 id="change-log">Change Log</h1>

<ul>
<li>0.8.1 (May 2, 2023)
<ul>
<li>BUG FIX: Now always waits for all data to be transferred to plot before
writing backup to a file.</li>
<li>More rapid update of display when using LabQuests.</li>
<li>Docs now recommend launching <code>jupyter nbclassic</code> for old notebook interface.</li>
</ul></li>
<li>0.8.0 (Apr. 20, 2023)
<ul>
<li>Replaced <code>NewRun()</code> command with <code>Run()</code> command. This version works in
Expand Down
Loading

0 comments on commit 9c4de90

Please sign in to comment.