Mastodon

Saturday 24 December 2022

Countdown To Christmas 2022, Day 10

Last one of the year, it's got to be Greg Lake and I believe in Father Christmas. 

Have a good one and let's hope next year is better again.



Spotify Link



Itunes Link


Friday 23 December 2022

Countdown To Christmas 2022, Day 9

Day 9, last day for this tomorrow, this has to be in there. 

It's Slade with Merry Christmas Everybody.



Spotify Link




ITunes Link


Wednesday 21 December 2022

Countdown To Christmas 2022, Day 8

 From way back in 1974, this is Showaddywaddy and Hey Mr Christmas. Christmas music as if should be, fun, kids singing, slighbells.



Spotify Link


Itunes Link

Tuesday 20 December 2022

Countdown To Christmas 2022, Day 7

From way back this is another great Christmas track.

Band Aid, Do They Know It's Christmas




Spotify Link




ITunes Link


Monday 19 December 2022

Countdown to Christmas 2022, Day 6

 Time to get a bit more upbeat now and a bit noisier too, a proper Christmas tune from The Darkness. This is Christmas Time, Don't Let The Bells End.




Spotify Link


Itunes Link


Sunday 18 December 2022

Countdown to Christmas 2022 Day 5

 

A Child's Christmas In Wales from Gary Barlow and Aled Jones, proper Christmas stuff this.




Spotify Link



ITunes Link

Countdown To Christmas 2022 Day 4

 Something a bit different today, this is the Trans Siberian Orchestra with An Angel Came Down.




Spotify Link


ITunes Link

Friday 16 December 2022

Thursday 15 December 2022

Countdown to Christmas 2022, day 2

 This is a track from a band called Tiger Moth Tales, Pete is an amazing musician and if this doesn't touch you then you ain't got no soul







Wednesday 14 December 2022

Countdown to Christmas 2022

Nearly that time of year again and it's time once more to start my Countdown to Christmas musical list. It's like an advent calendar without chocolate. This year I'm also including Spotify and Apple Music links.

Starting  with someone who has had his fair share of Christmas hits.
At number 10  this is Cliff Richard with 21st Century Christmas. 





Friday 5 August 2022

Pan fried salmon and stuff


I actually don't mind doing a bit of cooking, but I really hate doing normal stuff and occasionally just start throwing some things together.

I've now decided to start documenting stuff that I've made, in case I wanted to make it again and hopefully it worked and was enjoyable.

We've had some salmon fillets and it was time to do something with them, I looked up loads of recipes and nothing stood out. But a meal we'd had in Sidmouth with the fish on top of some mash seemed to give me an idea.


Ingredients are as follows:

Salmon fillets for as many people as you want, I used two.

Cherry tomatoes.

Red or yellow pepper.

Chestnut Mushrooms.

Onion.

Chives (fresh ideally but dried works).

Mash potato ( you can cheat and buy the ready made stuff, I did).

Chilli infused olive oil.

Olive oil.

Starting with the salmon, give them a rinse under a tap, lay them down skin side up on some tin foil and season the skin with salt and pepper, give them a good covering but don't let it get on the flesh itself as it could make the fish too salty. Put it in the fridge for a few hours.

Get the mash, if you've bought it ready made like I did, just chop up the chives and mix them in well. 

Take the mushrooms and slice them up, leave the tomatoes whole, cut the onion into halves or quarters depending on the size and cut the pepper up as you prefer, I did longish strips. Put them on tin foil on a tray and drizzle them with olive oil. Put the oven on 200c and stick them in.

Put the mash into a pan on a low heat and keep it moving to stop it burning.

Put a small amount of olive oil into a frying pan on a moderate heat and put the salmon fillets in, skin side down, cook it for about 5 mins, you will see the flesh of the fish start to change colour, turn them over onto each side for a minute just to cook the sides slightly and then transfer them to the tray in the oven on top of the mushrooms, peppers and so on.

That's going to stay in the oven for about 20 mins now so turn the heat up a bit on the mash and keep turning it to stop it sticking.

After 20 mins, put the mash onto a plate in a strip about the same shape and size as the salmon, take the tray out of the oven and put the fish onto the mash, share out the rest of the ingredients in the tray and drizzle some chilli infused oil over the top of the salmon.

