+
Skip to content
/ incolata Public

Incolata is an inofficial, experimental, free, and open source fit-testing application, compatible with the PortaCount 8020 / 8020A / 8020M.

License

Notifications You must be signed in to change notification settings

ahunt/incolata

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Incolata

This is a very hacky proof of concept, and entirely unvalidated, fit-testing application.

Main Window, showing a test in progress

Supported

  • Devices: 8020A, 8020Mgen1. (8020's should also work, but have not been tested.)
  • Protocols: OSHA classic and modified (fast), Crash2.5, ISO, and HSE.
    • Other protocols can be easily added but (for the time being) require recompilation.
  • Platforms: Linux, MacOS.
  • CSV logs containing per-exercise FFs.

Planned

  • Dual-device support (e.g. concurrent total particle count + leak integrity measurement).
  • 8020Mgen2 support.
  • Raw data logging.
  • Windows support.
  • Custom protocol support (without having to edit sources, followed by recompiling).
  • 8095 support. Its already possible to run tests with an 8095, but this isn't recorded anywhere (ideally logs would be annotated somehow).

Not planned

  • Support for 803X and 804X. There are too few of these in the community to justify the effort (at least for now).
  • Support for non-TSI CPCs, except for perhaps the OpenCPC/OpenAeros if/when it becomees available.

Docs

Development guide

Linux

Dependencies:

  • Rust+Cargo
  • Qt6, Qt6-Charts ('qt6-charts-dev' or equivalent should pull in all the right Qt deps)
  • CMake
  • GCC or other C++ compiler

Nice-to-have:

  • Ninja (e.g. 'ninja-build') - the example build instructions below use ninja, but you can also tell CMake to build using another tool if you prefer.

Build it:

See also the Github Actions Workflow at: https://github.com/ahunt/incolata/blob/main/.github/workflows/checks.yml

I typically run something like:

git submodule init
cmake -DCMAKE_BUILD_TYPE=Debug -G Ninja -S . -B build/Debug
cd build/Debug && ninja

Tip

You can also open the project in QtCreator, which should take care of configuring and building, modulo submodule init.

Static Analysis

(Requires installing clang.)

scan-build cmake . -B build/analysis
cd build/analysis && scan-build make

Windows

TODO

Note

Some, but not all, Serial->USB adapters work out of the box. Here it's the opposite of the OSX situation: my Aten (with Prolific chip) just works, and my FTDI FT232R-based adapter required me to install their driver.

OSX

  1. Install Homebrew

  2. brew install git rust cmake qt ninja
    git clone https://github.com/ahunt/incolata.git && cd incolata &&  && git submodule init & git submodule update
    cmake -DCMAKE_BUILD_TYPE=Debug -G Ninja -S . -B build/Debug
    cd build/Debug && ninja && open incolata.app
    

Note

Some, but not all, Serial->USB adapters work out of the OSX. My (possibly fake) FTDI FT232R-based adapter does work, whereas my Aten (with Prolific chip) requires installing a Driver. (Don't forget to unblock the driver via System Settings->Privacy & Security->Enable System Extensions after installation.) Prolific offer a PL2303 Serial Driver on the app store, which might also work for the same Aten adapter, but I have not tested it.

Architecture

Actual test machinery will live in libp8020a. Incolata is just a (not so) nice (yet) GUI wrapper around that.

There is no real architecture to speak of, yet.

About

Incolata is an inofficial, experimental, free, and open source fit-testing application, compatible with the PortaCount 8020 / 8020A / 8020M.

Topics

Resources

License

Stars

Watchers

Forks

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载