Outils pour utilisateurs

Outils du site


Panneau latéral

bitscope

BITSCOPE POWER

Il est pas mal ce petit oscilloscope USB. 20 MHz en analogique, API python, et il est pas cher.

Ces quelques lignes vont servir de pense bête pour installer et configurer un système avec plusieurs bitscope et pilotage distant.
Il y aura aussi qques astuces que j'ai trouvées pour contourner des bugs ou limitations.

Installer la bitlib

Le fabriquant fournit une bibliothèque/driver qu'il appelle bitlib, avec des bindings dans plusieurs langages, dont Python.

Il faut :

  1. D'abord installer la bitlib au niveau système
  2. Installer le binding python (idéalement dans un env)

1- Installer la bitlib au niveau système

J'ai préparé un petit script, inspiré de l'installateur pour rpi (.deb), qui marche aussi pour mon archlinux.

# dans le dossier de la bitlib
./install_bitlib

Normalement il n'y a pas besoin de reboot.

2- Installer les bindings python (dans un env)

Comme le binding a été codé pour Python2, il nous faut faire qques modifications du fichier bitlibmodule.c
Un barbu s'en est occupé pour nous, le résultat est dans le fichier bitlibmodule.c.PYTHON3

# Travaillons dans un env dédié (création de l'env à faire avant)
conda activate bitscope
 
#  Copier la version Python3
cp bitlibmodule.c.PYTHON3 bitlibmodule.c
 
# Installer le module
python setup-bitlib.py install

Voilà, reste plus qu'à faire de l'électronique

Bitscope server

L'idée est de connecter un (ou plusieurs bitscope) sur des rpi, et d'y accéder depuis un ordinateur (ou un autre rpi) distant via ethernet.

  • L'installation de la bitlib n'est pas nécessaire
  • Installer le bitscope-server dispo au format .deb sur les rpi sous raspbian dpkg -i bitscope-server.deb

Et Foilà !

Maintenant, on voudrait que ce truc se lance tout seule au démarrage du rpi. Aujourd'hui (en octobre 2019), raspbian tourne avec systemd, on peut donc :

  • créer un fichier /etc/systemd/system/bitscope.service contenant :
[Unit]
Description=bitscope server
After=network.target

[Service]
Type=simple
User=root
Group=root
WorkingDirectory=/home/pi/
ExecStart=/usr/bin/bitscope-server

[Install]
WantedBy=multi-user.target
  • On peut ensuite activer l'auto-launch avec systemctl enable bitscope et démarrer immédiatement avec systemct start bitscope

Note: on pourra accéder à ce bitscope avec le lien BL_Open(“UDP:<ip_rpi>”), par ex: BL_Open(“UDP:192.168.1.99”)

bitscope.txt · Dernière modification: 2019/10/20 18:02 de luc