Skip to content

cmsua/electrical-testing-gui

Repository files navigation

Hexaboard Electrical Testing GUI

Dependencies

This project requires hexactrl-sw. To build from scratch, first install ipbus, then run the following commands:

# Install Dependencies
sudo dnf install -y epel-release
sudo dnf update
sudo dnf install -y cmake zeromq zeromq-devel cppzmq-devel libyaml libyaml-devel yaml-cpp yaml-cpp-devel boost boost-devel python3 python3-devel autoconf-archive pugixml pugixml-devel

# Clone Repo
git clone --recursive ssh://[email protected]:7999/hgcal-daq-sw/hexactrl-sw.git; cd hexactrl-sw

# Build
mkdir build & cd build
cmake -DBUILD_CLIENT=ON ..
make -j8

# Install
sudo make install
sudo cp /opt/hexactrl/ROCv3/share/daq-client.service /etc/systemd/system

Restarting systemd services requires use of sudo. A system administrator should set the system up accordingly - a sample configuration can be created by running the following command:

echo "$USER ALL=NOPASSWD: /usr/bin/systemctl start daq-client,/usr/bin/systemctl restart daq-client,/usr/bin/systemctl stop daq-client" | sudo tee /etc/sudoers.d/99_allow_restart_daq_client

Using the phone as a scanner requires installing dotool. Note that this is insecure and should not be used under normal circumstances, as anyone with access to the network can control your device's keyboard or run unescaped shell commands as your user. Once installed, the server can be ran in the background by calling python3 scan-server.py.

# Install Dependencies
sudo dnf install -y golang libxkbcommon-devel scdoc

# Clone & Install
git clone https://git.sr.ht/~geb/dotool; cd dotool
./build.sh && sudo ./build.sh install
sudo udevadm control --reload && sudo udevadm trigger

# Add user to group
sudo usermod $USER -aG uinput

# Reboot for settings to take effect
sudo reboot

Installation

This repository is designed to install from source.

Python 3.11 exactly is required for this program due to using type | None sytnax (thus requiring a newer version) but downstreaam requiring asyncore (removed in 3.12)

# Clone the Repository
# This clone command is for the University of Alabama
git clone --recursive ssh://[email protected]:7999/hgcal-daq-sw/electrical-testing-gui.git
cd electrical-testing-gui

# Setup a Virtual Environment
python3.11 -m venv .venv
source .venv/bin/activate
pip3 install -r requirements.txt

Running the program then becomes as simple as

source .venv/bin/activate
python3 application.py -p configs/config-name.yaml

The optional parameter -S may be used to disable update checking.

A system administrator can modify hgcal-testing-gui.desktop to contain the proper parameters for their setup, and copy the resulting file to /usr/share/applciations or ~/.local/share/applications/ to add the GUI to the desktop environment's applications menu.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •