PicoScope 7 Software
Available on Windows, Mac and Linux
Code: Select all
[20059.297178] usb 3-2: new high-speed USB device number 13 using xhci_hcd
[20059.423315] usb 3-2: New USB device found, idVendor=0ce9, idProduct=1007, bcdDevice= 0.05
[20059.423320] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
Code: Select all
$ cat /etc/udev/rules.d/99-picoscope.rules
SUBSYSTEM=="usb", ATTR{idVendor}=="0ce9", ATTR{idProduct}=="1007", MODE="0666" SYMLINK+="picoscope"
Code: Select all
#!/bin/env bash
PICOSCOPE_DEB_NAME="picoscope_6.14.23-4r580_all.deb"
BUILD_DIR="build"
BUILD_TEMP_DIR="${BUILD_DIR}/temp"
BUILD_OUT_DIR="${BUILD_DIR}/out"
set -e
# Install some dependencies.
dnf install mono-complete gtk-sharp2
curl -L https://labs.picotech.com/debian/pool/main/p/picoscope/picoscope_6.14.23-4r580_all.deb > "${PICOSCOPE_DEB_NAME}"
rm -rf "${BUILD_TEMP_DIR}"
mkdir -p "${BUILD_OUT_DIR}" "${BUILD_TEMP_DIR}"
cp "./${PICOSCOPE_DEB_NAME}" "${BUILD_TEMP_DIR}"
cd "${BUILD_TEMP_DIR}"
ar x "${PICOSCOPE_DEB_NAME}"
rm "${PICOSCOPE_DEB_NAME}"
tar -Jxf data.tar.xz
cp -r opt/picoscope /opt
chown -R root:root /opt/picoscope
install usr/share/applications/picoscope.desktop /usr/share/applications
# TODO: Not used on Fedora? Not sure.
# install usr/share/menu/picoscope /usr/share/menu/picoscope
cp -r usr/share/doc/picoscope /usr/share/doc/picoscope
chown -R root:root /usr/share/doc/picoscope
# Post Install script
if [ -x /opt/picoscope/bin/picoscope ];
then
if [ -e /usr/bin/picoscope ];
then
rm -rf /usr/bin/picoscope >/dev/null 2>&1 || true
fi
ln -s /opt/picoscope/bin/picoscope /usr/bin/picoscope >/dev/null 2>&1 || true
fi
#UPDATE_MENUS=$(which update-menus 2>/dev/null) || true
#
#if [ "x" != "x""$UPDATE_MENUS" ];
#then
# ( test -x "$UPDATE_MENUS" && update-menus 2>&1 ) || true
#fi
#
# loader configuration
PICO_LDCONF_D="/etc/ld.so.conf.d"
PICO_LDCONF_F="picoscope.conf"
PICO_LDCONF_P="/opt/picoscope/lib"
if [ -d "${PICO_LDCONF_D}" ];
then
if [ -e "${PICO_LDCONF_D}/${PICO_LDCONF_F}" ];
then
PICO_LDCONF_N=$( grep -m1 "^""${PICO_LDCONF_P}""\$" "${PICO_LDCONF_D}/${PICO_LDCONF_F}" ) || true
if [ "x""${PICO_LDCONF_N}" != "x""${PICO_LDCONF_P}" ];
then
echo "${PICO_LDCONF_P}" >> "${PICO_LDCONF_D}/${PICO_LDCONF_F}"
fi
else
echo "${PICO_LDCONF_P}" > "${PICO_LDCONF_D}/${PICO_LDCONF_F}"
fi
fi
# to add libraries to the cache
ldconfig || true
# TODO: Do not know what this is. Doesn't seem necessary on my setup.
# mono-mcs (>= 4.2.1),
dnf install \
https://labs.picotech.com/rpm/x86_64/libpicoipp-1.3.0-4r29.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps3000-4.0.40-3r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps3000a-2.1.40-6r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libusbdrdaq-2.0.40-1r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libpl1000-2.0.40-1r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps2000-3.0.40-3r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps2000a-2.1.40-5r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps4000-2.1.40-2r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps4000a-2.1.40-2r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps5000-2.1.40-3r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps5000a-2.1.40-5r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps6000-2.1.40-6r2131.x86_64.rpm \
https://labs.picotech.com/rpm/x86_64/libps6000a-1.0.40-0r2131.x86_64.rpm