This is my little corner of the interwebs which I use to share any new nifty tips, tricks, news, instructables and random tech I come across.
The site is divided into general areas of interest. I try to post articles to the relevant categories along the top but I'd suggest have a click about (or use the Tag Cloud down on the right) to find something you might think is useful.
Although I make original content I often borrow images from other people as quite frankly I don't have the patience to create complex diagrams. This site is completely free and is not supported by adverts or anything nasty like that so you should enjoy a clean experience here.
Why buy something when you can build it yourself? Have fun!
Being able to direct sound is useful in many situations. Two examples are at a museum where people standing in front of two different exhibits can hear two different commentaries or at home if you don’t want to hear the crap someone else listens to.
This is where modulated ultrasound comes to the rescue – the ability to direct sound with an impressive 5 – 10° spread – that’s unheard of with any traditional loudspeaker.
Lets take a quick look at how this craziness works because it’s not your typical transducer, that’s for sure.
This will be a quick tutorial on how to configure an Exit Node for the Tor Network. Doing this comes with some inherent risks for the operator but exit nodes are essential for bridging Tor with the ‘clear net’. Without exit nodes, anyone suffering from ISP filtering or those not wishing to have their Internet activity logged (BBC Article) couldn’t utilise Tor to access the Internet.
Unlike bridges, exit nodes (and normal relays) are publicly known devices, for which their IP address and configuration is available for anyone to see. They effectively make the final connection to the destination on behalf of the originating (anonymous) client. The Tor network is drastically short of exit nodes, but for good reason. Because they are the final hop in the chain, they will be making hundreds of outbound connections to whatever website or service Tor users request. It is therefore easy for the powers who be to blame an exit node operator for ‘doing bad things’ when in fact their node is merely participating in a network, much like a traditional router would in any network. Anyway, assuming you have balls of steel and willing to run an exit node I’ll take a look at how to do this with least hassle as possible.
Tor (‘The Onion Router’) is by far the most popular solution for anonymous browsing, with over 6000 relays and 2.5 million active users. I’m going to look at how to configure Tor on your network, in a variety of ways. The so called ‘Dark Web’ seems to get a bad press, maybe because of illegal sites like Silkroad, but it’s actually an invaluable resource for citizens or visitors to countries who have severe Internet censorship (including the UK!). Even Facebook has a .onion address, as does the DuckDuckGo search engine and Aphex Twin’s ‘Syro’ album.
By far the simplest and most secure way of using Tor is to install the Tor Browser. It’s dead simple and takes literally a few minutes. However, depending on your goal, there are other ways to use Tor. I’m going to look at a few ways to deploy Tor, including the pros and cons of each. These are:
As the UK government have announced they wish to classify Internet access as a public utility (implying it shouldn’t be a privilege but should be more like electricity etc) I thought I’d share how I have opened my Internet connection for anyone to use. As long as you can receive the signal you can connect and browse to your heart’s content without any keys or passwords.
Firstly, this is against the T&C’s of most ISPs, including mine. There’s a few (il)logical reasons for that but it’s mainly revenue protection. Even though they know a single connection would be perfectly suitable for many households to share, they would obviously lose money if everyone did that. Namely because, unlike other utilities, Internet access is generally not metered, meaning it’s a fixed cost per household per month. If your neighbour cannot afford their own Internet access or for whatever reason cannot get a contract then I feel it’s only fair to allow them to use mine. With talk of some people not being able to afford heating during the winter it’s hardly appropriate to expect them to also afford broadband. Who needs Internet access though? I mean it’s not like online shopping is generally cheaper or anything, not to mention almost everything is moving towards e-billing, right?
I’m not going to suggest everyone should just blindly open up their WiFi router for anyone to use but here’s how I’ve achieved this safely.
We are going to look at how to implement advert blocking on an Edgerouter at a network level using DNS. This can also be applied to other software routing devices. There are many ways to block adverts these days – various browser plugins, browsers with built in blocking, proxy servers (normal or transparent) and also with DNS. Whatever your thoughts are regarding websites using adverts for revenue generation, the fact is many sites have obscene amounts of ads.
Quite often adverts are designed to dupe you by purposely making them look like the link you are actually after. A typical example of this is where you have a ‘download’ button which is actually an advert to download something else entirely. This is not only deceitful but is down right unacceptable. Until all adverts become unobtrusive, targeted and honest I will keep blocking them; even if this means I can’t access websites which block you for blocking ads.
FreePBX is an opensource front-end for the Asterisk VoIP solution. It can be installed on a Raspberry Pi via a prebuilt image but what if you want to use it directly on Raspbian (or other distros)? Well, it is possible with a few minor tweaks.
Because FreePBX and Asterisk are tightly bound it is a permissions nightmare to get the web interface to work with any other user than ‘asterisk’. If you already have Apache running for other purposes then this is obviously not ideal. For this reason we need to get second Apache process running as the ‘asterisk’ user, while at the same time allowing the main Apache process to run as is. Here’s how you do that.
For my next trick I thought it would be nice to have a web interface “colour wheel” to control an RGB LED strip light. These are dirt cheap and usually come with a crappy infrared remote control. The real nice part about this is once you have it working you can do almost anything you want with it – make a gradual sunrise light for the dark mornings, a security light, an auto-off night light or simply pick the colour you want your room to be from a smart phone.
The basic idea of this design is to have the Arduino handle the control of the LED strip itself but allow the RGB values to be set via a serial connection. The Pi will be sending the RGB values via USB to the Arduino which in turn will use Pulse Width Modulation (PWM) to set the intensity of each LED.
After the successful first project of getting a PIR sensor to work with Arduino I thought I’d try something a bit more practical and bespoke. The idea with this is you can use the Arduino to change the colour of an LED if there are any critical or warning errors in Nagios Monitoring software.
This time we’re going to get the Arduino to read input over its USB serial interface from a Raspverry Pi and depending on what it receives either make the LED light green or red.
This Arduino nonsense is actually pretty neat. It’s a small electronics project board with a programmable chip and a pile of General Purpose I/O pins. You can use it to control or be controlled by pretty much anything. There’s tonnes of examples out there from the simple blinking an LED to the much more complex task of automating the watering and lighting of indoor grows. The best of it is this thing costs £5 – five pounds sterling, no shit!
I’m going to try and explain what a decibel is and why it is used so often. For some reason it seems to confuse a lot of people, especially when used in sound engineering. As it happens the dB is actually really simple once you understand what it is and why it is used.
The first concept you need to get your head around is a dB is nothing more than a ratio, just like saying a 2:1 ratio to mean two apples for every pear, in other words double the amount of apples for every one pear. Instead of linear scaling like this, in the land of dB’s everything is logarithmic. You don’t need to know what that means you just need to know that it’s a ratio. First off a bit of history.