Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
58 changes: 58 additions & 0 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
name: Tests

on:
push:
pull_request:
workflow_dispatch:

permissions:
contents: read

jobs:
test:
name: Python ${{ matrix.python-version }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12"]

steps:
- name: Check out repository
uses: actions/checkout@v5

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
cache: pip

- name: Install package and test dependencies
run: |
python -m pip install --upgrade pip
python -m pip install --editable ".[test]"

- name: Run static checks
run: ruff check sciopy tests

- name: Run tests
run: python -m pytest

build:
name: Build distributions
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v5

- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.12"
cache: pip

- name: Install build frontend
run: python -m pip install --upgrade build

- name: Build source and wheel distributions
run: python -m build
34 changes: 18 additions & 16 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,8 +2,6 @@

This package offers the serial interface for communication with an EIT device from ScioSpec. Commands can be written serially and the system response can be read out. With the current version, it is possible to start and stop measurements with defined burst counts and to read out the measurement data. In addition, the measurement data is packed into a data class for better further processing.

**WIP** Communication with ISX-3

## Installation

### Windows: USB Driver Setup
Expand All @@ -18,6 +16,19 @@ To communicate with the Sciospec instrument over USB on Windows, you must instal
> To restore the original behavior, you will need to uninstall the driver manually.
> *(This rollback process has not been fully tested.)*


### Linux/Unix Platforms

Clone the repository, then create and activate the Conda environment:

```bash
conda create --file environment.yml
conda activate sciopy
pip install -e .
```

- FTDI Driver installation: https://www.ftdichip.com/old2020/Drivers/D2XX.htm

#### Install `libusb` using Zadig

1. Download and install Zadig:
Expand All @@ -35,26 +46,17 @@ To communicate with the Sciospec instrument over USB on Windows, you must instal

---

### All Platforms

Clone the repository, then create and activate the Conda environment:

```bash
conda create --file environment.yml
conda activate sciopy
pip install -e .
```





## Contact

If you have any ideas or other suggestions, please don't hesitate to contact me.

Email: jacob.thoenes@uni-rostock.de

> [!TIP]
> I developed and tested this package on an Ubuntu/Linux system. If you encounter errors or issues on other operating systems and find a solution, you are welcome to contribute it to this repository.
>
> Thank you!

___

- FTDI Driver installation: https://www.ftdichip.com/old2020/Drivers/D2XX.htm
6 changes: 4 additions & 2 deletions docs/_autosummary/sciopy.EIT_16_32_64_128.rst
Original file line number Diff line number Diff line change
Expand Up @@ -25,16 +25,18 @@
~EIT_16_32_64_128.SoftwareReset
~EIT_16_32_64_128.StartStopMeasurement
~EIT_16_32_64_128.SystemMessageCallback
~EIT_16_32_64_128.SystemMessageCallback_usb_fs
~EIT_16_32_64_128.SystemMessageCallback_usb_hs
~EIT_16_32_64_128.__init__
~EIT_16_32_64_128.connect_device_FS
~EIT_16_32_64_128.connect_device_HS
~EIT_16_32_64_128.disconnect_device
~EIT_16_32_64_128.get_data_as_matrix
~EIT_16_32_64_128.init_channel_group
~EIT_16_32_64_128.read_message
~EIT_16_32_64_128.send_message
~EIT_16_32_64_128.update_BurstCount
~EIT_16_32_64_128.update_ExcitationFrequency
~EIT_16_32_64_128.update_FrameRate
~EIT_16_32_64_128.update_measurement_mode
~EIT_16_32_64_128.write_command_string


Expand Down
40 changes: 38 additions & 2 deletions docs/_autosummary/sciopy.ISX_3.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,27 +13,63 @@

.. autosummary::

~ISX_3.Action
~ISX_3.AbortDCBias
~ISX_3.AcknowledgeCompensation
~ISX_3.AddFrequencyList
~ISX_3.AddFrequencyPoint
~ISX_3.ClearFE_Settings
~ISX_3.GetARMFirmwareID
~ISX_3.GetDCBias
~ISX_3.GetDeviceID
~ISX_3.GetEthernetConfiguration
~ISX_3.GetExtensionPortChannel
~ISX_3.GetExtensionPortModule
~ISX_3.GetFE_Settings
~ISX_3.GetFPGAFirmwareID
~ISX_3.GetFPGAfirmwareID
~ISX_3.GetFrequencyCount
~ISX_3.GetFrequencyList
~ISX_3.GetFrequencyPoint
~ISX_3.GetOptions
~ISX_3.GetSetup
~ISX_3.GetSyncTime
~ISX_3.InitSetup
~ISX_3.LoadSetup
~ISX_3.ResetCompensationData
~ISX_3.ResetSystem
~ISX_3.SaveSettings
~ISX_3.SaveSetup
~ISX_3.SetAmplitude
~ISX_3.SetCompensationData
~ISX_3.SetCompensationLoad
~ISX_3.SetDCBias
~ISX_3.SetDCBiasValue
~ISX_3.SetEthernetConfiguration
~ISX_3.SetExtensionPortChannel
~ISX_3.SetFE_Settings
~ISX_3.SetMeasurementSetup
~ISX_3.SetOptions
~ISX_3.SetSetup
~ISX_3.SetSyncTime
~ISX_3.SetTCPWatchdog
~ISX_3.SoftwareReset
~ISX_3.StartCompensation
~ISX_3.StartMeasure
~ISX_3.StartStopMeasurement
~ISX_3.StopMeasure
~ISX_3.SystemMessageCallback
~ISX_3.__init__
~ISX_3.build_frame
~ISX_3.connect_device_FS
~ISX_3.connect_device_USB2
~ISX_3.decode_frame
~ISX_3.describe_frame
~ISX_3.disconnect_device
~ISX_3.disconnect_device_USB2
~ISX_3.parse_received_bytes
~ISX_3.read_message
~ISX_3.send_command
~ISX_3.send_message
~ISX_3.setup_as_dict
~ISX_3.write_command_string


Expand Down
5 changes: 0 additions & 5 deletions docs/_autosummary/sciopy.com_util.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,9 @@
.. autosummary::

available_serial_ports
bytesarray_to_byteslist
bytesarray_to_float
bytesarray_to_int
clTbt_dp
clTbt_sp
del_hex_in_list
parse_single_frame
reshape_full_message_in_bursts
single_hex_to_int
split_bursts_in_frames

1 change: 1 addition & 0 deletions docs/_autosummary/sciopy.sciopy_dataclasses.rst
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@

.. autosummary::

EITFrame
EisMeasurementSetup
EitMeasurementSetup
PreperationConfig
Expand Down
Loading
Loading