Finally, eat it.

I didn't take any pictures but if I get around to doing it again I will.





Tuesday 25 January 2022

Wouxun KG-UV8G

Since getting my Amateur Radio Licence back, I've been interested in getting hold of something that covers 4m for a while now, I've got no real room for a shack at the moment and don't want a mobile device so having looked around I came across one of these.

I ordered it from Martin Lynch & Sons and it arrived very quickly and very well packaged. The instructions leave a bit to be desired and then there was the installation of the software to get the rig configured. 

None of this should be a criticism, for the price this is a really good bit of gear, I'll be doing some more tests on it shortly.

I tried to programme it initially with Chirp and failed dismally so I decided to install the supplied software.

This didn't go too well, there were driver problems with the USB cable and then the software complained about being able to register a few DLLS. But I persevered and eventually got it all up and running.

So if you have one of these and you're struggling feel free to try this process, don't blame me if it goes wrong and you need to re-install Windows, this is what I carried out on my Windows 11 machine and it still works.

I've uploaded the software and some dlls to OneDrive with a link here and I'll go through my suggest process for installation.

This only works if you have the red USB cable by the way, plug the cable into your computer, it will be detected and the device will show an exclamation.

First off run the CP210x.exe file to install the drivers, now run the KG-UV8G software and skip past the errors, next copy the two dll files to the following folder.

c:\windows\SysWOW64

This is case sensitive, make sure it goes into the one shown above.

Finally open a command prompt as admin and run:

regsvr32 c:\windows\SysWOW64\MSCOMCT2.OCX

regsvr32 c:\windows\SysWOW64\Msflxgrd.ocx

You should now be able to run up the software to configure your radio, I have included a config file that I put together called KGUV8G.kg, you can download that to the radio as a starting point if you want and it really is a starting point as I haven't worked out a lot of stuff yet.

Finally, I'm not clever enough to work this out myself so thanks to Powerwerx.com for the drivers and the QRZ forums for the dll fix.

Now go and buy one, get on 4m and have some fun.







Sunday 2 January 2022

Raspberry Pi as a Remote SDR reciever

Having recently renewed my amateur radio licence, I decided it was time to see what I could do with a Raspberry Pi. You can now get software defined radios for incredibly low prices as use these for all sorts of things, one of these is for use as a receiver. You can simply buy one, plug it into a USB socket on your desktop, download sdrsharp and away you go, you do then need to connect the antenna to the USB device and this could result in a long run of cable.

Alternatively, you can connect the USB device to a Raspberry Pi, install some software, put the Pi outside in a waterproof box and connect via ethernet or wirelessly. I've gone for this option and used a wireless connection.

I've gone for the setup shown below, picked up from Amazon.



I'm also using a Raspberry Pi model 3 as it has built in wifi, you can use a 2 with a USB dongle or a 4 if you want.

Once all the stuff is together, it's time to get started. Connect to your Pi via ssh and run the following.

sudo apt update 

sudo apt upgrade -y 

sudo shutdown -r now

sudo apt-get install -y  git cmake  libusb-1.0-0-dev mc

git clone git://git.osmocom.org/rtl-sdr.git

Now we build the RTL SDR package.

cd rtl-sdr

mkdir build

cd build

cmake ../ -DINSTALL_UDEV_RULES=ON

make

sudo make install

sudo cp ../rtl-sdr.rules /etc/udev/rules.d/

sudo ldconfig

sudo nano /etc/udev/rules.d/rtl-sdr.rules

At the top of the file you will see this, change the 0660 to 0666 in both cases.

# original RTL2832U vid/pid (hama nano, for example)

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2832", ENV{ID_SOFTWARE_RADIO}="1", MODE="0660", GROUP="plugdev"


# RTL2832U OEM vid/pid, e.g. ezcap EzTV668 (E4000), Newsky TV28T (E4000/R820T) etc.

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2838", ENV{ID_SOFTWARE_RADIO}="1", MODE="0660", GROUP="plugdev"


It should now look like this.

