GTK and Python based, system performance and usage monitoring tool

Overview

System Monitoring Center

GTK3 and Python 3 based, system performance and usage monitoring tool.

Platform (GNU/Linux) Download System Monitoring Center GitHub all releases GitHub release (latest by date)

Download System Monitoring Center

Download System Monitoring Center

Packaging status

Features:

  • Detailed system performance and usage usage monitoring/managing features:
    • Monitoring CPU, RAM, Disk, Network, GPU, Sensor hardware information/performance/usage
    • An always on top and semi-transparent floating summary window for performance monitoring
    • Monitoring and managing processes, users, storage devices, startup applications, services (systemd) and environment variables
    • Monitoring general system information
  • Customization options per-tab
  • Low system resource usage while monitoring
  • Language support (more languages will be added if translations are provided by contributors):
    • English, Turkish
  • Provides help information when mouse hover action is performed on several GUI objects
  • Adapts to system theme
  • Free and open sourced

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

System Monitoring Center

Dependencies:

  • Python 3 (Programming language)
  • GTK3 (GUI)
  • python3-opengl (for FPS counting)

Status:

  • The application is in Beta stage and there may be bugs to be fixed. Also settings of System Monitoring Center may be reset (very rare).
Comments
  • Multiple bugs on ARM systems and installation on Ubuntu 18

    Multiple bugs on ARM systems and installation on Ubuntu 18

    Edits: I've decided to edit this post to list the unfixed and fixed issues mentioned in this issue: Fixed:

    • computer model name for systems with devicetrees
    • usb network adapters
    • support for system services located at /lib/systemd/system
    • disk mount when multiple mounts exist in a single partition
    • support for python 3.6, hw.ids (instead of pci.ids) for support on older debian/ubuntu, gtk 3.22, util-linux 2.31
    • graphs and other UI elements no longer freeze if tab experiences an error on loading
    • gpu vendor/name for devices that use /sys/devices/gpu.0/modalias
    • gpu tab missing memory/rendering/driver/opengl info for /sys/devices/gpu.# devices

    current issues:

    • cpu name is not the best for ARM cpus (now tracking in the https://github.com/hakandundar34coding/system-monitoring-center/tree/draft)

    Original Post: bionic has gtk 3.22, no package for pci.ids, python3.6, and util-linux 2.31

    all of these are problematic for the source of this repo or the debian control file.

    lowing these requirements in the debian control file and rebuilding with version="3.24"/> replaced with version="3.22"/> almost everything works. /usr/share/misc/pci.ids is provided by pciutils in debian buster and bionic

    the only things that don't work are the network and gpu tabs. the gpu tab is broken because I am testing this on a jetson tegra x1, with the nvidia drivers and it does not use /dev/dri so errors like this are output and the rest of the UI on the other tabs breaks:

      File "/usr/share/system-monitoring-center/src/MainGUI.py", line 189, in on_main_gui_tab_radiobuttons_toggled
        self.main_gui_tab_switch_func()
      File "/usr/share/system-monitoring-center/src/MainGUI.py", line 307, in main_gui_tab_switch_func
        from Gpu import Gpu
      File "/usr/share/system-monitoring-center/src/Gpu.py", line 403, in <module>
        Gpu = Gpu()
      File "/usr/share/system-monitoring-center/src/Gpu.py", line 52, in __init__
        self.gpu_initial_func()
      File "/usr/share/system-monitoring-center/src/Gpu.py", line 168, in gpu_initial_func
        self.gpu_get_gpu_list_and_set_selected_gpu_func()
      File "/usr/share/system-monitoring-center/src/Gpu.py", line 348, in gpu_get_gpu_list_and_set_selected_gpu_func
        self.gpu_list = [gpu_name for gpu_name in os.listdir("/dev/dri/") if gpu_name.rstrip("0123456789") == "card"]
    FileNotFoundError: [Errno 2] No such file or directory: '/dev/dri/'
    

    networking breaks with this error:

    Traceback (most recent call last):
      File "/usr/share/system-monitoring-center/src/MainGUI.py", line 189, in on_main_gui_tab_radiobuttons_toggled
        self.main_gui_tab_switch_func()
      File "/usr/share/system-monitoring-center/src/MainGUI.py", line 293, in main_gui_tab_switch_func
        from Network import Network
      File "/usr/share/system-monitoring-center/src/Network.py", line 321, in <module>
        Network = Network()
      File "/usr/share/system-monitoring-center/src/Network.py", line 49, in __init__
        self.network_initial_func()
      File "/usr/share/system-monitoring-center/src/Network.py", line 173, in network_initial_func
        with open("/sys/class/net/" + selected_network_card + "/device/vendor") as reader:
    FileNotFoundError: [Errno 2] No such file or directory: '/sys/class/net/enx0050b62942ef/device/vendor'
    

    note I'm using a perfectly functional usb network card. this folder exits /sys/class/net/enx0050b62942ef/device , there just isn't a vendor file in there

    opened by theofficialgman 63
  • Improvements for emmc/sd devices, GPU tab and .deb packaging

    Improvements for emmc/sd devices, GPU tab and .deb packaging

    copying the relevant info over to this independent issue https://github.com/hakandundar34coding/system-monitoring-center/issues/40#issuecomment-1081259315:

    Vendor information can be get for MMC devices by using some files. Can you write output of this command: grep . /sys/class/block/mmcblk0/device/*

    grep . /sys/class/block/mmcblk0/device/*
    grep: /sys/class/block/mmcblk0/device/block: Is a directory
    /sys/class/block/mmcblk0/device/cid:035344534e35313280fff7b17b015700
    /sys/class/block/mmcblk0/device/csd:400e0032db79000ee5b77f800a404000
    /sys/class/block/mmcblk0/device/date:07/2021
    grep: /sys/class/block/mmcblk0/device/driver: Is a directory
    /sys/class/block/mmcblk0/device/dsr:0x404
    /sys/class/block/mmcblk0/device/erase_size:512
    /sys/class/block/mmcblk0/device/error_stats:0
    /sys/class/block/mmcblk0/device/fwrev:0x0
    /sys/class/block/mmcblk0/device/hwrev:0x8
    /sys/class/block/mmcblk0/device/ios_timing:timing spec:	6 (sd uhs SDR104)
    /sys/class/block/mmcblk0/device/manfid:0x000003
    /sys/class/block/mmcblk0/device/name:SN512
    /sys/class/block/mmcblk0/device/ocr:0x00200000
    /sys/class/block/mmcblk0/device/oemid:0x5344
    grep: /sys/class/block/mmcblk0/device/power: Is a directory
    /sys/class/block/mmcblk0/device/preferred_erase_size:4194304
    /sys/class/block/mmcblk0/device/scr:0245848700000000
    /sys/class/block/mmcblk0/device/serial:0xfff7b17b
    /sys/class/block/mmcblk0/device/speed_class:4
    /sys/class/block/mmcblk0/device/ssr:0000000008000000040090000f05391e000800000002fc0003000000000000000000000000000000000000000000000000000000000000000000000000000000
    grep: /sys/class/block/mmcblk0/device/subsystem: Is a directory
    /sys/class/block/mmcblk0/device/type:SD
    /sys/class/block/mmcblk0/device/uevent:DRIVER=mmcblk
    /sys/class/block/mmcblk0/device/uevent:MMC_TYPE=SD
    /sys/class/block/mmcblk0/device/uevent:MMC_NAME=SN512
    /sys/class/block/mmcblk0/device/uevent:MODALIAS=mmc:block
    

    this is a sandisk card, decoding the ID should come back to that.

    opened by theofficialgman 55
  • Raspberry Pi specific improvements

    Raspberry Pi specific improvements

    Raspberry Pi operating systems include a command called vcgencmd, which can obtain device-specific information that is not reflected in more global locations. While ideally a system monitor should be able to rely on standardized locations for parameters, that simply is not the case in the ARM world. (Maybe in 5 years...)

    Link to vcgencmd documentation

    Here are the specific ways in which System-Monitoring-Center can use vcgencmd:

    • To determine total RAM on the device, regardless of CPU allocation: vcgencmd get_config total_mem Example output: total_mem=8192 (in megabytes)
    • To determine memory allocated to the GPU: vcgencmd get_mem gpu Example output: gpu=128M (in megabytes)
    • To determine GPU frequency: vcgencmd get_config gpu_freq Example output: gpu_freq=700 (in megahertz)

    Also I found a possible way to determine L1/L2/L3 cache size, but it involves compiling a kernel module. :( This is probably more trouble than it's worth, but is still interesting to document.

    opened by Botspot 32
  • Don't show loop and ramdisk devices by default

    Don't show loop and ramdisk devices by default

    It's better if loop devices don't show by default in Performance tab --> Disk

    Loop devices /dev/loop* are usually squashfs or iso files (read only).

    Thanks.

    opened by babam86 22
  • No graphics after installing from pip version?

    No graphics after installing from pip version?

    I installed the program via pip ... and unfortunately I have some errors, i.e. no graphics, icons in the program? Previously it was OK if I was installing from .deb However, I wanted to be able to do a simple upgrade ... can I somehow fix / install some packages ??? 2 1 Ps.I restarted the system ... and the option did not help either touch ~/.local/share/*

    opened by ski007 16
  • Disk Usage Of Parent Disk And Disk Model For NVMe SSDs Are Not Shown

    Disk Usage Of Parent Disk And Disk Model For NVMe SSDs Are Not Shown

    Disk tab automatically selects the home partition, which results, at least with my SSD, in no metrics displayed. Metrics are displayed correctly upon selecting the DDS device e.g nvme0n1 instead of nvme0n1p6, which was selected by default. - Screenshot and debug message:

    Traceback (most recent call last):
      File "/usr/share/system-monitoring-center/src/Disk.py", line 271, in disk_loop_func
        disk_get_device_partition_model_name_mount_point_func()
      File "/usr/share/system-monitoring-center/src/Disk.py", line 385, in disk_get_device_partition_model_name_mount_point_func
        with open("/sys/class/block/" + parent_disk + "/device/model") as reader:
    FileNotFoundError: [Errno 2] No such file or directory: '/sys/class/block/nvme0n1p/device/model'
    

    Additional information:

    [gova@fedora ~]$ ls /sys/class/block/
    total 0
    drwxr-xr-x.  2 root root 0 Dec  2 14:30 ./
    drwxr-xr-x. 76 root root 0 Dec  2 13:47 ../
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 nvme0n1 -> ../../devices/pci0000:00/0000:00:02.4/0000:04:00.0/nvme/nvme0/nvme0n1/
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 nvme0n1p1 -> ../../devices/pci0000:00/0000:00:02.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p1/
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 nvme0n1p2 -> ../../devices/pci0000:00/0000:00:02.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p2/
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 nvme0n1p3 -> ../../devices/pci0000:00/0000:00:02.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p3/
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 nvme0n1p4 -> ../../devices/pci0000:00/0000:00:02.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p4/
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 nvme0n1p5 -> ../../devices/pci0000:00/0000:00:02.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p5/
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 nvme0n1p6 -> ../../devices/pci0000:00/0000:00:02.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p6/
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 nvme0n1p7 -> ../../devices/pci0000:00/0000:00:02.4/0000:04:00.0/nvme/nvme0/nvme0n1/nvme0n1p7/
    lrwxrwxrwx.  1 root root 0 Dec  2 14:30 zram0 -> ../../devices/virtual/block/zram0/
    
    [gova@fedora ~]$ cat /proc/mounts 
    proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0
    sysfs /sys sysfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0
    devtmpfs /dev devtmpfs rw,seclabel,nosuid,size=7859896k,nr_inodes=1964974,mode=755,inode64 0 0
    securityfs /sys/kernel/security securityfs rw,nosuid,nodev,noexec,relatime 0 0
    tmpfs /dev/shm tmpfs rw,seclabel,nosuid,nodev,inode64 0 0
    devpts /dev/pts devpts rw,seclabel,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0
    tmpfs /run tmpfs rw,seclabel,nosuid,nodev,size=3168180k,nr_inodes=819200,mode=755,inode64 0 0
    cgroup2 /sys/fs/cgroup cgroup2 rw,seclabel,nosuid,nodev,noexec,relatime,nsdelegate,memory_recursiveprot 0 0
    pstore /sys/fs/pstore pstore rw,seclabel,nosuid,nodev,noexec,relatime 0 0
    efivarfs /sys/firmware/efi/efivars efivarfs rw,nosuid,nodev,noexec,relatime 0 0
    none /sys/fs/bpf bpf rw,nosuid,nodev,noexec,relatime,mode=700 0 0
    /dev/nvme0n1p6 / btrfs rw,seclabel,relatime,compress=zstd:1,ssd,space_cache,subvolid=257,subvol=/root 0 0
    selinuxfs /sys/fs/selinux selinuxfs rw,nosuid,noexec,relatime 0 0
    systemd-1 /proc/sys/fs/binfmt_misc autofs rw,relatime,fd=31,pgrp=1,timeout=0,minproto=5,maxproto=5,direct,pipe_ino=28223 0 0
    mqueue /dev/mqueue mqueue rw,seclabel,nosuid,nodev,noexec,relatime 0 0
    debugfs /sys/kernel/debug debugfs rw,seclabel,nosuid,nodev,noexec,relatime 0 0
    tracefs /sys/kernel/tracing tracefs rw,seclabel,nosuid,nodev,noexec,relatime 0 0
    hugetlbfs /dev/hugepages hugetlbfs rw,seclabel,relatime,pagesize=2M 0 0
    fusectl /sys/fs/fuse/connections fusectl rw,nosuid,nodev,noexec,relatime 0 0
    configfs /sys/kernel/config configfs rw,nosuid,nodev,noexec,relatime 0 0
    /dev/nvme0n1p6 /home btrfs rw,seclabel,relatime,compress=zstd:1,ssd,space_cache,subvolid=256,subvol=/home 0 0
    tmpfs /tmp tmpfs rw,seclabel,nosuid,nodev,size=7920444k,nr_inodes=409600,inode64 0 0
    /dev/nvme0n1p4 /mnt/BA9E0A209E09D633 fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
    /dev/nvme0n1p5 /boot ext4 rw,seclabel,relatime 0 0
    /dev/nvme0n1p3 /mnt/12DAA115DAA0F65F fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
    /dev/nvme0n1p7 /mnt/01D7E10FC8B40900 fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,allow_other,blksize=4096 0 0
    /dev/nvme0n1p1 /boot/efi vfat rw,relatime,fmask=0077,dmask=0077,codepage=437,iocharset=ascii,shortname=winnt,errors=remount-ro 0 0
    sunrpc /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0
    tmpfs /run/user/1000 tmpfs rw,seclabel,nosuid,nodev,relatime,size=1584088k,nr_inodes=396022,mode=700,uid=1000,gid=1000,inode64 0 0
    gvfsd-fuse /run/user/1000/gvfs fuse.gvfsd-fuse rw,nosuid,nodev,relatime,user_id=1000,group_id=1000 0 0
    portal /run/user/1000/doc fuse.portal rw,nosuid,nodev,relatime,user_id=1000,group_id=1000 0 0
    portal /root/.cache/doc fuse.portal rw,nosuid,nodev,relatime,user_id=0,group_id=0 0 0
    gvfsd-fuse /root/.cache/gvfs fuse.gvfsd-fuse rw,nosuid,nodev,relatime,user_id=0,group_id=0 0 0
    
    opened by govarthenan 16
  • Some dependency issues on from AUR

    Some dependency issues on from AUR

    I would like to thank you for the wonderful piece of software you have created here. It is very polished and works amazingly well.

    Now, onto what I found.

    When trying to download from the AUR in Manjaro it kept chucking an error for python-tomli 2.0.1-1. This is down to the fact that the repository cannot be found to download the required package. I understand that this is an issue you have no control over so I am more then happy to chalk it up to a non issue.

    When installing via pip instead it works perfectly fine on Manjaro. No bothers at all.

    I have also made a video about this that will be published tomorrow. Again, thank you for the software and I hope you enjoy the video. Have a good day!

    https://youtu.be/4YIqaUx63Lg

    opened by NickMatthews-1 15
  • Displaying temperature for Nvidia GPU

    Displaying temperature for Nvidia GPU

    Based on the screenshots, it does show temperatures for nouveau drivers, but are you able to have it display it for Nvidia proprietary drivers too by any chance?

    opened by Hayashi-Tensai 13
  • [Feature Request]  Use of Colors in Process enumerator section

    [Feature Request] Use of Colors in Process enumerator section

    Hi,

    I'm really enjoying using System Monitoring Center and I spend a lot of time in the "Processes" section...

    It is real useful and well done. I only have a rather basic suggestion:

    I would find it easier to read through during analytical runs, where a more extensive use of colourful icons and text colouring be implemented...

    Finding things at a glance is a bit too monochromatic to make it easy to rapidly id abstractions in the process load...

    Also the process Tree while really useful actually adds significantly to the monochromatic noise...

    Also I'm rather grateful you update so regularly. It's a really good tool, very useful...

    opened by The-Real-Admin-Guy 11
  • Possible to implement an update notification?

    Possible to implement an update notification?

    It would be nice to have a feature where it informs the user of an update when a new version is available, or else it will be hard to tell when a new version releases

    opened by Hayashi-Tensai 9
  • Files are installed in the wrong place

    Files are installed in the wrong place

    I tried the v1.12.1 and v1.12.1-deb_for_stores tags with the same result.

    Using setup.py build / install:

    .
    ├── systemmonitoringcenter
    │   ├── applications
    │   ├── database
    │   ├── icons
    │   │   └── hicolor
    │   │       └── scalable
    │   │           ├── actions
    │   │           └── apps
    │   ├── locale
    │   │   ├── cs
    │   │   │   └── LC_MESSAGES
    │   │   ├── pl
    │   │   │   └── LC_MESSAGES
    │   │   ├── pt_BR
    │   │   │   └── LC_MESSAGES
    │   │   └── tr
    │   │       └── LC_MESSAGES
    │   ├── src
    │   └── ui
    └── usr
        ├── bin
        └── lib
            └── python3.10
                └── site-packages
                    ├── systemmonitoringcenter
                    │   └── __pycache__
                    └── system_monitoring_center-1.12.1-py3.10.egg-info
    
    

    Using build / installer:

    
    └── usr
        ├── bin
        └── lib
            └── python3.10
                └── site-packages
                    ├── systemmonitoringcenter
                    │   ├── applications
                    │   ├── database
                    │   ├── icons
                    │   │   └── hicolor
                    │   │       └── scalable
                    │   │           ├── actions
                    │   │           └── apps
                    │   ├── locale
                    │   │   ├── cs
                    │   │   │   └── LC_MESSAGES
                    │   │   ├── pl
                    │   │   │   └── LC_MESSAGES
                    │   │   ├── pt_BR
                    │   │   │   └── LC_MESSAGES
                    │   │   └── tr
                    │   │       └── LC_MESSAGES
                    │   ├── __pycache__
                    │   ├── src
                    │   │   └── __pycache__
                    │   └── ui
                    └── system_monitoring_center-1.12.1.dist-info
    
    opened by yochananmarqos 9
Releases(v1.39.0)
Owner
Hakan Dündar
Hakan Dündar
A simple, transparent, open-source key logger, written in Python, for tracking your own key-usage statistics.

A simple, transparent, open-source key logger, written in Python, for tracking your own key-usage statistics, originally intended for keyboard layout optimization.

Ga68 56 Jan 3, 2023
Scout: an open-source version of the monitoring tool

Badger Scout Scout is an open-source version of the monitoring tool used by Badg

Badger Finance 2 Jan 13, 2022
Soda SQL Data testing, monitoring and profiling for SQL accessible data.

Soda SQL Data testing, monitoring and profiling for SQL accessible data. What does Soda SQL do? Soda SQL allows you to Stop your pipeline when bad dat

Soda Data Monitoring 51 Jan 1, 2023
changedetection.io - The best and simplest self-hosted website change detection monitoring service

changedetection.io - The best and simplest self-hosted website change detection monitoring service. An alternative to Visualping, Watchtower etc. Designed for simplicity - the main goal is to simply monitor which websites had a text change. Open source web page change detection.

null 7.3k Jan 1, 2023
A demo of Prometheus+Grafana for monitoring an ML model served with FastAPI.

ml-monitoring Jeremy Jordan This repository provides an example setup for monitoring an ML system deployed on Kubernetes.

Jeremy Jordan 176 Jan 1, 2023
Ransomware leak site monitoring

RansomWatch RansomWatch is a ransomware leak site monitoring tool. It will scrape all of the entries on various ransomware leak sites, store the data

Zander Work 278 Dec 31, 2022
A Prometheus exporter for monitoring & analyzing Grafana Labs' technical documentation

grafana-docs-exporter A Prometheus exporter for monitoring & analyzing Grafana Labs' technical documentation Here is the public endpoint.

Matt Abrams 5 May 2, 2022
dash-manufacture-spc-dashboard is a dashboard for monitoring read-time process quality along manufacture production line

In our solution based on plotly, dash and influxdb, the user will firstly generate the specifications for different robots, and then a wide range of interactive visualizations for different machines for machine power, machine cost, and total cost based on the energy time and total energy getting dynamically from sensors. If a threshold is met, the alert email is generated for further operation.

Dequn Teng 1 Feb 13, 2022
Python script to scan log files/system for unauthorized access around system

checkLogs Python script to scan log files/system for unauthorized access around Linux systems Table of contents General info Getting started Usage Gen

James Kelly 1 Feb 25, 2022
This is a key logger based in python which when executed records all the keystrokes of the system it has been executed on .

This is a key logger based in python which when executed records all the keystrokes of the system it has been executed on

Purbayan Majumder 0 Mar 28, 2022
Monitor creation, deletion and changes to LDAP objects live during your pentest or system administration!

LDAP Monitor Monitor creation, deletion and changes to LDAP objects live during your pentest or system administration! With this tool you can quickly

Podalirius 500 Dec 28, 2022
Logging system for the TPC software.

tpc_logger Logging system for the TPC software. The TPC Logger class provides a singleton for logging information within C++ code or in the python API

UC Davis Machine Learning 1 Jan 10, 2022
This is a wonderful simple python tool used to store the keyboard log.

Keylogger This is a wonderful simple python tool used to store the keyboard log. Record your keys. It will capture passwords and credentials in a comp

Rithin Lehan 2 Nov 25, 2021
APT-Hunter is Threat Hunting tool for windows event logs

APT-Hunter is Threat Hunting tool for windows event logs which made by purple team mindset to provide detect APT movements hidden in the sea of windows event logs to decrease the time to uncover suspicious activity

null 824 Jan 8, 2023
Command-line tool that instantly fetches Stack Overflow results when an exception is thrown

rebound Rebound is a command-line tool that instantly fetches Stack Overflow results when an exception is thrown. Just use the rebound command to exec

Jonathan Shobrook 3.9k Jan 3, 2023
Espion is a mini-keylogger tool that keeps track of all keys a user presses on his/her keyboard

Espion is a mini-keylogger tool that keeps track of all keys a user presses on his/her keyboard. The details get displayed on the terminal window and also stored in a log file.

Anurag.R.Simha 1 Apr 24, 2022
A very basic esp32-based logic analyzer capable of sampling digital signals at up to ~3.2MHz.

A very basic esp32-based logic analyzer capable of sampling digital signals at up to ~3.2MHz.

Davide Della Giustina 43 Dec 27, 2022
Pretty-print tabular data in Python, a library and a command-line utility. Repository migrated from bitbucket.org/astanin/python-tabulate.

python-tabulate Pretty-print tabular data in Python, a library and a command-line utility. The main use cases of the library are: printing small table

Sergey Astanin 1.5k Jan 6, 2023
Progressbar 2 - A progress bar for Python 2 and Python 3 - "pip install progressbar2"

Text progress bar library for Python. Travis status: Coverage: Install The package can be installed through pip (this is the recommended method): pip

Rick van Hattem 795 Dec 18, 2022