Altera BeMicro SDK JTAG under Linux

15 Mar

Fedora 21

sudo yum install libpng12

vi ~/.profile
export PATH=~/altera/14.1/quartus/bin:$PATH

sudo chcon -t textrel_shlib_t ~/altera/14.1/quartus/linux64/*.so
sudo chcon -t textrel_shlib_t ~/altera/14.1/quartus/linux32/*.so

sudo vi /etc/udev/rules.d/99-linux_gpib_ni_usb.rules
SUBSYSTEMS==”usb”, ATTRS{idVendor}==”09fb”, ATTRS{idProduct}==”6001″, MODE:=”0666″
sudo udevadm control –reload-rules

sudo mkdir /etc/jtagd
sudo cp ~/altera/14.1/quartus/linux64/pgm_parts.txt /etc/jtagd/jtagd.pgm_parts
touch ~/.jtag.conf

sudo vi /etc/rc.local
echo 356 40000 32 32000 > /proc/sys/kernel/sem

Must do this once:

Verify operation with:

Destination path for updates should be ~/altera/14.1/

If Quartus quits unexpectedly:
mv ~/altera/14.1/quartus/linux64/ ~/aartus/linux64/

Issues with altpll megawizard freezing up:

Quartus II is a convoluted piece of shit, and buggy under Linux. Sorry Altera, returning my BeMicro SDK and sticking with Xilinx. Been a while since I used their development environment, but at least it works.


21 Dec

Prior to installation of gqrx make sure pulseaudio is available during build by installing the following:




Install gqrx:

git clone

cd gqrx

mkdir build

cd build

qmake ..

make -j8

sudo make install

Typical device strings:

For the b200:

For the X310 with LFRX in slot 2:

For the X310 with WBX in slot 1:

For the N210 with LFRX:

When switching between devices in gqrx the gain control changes will segfault the application.  Fix this by deleting the “gains” section in:


Sending gqrx audio to fldigi:

Install fldigi with yum

Configure fldigi sound card to use pulseaudio, leaving server string empty

Launch pulseaudio volume control, and under recording tab, fldigi capture from monitor of built-in audio analog stereo, and set level to 0 dB.

Adjust fldigi waterfall upper signal level and signal range.

Adding new systems to Hyperspin

28 Nov

How to add a new system to Hyperspin.

This example will add Colecovision.

Edit this file:

E:\HyperSpin\Databases\Main Menu\Main Menu.xml

To add a system entry:

<game name=”Colecovision”/>

Create a new ini file by copying an existing one (such as Atari 5200.ini):



E:\HyperSpin\HyperSync Cloud\HyperSync Loader.exe

Add Atari 2600, set all to Default, and sync database.



Select GLOBAL system and click Emulators tab.

Select MESS and change path to:


Click Settings tab and change 7z Enabled to True and Extract Path to:


Select Colecovision system and click Emulators tab.

Set Rom Paths to:

E:\HyperSpin\HyperSpin_Ready\Cart Systems\Coleco – ColecoVision

Set Default Emulator to MESS



and test a game to be sure it launches.

Setting up NI GPIB-USB-HS under Linux

26 Jul


Mostly stolen from:

Note unlike the ni_usb_b, this is the ni_usb_hs so no firmware has to be loaded at boot, thus gpib_config can be called directly.


Get latest from

Typical build in /usr/local/src with:



sudo make install


sudo vi /etc/gpib.conf

board_type = “ni_usb_b”

name = “gpib0″


sudo vi /etc/udev/rules.d/99-linux_gpib_ni_usb.rules

SUBSYSTEM==”usb”, ACTION==”add”, ENV{DEVTYPE}==”usb_device”, ATTR{idVendor}==”3923″, ATTR{idProduct}==”709b”, MODE=”660″, GROUP=”username”, SYMLINK+=”usb_gpib”
SUBSYSTEM==”usb”, ACTION==”add”, ENV{DEVTYPE}==”usb_device”, ATTR{idVendor}==”3923″, ATTR{idProduct}==”709b”, RUN+=”/usr/local/sbin/gpib_config”
KERNEL==”gpib[0-9]*”, ACTION==”add”, MODE=”660″, GROUP=”username”

sudo udevadm control –reload-rules


Note udev will not run the gpib_config at boot, so add it in rc.local:

sudo vi /etc/rc.d/rc.local

exit 0

sudo chmod +x /etc/rc.d/rc.local

sudo systemctl enable rc-local.service

systemctl status rc-local.service


Now plug in the adapter and run ibtest

Reboot and run ibtest


Linux Multimedia

19 Jul

Logitech C615 HD Webcam

sudo vi /etc/udev/rules.d/99-webcam.rules

SUBSYSTEMS==”usb”, ATTRS{idVendor}==”046d”, ATTRS{idProduct}==”082c”, MODE:=”0666″

sudo udevadm control –reload-rules

Dell XPS 13 Webcam

sudo vi /etc/udev/rules.d/99-webcam.rules

SUBSYSTEMS==”usb”, ATTRS{idVendor}==”0bda”, ATTRS{idProduct}==”5752″, MODE:=”0666″

sudo udevadm control –reload-rules

RPM Fusion Repository

sudo yum localinstall –nogpgcheck$(rpm -E %fedora).noarch.rpm$(rpm -E %fedora).noarch.rpm

GUVCView Webcam Recording

sudo yum install libwebcam guvcview

Change resolution to 1280×720 on XPS-13

Set sound device to hw:2,0 for Logitech webcam

Screen Recording

sudo yum install gtk-recordmydesktop

Set sound device to DEFAULT for Logitech webcam

May also need to use hw:0,0 (use arecord -l to list input devices)

Video Editing

sudo yum install openshot

Video Playback

sudo yum install vlc

Setting up the Ettus USRP B200

10 Jun

Using a Syba SD-PEX20122 (VLI VL80x chipset) PCIE USB 3.0 controller and 1 meter cable

Add udev Rules

sudo vi /etc/udev/rules.d/99-usrp.rules

SUBSYSTEMS==”usb”, ATTRS{idVendor}==”2500″, ATTRS{idProduct}==”0020″, MODE:=”0666″

sudo udevadm control –reload-rules

Realtime Priority
sudo vi /etc/security/limits.conf
# Add for USRP realtime priority
myusername – rtprio 99
Will require re-login

Update Firmware

sudo /usr/local/lib64/uhd/utils/


uhd_find_devices –args=”type=b200″


cd /usr/local/lib64/uhd/examples
./benchmark_rate –rx_rate 45E6 –args “type=b200, master_clock_rate=45E6”

Baudline Tips

20 Apr

Fedora fonts:

sudo yum install xorg-x11-fonts-misc

sudo yum install xorg-x11-fonts-ISO8859-1-75dpi


Reading data file from GNU Radio:

GNU Radio file sink with input type complex writes IEEE 754 single-precision floats:

gr.sizeof_gr_complex: 4 bytes per sample as floating point real and imaginary, f = scipy.fromfile(open("filename"), dtype=scipy.complex64)

Baudline file raw paramaters:

Decompression: OFF

Initial byte offset: 0

Sample Rate: custom

Channels: 2

Quadrature: ON

Flip Complex: ON

Decode Format: 32 bit float, little endian

Normalization: 1 maximum sample value


Get every new post delivered to your Inbox.