# original RTL2832U vid/pid (hama nano, for example)

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2832", ENV{ID_SOFTWARE_RADIO}="1", MODE="0666", GROUP="plugdev"


# RTL2832U OEM vid/pid, e.g. ezcap EzTV668 (E4000), Newsky TV28T (E4000/R820T) etc.

SUBSYSTEMS=="usb", ATTRS{idVendor}=="0bda", ATTRS{idProduct}=="2838", ENV{ID_SOFTWARE_RADIO}="1", MODE="0666", GROUP="plugdev"


sudo nano /etc/modprobe.d/blacklist-rtl.conf

Paste this and and save and exit


blacklist dvb_usb_rtl28xxu

blacklist rtl2832

blacklist rtl2830



Now run the following

sudo apt-get install libvolk2-bin -y

volk_profile

This will take some time

Last thing to do is get the software to run at start up, I'm going to create a service to get this started on boot, we also need to provide the IP address that the pi is running at to the command line to get it running.

Let's create a file with sudo nano /bin/sdrstart

Paste this into the file.

#!/bin/bash

# Sets the variable $_IP as the ip address

_IP=$(hostname -I)

# Runs the rtl_tcp app and provides the output to it's own ip.

rtl_tcp -a $_IP

Make the file executable with sudo chmod +x /bin/sdrstart

Now we create a file for the service with sudo nano /etc/systemd/system/rtl.service

Paste this into the file.

[Unit]

Description SDR Start

After=network-online.target


[Service]

[Unit]

Description SDR Start

Wants=network-online.target

After=network-online.target


[Service]

Type=simple

ExecStart=/bin/bash /bin/sdrstart

PermissionStartOnly=true

StandardOutput=null

User=root

[Install]

WantedBy=multi-user.target


Save it and then run

sudo systemctl daemon-reload

sudo systemctl enable rtl.service

sudo service rtl restart

If you then run sudo service rtl status, you should see your Pi reporting that it's all up and running.


Give it a restart and you should be able to connect sdrsharp to the Pi using the RTL_SDR TCP option.



Thanks to Mike Richards G4WNC for the initial article and a lot of searching to fix a few little issues.

Saturday 1 January 2022

Raspberry Pi Music Streaming

I want to be able to play music from my PC, phone tablet to my hifi system which is on the other side of the room. Bluetooth seems to drop out and I mostly use Spotify or Itunes as a music player. 

I thought I'd have a look at what could be done with a Raspberry Pi and an external sound card to improve the standard sound quality. In the end I tested this out with a Raspberry Pi zero W which worked quite well and ended up running it on a Raspberry Pi Zero 2.

For Spotify to work you do need Spotify premium but iTunes will work quite happily with local files.

I'm not going through with how to install Raspbian onto an SD card and configure the wifi settings here.

Here's the sound card I got hold of from Amazon. £6.99 and it seems to work quite well. You'll also need an adaptor to connect this to the micro USB socket if you're using a Pi Zero.

Once that's all connected it together and you have Raspbian Lite installed on an SD card it's time to get it up and running


As always let's update the os first.

sudo apt-get update 

sudo apt-get upgrade

Then we use the following line to install raspotify

curl -sL https://dtcooper.github.io/raspotify/install.sh | sh

Once it's completed we can edit some settings with:

sudo nano /etc/raspotify/conf

Look for the following line.

# Device name.

# Raspotify defaults to "raspotify (*hostname)".

# Librespot defaults to "Librespot".

# LIBRESPOT_NAME="Music1"

Uncomment the last line and change the Music1 to whatever you want to call it.

Now we activate the USB sound card

sudo nano /usr/share/alsa/alsa.conf

defaults.ctl.card 0

defaults.pcm.card 0

Change the above to the settings shown below

defaults.ctl.card 1

defaults.pcm.card 1

Save the file and then run sudo alsamixer

This should show the display below, just turn the sound all the way up.


If you now run sudo service raspotify restart you should see the device name showing up in your Spotify client, if you connect the audio output to your hifi you can play music from your devices to it.

Now we're going to add Airplay support for Itunes.

sudo apt-get install autoconf automake avahi-daemon build-essential git libasound2-dev libavahi-client-dev libconfig-dev libdaemon-dev libpopt-dev libssl-dev libtool xmltoman

