I like this analogy in this article from SD Times, Think of Clouds as Restaurants. Marty Puranik makes the point that as Cloud service providers cut costs in a ‘battle to the bottom’ to compete with each other, it’s far more important to look at the services they each provide rather than just the cost per unit of whatever.
Reminder to self: MySql on Mac OS X is installed to /usr/local/mysql[version]
Apparently it’s been a while since I started up mysqld on my Mac for development (as I’ve been using MongoDB for a lot of my local dev). Anyway, apparently also I had already written a short article over a year ago to remind myself that the default location for the Mac install of MySQL is to /usr/local/.
Reminder to self again: remember to search your previous posts to remind yourself where MySQL is installed.
USB bootable OS/2?
OS/2 was technically far superior than any other desktop OS available at it’s time. The fact that it continued to be used in ATMs by banks, ticket machines, voice mails systems, PABXs and various other systems for years after IBM sales and support was discontinued says everything. Even though it was discontinued by IBM in 2006, it is still sold as eComStation, packaged with updated drivers for common hardware available today. According to eComStation’s site, it’s still in use by a number of major corporations.
I’ve spent probably too much time recently installing and playing around with OS/2, especially since ISOs of the install disks became freely available on the Internet Archive. This article about eComStation looking for help to build a version of OS/2 bootable from USB flash drives caught my attention. Interestingly though, from my experience recently trying to install OS/2 Warp on fairly recent PC hardware, I’d rather prefer to see updated drivers for today’s CPUs, motherboards and hard disks.
Direwolf soundcard packet on Linux, with ax25 and LinPac
I’ve been playing around with Direwolf soundcard packet radio decoder on Linux. On Windows I use the packet terminal app that comes with the UZ7 soundcard modem, which you can connect to Direwolf’s AGW port over a network. The only comparable app on Linux that I’ve found seems to be LinPac.
Linpac connects over an ax25 port. To get LinPac to connect to Direwolf there’s a few steps to jump through.
Install Direwolf
Download the source from: https://home.comcast.net/~wb2osz/site/?/home/
(or after Oct 8 2015, https://github.com/wb2osz/direwolf)
Install libasound2-dev:
sudo apt-get install libasound2-dev
Compile Direwolf:
make sudo make install
If you get this error when compiling Direwolf then you missed the libasound-dev step:
audio.c:80:28: fatal error: alsa/asoundlib.h: No such file or directory #include <alsa/asoundlib.h>
Copy the supplied direwolf.conf file (from the downloaded source) to your home dir. To find out what input and output sound devices you have, run
aplay - l
and
arecord -l
You’ll see something like this:
**** List of CAPTURE Hardware Devices ****
card 0: NVidia [HDA NVidia], device 0: ALC1200 Analog [ALC1200 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: NVidia [HDA NVidia], device 2: ALC1200 Alt Analog [ALC1200 Alt Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
Get the device numbers for the soundcard you are using and edit direwolf.conf. For device 0 subdevice 0, edit this line and set 0,0:
ADEVICE plughw:0,0
Using a Rigblaster Plug and Play on Ubuntu 14.04, it was automatically recognized and showed up per the docs on /dev/ttyUSB0. Direwolf will use this for PTT on your radio. I uncommented this line to enable this:
PTT /dev/ttyUSB0 RTS
To give my current user access to ttyUSB0 (and avoid running with sudo) I had to add my user to the dialout group (per post here):
sudo usermod -a -G dialout $USER
Start up alsamixer and make sure the mic inputs and outputs are not muted (M), and the volume levels are around 3/4.
Install the ax25 network suport:
sudo apt-get install libax25 ax25-apps ax25-tools
To enable an ax25port, edit /etc/ax25/axports, I added a line like this:
1 KK6DCT-1 1200 255 2 2m packet
The first column is the port name. Start up direwolf with the -p option to enable a KISS port, you’ll see something like this (-t 0 t0 suppress the colors):
kev@kevs-ubuntu:~$ direwolf -t 0 -p Dire Wolf version 1.2 Audio device for both receive and transmit: plughw:0,0 (channel 0) Channel 0: 1200 baud, AFSK 1200 & 2200 Hz, E+, 44100 sample rate. Ready to accept AGW client application 0 on port 8000 ... Ready to accept KISS client application on port 8001 ... Virtual KISS TNC is available on /dev/pts/0 WARNING - Dire Wolf will hang eventually if nothing is reading from it. Created symlink /tmp/kisstnc -> /dev/pts/0
Note the /dev/pts/X value, and use this with a kissattach command to connect Direwolf to ax25:
sudo /usr/sbin/kissattach /dev/pts/0 1 44.56.4.118
The 1 value following /dev/pts/0 is the port number from the axports file.
Per the Direwolf PDF doc, if you see this error:
kissattach: Error setting line discipline: TIOCSETD: Device or resource busy Are you sure you have enabled MKISS support in the kernel or, if you made it a module, that the module is loaded?
Then try this instead:
sudo /usr/sbin/kissattach /dev/pts/ptmx 1 44.56.4.118
Install LinPac
Download the LinPac source. Build and install:
./configure make make install
The first time you startup LinPac it creates a LinPac dir in your home folder. Edit macro/init.mac in this folder and change the port value to match the port name from your axports change (1 in the above example):
;; Default port port 1
Start LinPac with:
linpac -m
(I’m not sure what the -m option is for, I found this in a post online, but without it I get errors on startup about ax25 port not found).
Connect to a node with :c nodename
Done!
