My vintage nerf gatling gun stopped working with just a hiss of air when the trigger was pulled.

I suspected it had been dropped by the kids and something internally had broken.


It was easy enough to take apart a dozen or so screws and that was it. The attachment to the back of the main piston had broken off. The blue part in this picture is a fish tank air hose part I used for the repair.

I cut the end off the air hose was cut off as the old broken attachment was stuck inside. I warmed the hose in some boiling water to soften it before pushing it on to the new connector.

Next I drilled out the hole in the back of the piston to 5mm which was big enough to make the new connector a push fit. I secured it with some hot glue.


Job done gun works just like it did before.

Happy nerfing

Versalaser compressor danger

Recently the computer controlled air assist unit for our Denford supplied versalaser vl200 laser cutter stopped working.

We took it apart to confirm that it was dead, inside the housing is a rocking piston compressor motor, an air cooling radiator, a water trap unit and solid state relay controlled by a small USB connected micro controller unit. This board is what turns the compressor on and off as called for by the software.

The motor was jammed solid and hooking it directly up to the mains via a plug didn’t change things.

The most worrying thing though was the damage to the internal hoses caused by them rubbing against the base of the motor as can be seen by the attached pictures, this post is just a warning to be careful.


Testing solid state relays

Today I pulled an ssr from a versalaser air compressor and wanted to test if it was working.

l started just as you would with an electro mechanical relay, l stuck a 9v battery across it and nothing. Then l remembered it was an ssr so l wouldn’t hear anything and I put my meter across the load terminals in continuity mode and got nothing.

Hmmm a quick google reveals all solid state relays need a powered load as they use some of that power to operate and a multimeter doesn’t provide enough.

So hooking a desk fan to the load side of things with the live wire connected to the terminals and a 9v battery to switch the relay results in the fan turning on, result working ssr.

Deploy App-V 4.6 SP1 Desktop Client

Ok so I’m slightly late to the party regarding getting startd with App-V and with version 5 around the corner this post might become a mute point.

For some reason Microsoft in their infinite wisdom made this piece of software a pig to install, msi’s to extract from exe installers, specific appguid parameters to assign depending on the version you are using.

I thought that surely someone will have written a nice vbscript or something to deploy all the pre-requisites etc… but it appears not therefore I wrote a nasty vbscript to acheive this.

My script checks the installed product code for the specific ones required to deploy the desktop client and if it doesn’t find them it installs the relevant piece of software and then writes an event log entry before moving on to the next item.

It basically loops through all the installed software product codes looking for a match and that’s one portion that could be improved upon. There is an api to check for a piece of software being installed but I couldn’t find any working code examples.

No error trapping is done so if something goes wrong during an install once control passes back to the vbscript it will execute the next block.

This is currently for the x86 version of the client allthough would be easy enough to edit for the x64 as well.

It works for me but use at your own risk.


HP T200 vs Axel M80 WMS Client trial

We’ve recently installed some HP T200 zero clients with an HP Z210 acting as the host.

Axel were also kind enough to send me one of their M80 thin clients to test against as a comparison.

This is not a scientific test but my observations.

The T200’s work by encapsulating USB over Ethernet to communicate with the hosts and this is quite compute intensive which is going to limit the number of clients you can connect.

The M80 on the other hand is an RDP client and it will scale to larger numbers of client on the same hardware, Matthew Stones from Axel also sent me over the WMS firmware for the M80 which turns it into a dedicated WMS client and restricts it to only connecting to a multipoint server.

Installing the firmware on the M80 was a breeze basically consisting of installing the Axel management utility discovering the device and pushing the firmware to it. Matthew linked me to one of his youtube videos that demonstrated the process.

The biggest test for both these devices seems to be the playback of flash video and I tested each one with a windowed youtube clip of an F1 car, the thinking being that it’s fast moving video with sound and on board graphics that help check if everything is in sync.

Both devices played back the video well however I think that if connecting a lot of clients to a multipoint server that the M80 WMS is going to scale better and at the moment it’s what I would recommend.

The T200’s due to their lower cost however are ideal for smaller clusters but they are also a new product and their has been at least one driver/firmware update since their release and the updating process is a bit slow.

Update 13/03/2012

With 8 users connected via T200’s I was seeing a memory usage of 3.5GB and networking at around 99%

Dynamic Distribution Groups

Wouldn’t it be nice to have email distribution groups that automatically change themselves to reflect changes within your organisation?

With [email protected] ‘s Dynamic Distribution Groups, DDG, that is now possible.

The functionality for creating these is not exposed through the web interface so you do have to get stuck into PowerShell.

First of all you need to connect to your tenant:

Open a PowerShell command window and use the following code this will prompt you with a pop-up to enter the required credentials and then log you in.

$Cred = Get-Credential
$Session = New-PSSession -ConfigurationName Microsoft.Exchange -ConnectionUri -Credential $Cred -Authentication Basic –AllowRedirection
Import-PSSession $Session

Once you are connected issue the following command to create a DDG:

New-DynamicDistributionGroup -Name “All Foo Staff” -RecipientFilter {(RecipientType -eq ‘UserMailbox’) -and (Company -like ‘Foo Company’)}

Now when you send an email and the “To” field contains “All Foo Staff” and email will be sent to everyone who’s Company field is populated with “Foo Company”

If you want to display the current members who match this DDG use:

$AllFooStaffDDG = Get-DynamicDistributionGroup “All Foo Staff”
Get-Recipient -RecipientPreviewFilter $AllFooStaffDDG.RecipientFilter -OrganizationalUnit $AllFooStaffDDG.OrganizationalUnit

Disconnect from your tenant:

get-PSSession | remove-PSSession

Some websites to help you with this: – Lists other filter options

Due to the fact that the DDG is evaluated everytime it’s run any new member of staff that is added to the companies [email protected] tenant will be automatically included in the DDG if their attributes, in this case company field, matches.

Milestone Webinar

Spent a bit of time this afternoon watching the Grow with Milestone webinar to get some insight into where they are going with their products.

Smart Client 7 – Is a redesign of the smart client interface and some new features that are supported with the new version of XProtect corporate.

Edge storage – Cameras that can store their own footage can have that footage retrieved into your recording server based on triggers, i.e time based.

Video Push – When using the mobile client on your android or ios device the devices camera can be used to push video into your recording server.

DIY Dynamic QR Codes

A QR code is by nature a static thing.

When you generate a QR code you decide what the destination is going to be and that can’t be changed without re-generating it.

Services have started up that allow you to create dynamic QR codes however it’s not the code itself that’s dynamic but the destination.

I’ve set-up my own dynamic QR code service using the open source url shortening application yourls this piece of software allows you to set up your own url shortener.

Follow the directions included in the zip file to set it up on your web server, there is a typo on their website regarding the location of the config.php that was confusing until I read the ones included in the zip.

Once this is installed create a short url via the admin page and then use a QR code generator such as kaywa to create a QR code that points to the short url.

In the admin section you can change the final destination of the short url anytime you wish and you now have a dynamic qr code that can also generate stats.

Obviously this will only work for url type QR codes but I hope it’s of use to someone.