git clone https://github.com/mikebrady/shairport-sync.git

cd shairport-sync

autoreconf -i -f

./configure --with-alsa --with-avahi --with-ssl=openssl --with-systemd --with-metadata

make

sudo make install

This may take some time.

Once it's completed we just need to make sure the service runs on restart.

sudo systemctl enable shairport-sync

Give it a reboot and it should all be running nice and happy.

You should be able to see the device in Spotify and Itunes as shown below.



Thanks to the Raspotify people and Jeff Thompson for my inspiration



Your Own Cloud Server

 So many different cloud storage solutions out there such as Dropbox, Google Drive, One Drive and so on. But what if you want to manage all your data yourself, in the comfort of your own home, NextCloud could be just what you're looking for.



In this article,  I'm going to go through how to setup your own cloud server at home, you need an install of Linux, I've used Ubuntu Mini for this, you need to setup a static IP for the computer that is going to be the cloud server and you also need to forward ports 80 and 443 to that IP address. If you can't install Linux and don't know how to forward the ports then this isn't for you.

The only thing you really need to do during the installation is enable the ssh server so you can do the rest remotely.

The computer I'm using is a small form factor machine with a 250GB SSD and an external RAID enclosure with 2 x 4TB drives connected by USB

Plug the RAID device and the run dmesg shows the RAID device on my machine at /dev/sda

As it's a big drive we need to partition using 

sudo parted /dev/sda

mklabel gpt

mkpart ext4 0% 100%

quit

Now time to format it with 

sudo mkfs.ext4 /dev/sda

This will give you an output similar to this:

Found a gpt partition table in /dev/sda

Proceed anyway? (y/N) y

Creating filesystem with 976740352 4k blocks and 244187136 inodes

Filesystem UUID: 8da4f15d-2def-4cb9-ab7f-c972479529bd

Superblock backups stored on blocks:

        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,

        4096000, 7962624, 11239424, 20480000, 23887872, 71663616, 78675968,

        102400000, 214990848, 512000000, 550731776, 644972544

Allocating group tables: done

Writing inode tables: done

Creating journal (262144 blocks): done

Writing superblocks and filesystem accounting information: done


Copy that UUID number, it will be different for you, we will now be modifying the fstab file with 


sudo nano /etc/fstab

Add a line like this to the end, using your UUID.


UUID=8da4f15d-2def-4cb9-ab7f-c972479529bd    /mnt/Data    ext4    defaults,noatime  0       1

Then CTRL X then Y and enter to save.


Make the mount point with;

sudo mkdir /mnt/Data

Then run sudo mount -a to mount the drive.

If you run df -h you should see something like this which shows the RAID drive up and running.


Filesystem      Size  Used Avail Use% Mounted on

udev            3.9G     0  3.9G   0% /dev

tmpfs           786M  820K  785M   1% /run

/dev/sdb5       228G  3.9G  213G   2% /

tmpfs           3.9G     0  3.9G   0% /dev/shm

tmpfs           5.0M     0  5.0M   0% /run/lock

tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup

/dev/sdb1       511M  4.0K  511M   1% /boot/efi

tmpfs           786M     0  786M   0% /run/user/1000

/dev/sda        3.6T   89M  3.4T   1% /mnt/Data




We're now going to create two directories, one for the Apache web server and one for the NextCloud data.

sudo mkdir /mnt/Data/www

sudo mkdir /mnt/Data/NextCloud


Now we create a symbolic link in the /var directory which points to the www directory we just created.

ln -s /mnt/Data/www/ /var/www

For now we are just going to set the permissions to 0777 with:

chmod 0750 -R /mnt/Data

Now it's time to start installing the required software to get our cloud server running.

sudo -s

apt update && apt upgrade

apt install ssh screen apache2 php mariadb-server php-fpm php-pear php-gd php-mysql php-redis php-curl php-json php-mbstring unrar lame mediainfo subversion ffmpeg redis software-properties-common mc net-tools unzip ufw curl  mc  php-zip -y


Time to secure the database with:

mysql_secure_installation

You should then see the following


NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB

      SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current

password for the root user.  If you've just installed MariaDB, and

you haven't set the root password yet, the password will be blank,

so you should just press enter here.


Enter current password for root (enter for none): 

OK, successfully used password, moving on...


Setting the root password ensures that nobody can log into the MariaDB

root user without the proper authorisation.


You already have a root password set, so you can safely answer 'n'.

Change the root password? [Y/n] n

 ... skipping.

By default, a MariaDB installation has an anonymous user, allowing anyone

to log into MariaDB without having to have a user account created for

them.  This is intended only for testing, and to make the installation

go a bit smoother.  You should remove them before moving into a

production environment.


Remove anonymous users? [Y/n] y

 ... Success!

Normally, root should only be allowed to connect from 'localhost'.  This

ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] y

 ... Success!

By default, MariaDB comes with a database named 'test' that anyone can

access.  This is also intended only for testing, and should be removed

before moving into a production environment.

Remove test database and access to it? [Y/n] y

 - Dropping test database...

 ... Success!

 - Removing privileges on test database...

 ... Success!

Reloading the privilege tables will ensure that all changes made so far

will take effect immediately.

Reload privilege tables now? [Y/n] y

 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB

installation should now be secure.



Thanks for using MariaDB!



Now we create the database for the cloud server with the following, replace password with a good strong password of your own.


mysql -u root -p

<enter password>

CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'password';

GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost' WITH GRANT OPTION;

exit

Little bit of file editing now with the following :

nano  /etc/mysql/conf.d/mysql.cnf

Add this to the bottom of the file and then save it:

[mysqld]

group_concat_max_len=8192

innodb_flush_log_at_trx_commit = 2


nano /etc/php/7.4/apache2/php.ini

Change the following lines to match shown below, the time zone one should be changed for your part of the world.

max_execution_time = 120

memory_limit = -1

date.timezone = Europe/London


nano /etc/php/7.4/cli/php.ini

Change the following lines to match shown below, the time zone one should be changed for your part of the world.

max_execution_time = 120

date.timezone = Europe/London

Time now to make the config file for the apache web server:

nano /etc/apache2/sites-available/nextcloud.conf

Add this in changing the ServerName and ServerAlias to your server name, you can use a dynamic host such as no-ip or duckdns to get an domain name, I use my NAS drive to provide one.


<VirtualHost *:80>

ServerName your_domain

ServerAlias www.your_domain

    <Directory /var/www/nextcloud/>

        Options FollowSymLinks

        AllowOverride All

        Order allow,deny

        allow from all

    </Directory>

    DocumentRoot /var/www/nextcloud

</VirtualHost>



Let's get the Nextcloud software installed:

cd /var/www

wget https://download.nextcloud.com/server/releases/nextcloud-23.0.0.zip

unzip nextcloud-23.0.0.zip

rm nextcloud-23.0.0.zip

Set up permissions

chmod 0750 -R /var/www/

chmod 0750 -R /mnt/Data/NextCloud/

chown -R www-data:www-data /mnt/Data/NextCloud/

chown -R www-data:www-data /var/www/


Setup the firewall rules now with:

ufw default deny incoming

ufw default allow outgoing

ufw allow ssh

ufw allow 80

ufw allow 443

ufw enable



Time now to activate the server config

a2dissite 000-default.conf

a2ensite nextcloud.conf

a2enmod proxy_fcgi setenvif

a2enconf php7.4-fpm

a2enmod rewrite

systemctl restart php7.4-fpm

systemctl restart apache2

systemctl restart mysql


Now to setup some ssl security

apt install certbot python3-certbot-apache


Then just type certbot followed by enter.

And answer the questions.

On the screen that says "Which names would you like to activate HTTPS for" you should see  the names of the ones you entered in the Apache config file earlier. Just press enter here.

And then select 2 to create a redirect.

That so far is all the installation done, now it's time to open up a web browser and point it to the domain you created for the cloud server, this is the dynamic dns one.


http://servername:

Fill in all the details requested and make sure you change the data path to 

/mnt/Data/NextCloud or whatever you have set yours to.

Once that's all done you can install the desktop client and the mobile client and have a play around. That's all your data under your control.