One lump or two...

Well, if you think a 3D printer is something you buy and just use, think again - they are definitely at the hobbyist stage.

That said, it is very rewarding having spent days working on this, and making it from the nuts and bolts, and then finally being able to print things. That is what hobbies are all about.

I probably have a few more days of tinkering before I get good at this. There is a lot of advice on the matter on the irc channels and wikis. In fact too much advice and all of it from people that found a specific thing worked for them in some specific but ill specified circumstances. However, helpful people with lots of good ideas and all over the world too it seems.

One aspect I did not expect is the number of "one last thing needed before it will work properly" that has happened this weekend. e.g. I got a hot plate, and just need a power supply that is good enough as the one I have cannot do the current. I get a power supply, and turns out "oh, you need some isulation under the hot plate else it will not get to temperature" so off to homebase. Now I have the "I use a small fan to blow over the freshly extruded plastic" (which competes with the hot place and insulation). There is a lot of "fine tuning" and "balance" needed.

I am also experimenting with finding other cold surfaces to print on that stick well enough to hold the ABS down, don't allow it to curl up as it contracts when it cools, does allow me to actually unstick it at the end, and is re-usable, and smooth enough of a surface so I don't have to file the result flat. I am also trying to get a good understanding of Z axis setting, and first layer printing. The first layer is the key - if that is printed cleanly and stuck down well, and stays put, then you have a pretty good chance of printing a whole thing.

So far I have printed a slightly distorted die, well a few dice in fact, all differently distorted. I am getting the hang of it slowly but each test wastes a good hour.

I'll write up more detail on some of the fine tuning when I am happy (may be some time).

I still have to dream up a proper "need" for it - something not actually completely contrived or just printed from thingiverse for the hell of it. Something that makes this "How the hell did I even manage without one" just like printers, scanners, cameras, shredders and the like.

Anyway, bank holiday over - back to real work for a bit.


3D or not 3D

Well, I got a shapercube, and last weekend I built it. It is a commercially made set of parts for what is essentially a reprap 3D printer but a nicer housing. Makerbot thing-o-matic is a similar affair made from wood.

The instructions were not bad - but some omissions and mistakes delayed things. I suspect from scratch I could build one in a day now. As Kev says, you end up being an expert in something you only ever do once.

That was last weekend. I have spent all day Friday and today making it work. Many many minor hurdles.

Making the first layer stick was one. It is an acrylic sheet as the base. That sticks! It welds to what you print. Bad!. So kapton tape on the acrylic - that sort of sticks but 2 hours in to a print it stop sticking and what you are printing slides away and is useless. Seems kapton tape distressed with a penknife may be the trick. The real solution is a heated bed (tomorrows challenge).

Getting the heat right is a challenge and if you manage to over heat it, well, yes... All today was spent on that. You bugger your hot end for a start. I have cleaned it out and found a small enough pin to clear the nozzle, but the real trick was a squirt of WD40 down it. ABS around 230 degrees C... In fact, in my previous attempts I not only charred the hot end, and burned my thumb, I also killed the thermistor and fried the ADCs on the controller board. Spare parts arrived Friday morning from RS and Farnell...

The other gotcha is there is a nice tool called repsnapper which controls it. This is good, but deceptively it seems to be happy to load an STL file and convert to GCODE and, well, print. That is a bad idea. repsnapper has no real idea on making GCODE from an STL and what you really want is skeinforge. Using repsnapper just to send the GCODE file and manually control things. You have to tweak a few settings to get it right, and the main one is the arduino firmware feeder steps per mm setting, but then it is very cool.

Of course you need to make things in the first place - well design them... It seems openscad is the tool. It allows 3D objects to be made programatically from 2D and 3D primitives. It is pretty powerful. The other place to get stuff is thingiverse - either STL or openscad files.

But, yes, after 2 days cleaning up mess - I printed the thing I drew last weekend. It is a sort of shot glass (to toast the first print) with integral straw!!

Now to print some of the parts as spares... They should in fact be a lot quicker and easier than the shot glass.


Soul of a new BRAS

Not those sort of BRAS...

Broadband Remote Access Server!

Well, looks like we have managed to make the FireBrick act as a BRAS. We got a small 12 port Zyxel DSLAM, and have it plugged in to a FireBrick which is locally terminating the traffic (but could RADIUS and L2TP it just as easily).

DSLAM talks PPPoE to FireBrick BRAS, and that handles it like an L2TP connection (relaying or terminating as required).

Works on a fully loaded FB2500 / FB2700 and FB6202 models.


How the cookie crumbles

ICO, number 10, parliament and EU web sites flout new cookie law!

The modifications to The Privacy and Electronic Communications (EC Directive) Regulations 2003 and in particular Section 6, which essentially relates to use of cookies on web browsers, comes in to force today.

First problem is that legislation.gov.uk does not update UK SIs. Why? That is crazy. Anyway, to read the regs in their current form you have to read The Privacy and Electronic Communications (EC Directive) (Amendment) Regulations 2011 and specifically the changes to Section 6.

This makes it read as follows :-

(1) Subject to paragraph (4), a person shall not use an electronic communications network to store information, or to store or gain access to information stored, in the terminal equipment of a subscriber or user unless the requirements of paragraph (2) are met.

(2) The requirements are that the subscriber or user of that terminal equipment—
(a)is provided with clear and comprehensive information about the purposes of the storage of, or access to, that information; and
(b)is given the opportunity to refuse the storage of or access to that information.
(b) has given his or her consent

(3) Where an electronic communications network is used by the same person to store or access information in the terminal equipment of a subscriber or user on more than one occasion, it is sufficient for the purposes of this regulation that the requirements of paragraph (2) are met in respect of the initial use.

(3A) For the purposes of paragraph (2), consent may be signified by a subscriber who amends or sets controls on the internet browser which the subscriber uses or by using another application or programme to signify consent.

(4) Paragraph (1) shall not apply to the technical storage of, or access to, information—
(a)for the sole purpose of carrying out or facilitating the transmission of a communication over an electronic communications network; or
(b)where such storage or access is strictly necessary for the provision of an information society service requested by the subscriber or user.

So, what does this mean?
Basically, you cannot store or retrieve any information (e.g. a Cookie) in/from terminal equipment (e.g. a Browser) without consent, and no longer can that be a failure to opt out - it has to be specific and informed consent. The exception is for strictly necessary usage for a service that was requested by the user.

Now this could be a real pain for web developers. Sesison cookies are pretty common, although for what most web sites do they are clearly not strictly necessary. But so are analytics to track numbers of users, and they tend to use cookies as well. It could be argued it even applies to controls for caching like Last-Modified headers as caching is not strictly necessary. Even so, plenty of people argue that even session cookies are strictly necessary - but who knows.

What is extra special is that Ed Vaizey has written a letter just two days before the legistaltion comes in to effect (so well after many people have spent a lot of time trying to comply) essentially saying not to worry. He seems to be saying :-

(a) Browers will change so that you have to say you want cookies rather than the default of allowing them. (would be fun any browsers doing that as a blanket change to a default setting as everyone would turn cookies on just to get to facebook and so would be consenting to the situation before the new law)

(b) That the legislation specifically does not say the consent has to be prior consent. He says consent could be obtained afterwards! He seems to be suggesting that we just all wait until browsers are updated and in the mean time the ICO will do bugger all.

Now sorry if I am being thick here, and I am not a lawyer so not sure how to read that, but surely such a notion creates a Schoedinger's legislation, making sending of cookies create a sort of quantum state of being legal and illegal at the same time. You can only resolve that once you later ask for consent and either find you get it or not.

Note that civil cases for damages for breach of this act can be taken to the county court from today and so he cannot say no enforcement will happen yet. Sadly it is hard to contrive damages for this else I would have issued a county court claim against the ICO this morning. Next holiday on expensive roaming mobile data I'll have a good look around the ICO site and then add up how much the extra header lines for cookies each way have cost me...

Yes, that is right, several sites are flouting the new law...

www.ico.gov.uk Two cookies on main page
www.parliament.uk Four cookies on main page
www.number10.gov.uk Five cookies on main page
www.legislation.gov.uk Two cookies on main page
europa.eu/index_en.htm A survey cookie

Note that www.legislation.gov.uk even serves two third party cookies from uk.sitestat.com so not even just own-site session cookies!

P.S. This blog is a blogger.com web site and any cookies you get are fully in their control and not mine. I do not own, run or host this web site at all (though the domain is mine it just points to blogger.com). My role is just as a contributor to blogger.com's site. I contribute text and images for articles. I am not storing or retrieving anything on your terminal equipment!


Stupid new in sewer ants law

Ok, seems vehicles need to have some insurance specifically listing them from 1st June or the keeper gets fined.

1. This is a tad crazy, all you have to do is declare SORN to avoid this, and that lasts a year and is free. It does not stop you taxing, insuring or driving the vehicle and there is no "un-SORN". You can do it on a web site. I bet it could be scripted even. So new law totally undermined by a once a year free web form. Why have the new law at all then?

2. Cars are not insured, people are, and there are plenty of cases where a car may be validly driven with the driver insured and not having the car listed on a specific policy. Police already make that a nightmare stopping you for no insurance when the driver may well be insured. Indeed most comprehensive policies allow driving someone else's vehicle with permission 3rd party.

So what the hell is the point in this?

P.S. To add to the fun! and not having read in detail yet, you can avoid the new requirement by SORN, but have someone other than the owner driving on their 3rd party clause still. When stopped by police they have to show now only the drivers 3rd part insurance, but to avoid a fine on a new law, the SORN as well even though clearly not at that point "off road"... That will be very silly and blow the mind of the copper I expect.

P.P.S reading this more, the P.S is not the case. But still trying to get a clear idea of what is actually required.

P.P.P.S thanks to Brian Widdas a break down...

Seems to me you can be exempt from  new insurance requirement if the keeper keeps the vehicle off road and is complying with SORN regs (which only require a SORN when not taxed so easy to comply with if you have tax by doing nothing)

Ok, here we go...

Section 22 of the Road Safety Act 2006 amends the Road Traffic Act
1988 (sections 144A-D):


144A: Offence of keeping vehicle which does not meet insurance requirements

If a motor vehicle registered under the Vehicle Excise and
Registration Act 1994 does not meet the insurance requirements, the
person in whose name the vehicle is registered is guilty of an


144B: Exceptions to section 144A offence

(5)The fourth condition is that—

(a)the registered keeper is at the relevant time the person keeping the vehicle,

(b)at the relevant time the vehicle is not used on a road or other
public place, and

(c)the registered keeper has by the relevant time complied with any
requirements under subsection (7)(a) below that he is required to have
complied with by the relevant or any earlier time.

Subsection (7)(a) relates to the making of regulations. It is under
this subsection that the The Motor Vehicles (Insurance Requirements)
Regulations 2011 are made


3. For the purposes of section 144B(5)(c) of the 1988 Act (the fourth
condition), the registered
keeper of the vehicle must, by the relevant time and in relation to
that vehicle, have delivered the
required particulars, and made the required declaration, in accordance
with paragraph 5(3) of
Schedule 4 to the 2002 Regulations.

The 2002 Regulations are the The Road Vehicles (Registration and
Licensing) Regulations 2002. Paragraph 5(3) of Schedule 4 is all about
giving your tax SORN notice (as, indeed, is all of Schedule 4)




Start of Day 2.
Electronics all made.
Now to do the wiring...
And to find a 12V 5A supply.


3D party

Well, I am planning to have a bash at making the 3D printer tomorrow. May turn in to a party if I can persuade a few of my geek friends to help out. I'll take along a bottle of whiskey just in case. Ask in irc if you want to join in :-)

I still have no idea what we will "print" on it when made though...

3G Dongles, USB and PPP fun

Techie post this time (e.g. Pauline you can stop reading about now...)

As some of you know the new FireBrick FB2700 has a USB port to allow a 3G dongle to be attached. Thanks to a lot of work by Cliff on the USB library we now have something working. The latest alpha should connect, but the code needs a lot of polish. No there is no status page or command yet, etc. If you want to try, just add to the config. Actually, is likely to be more helpful.

The fun bit is finding out how they work, and this is where, from a technical point of view, you probably need to start with a good head of hair...

We have only tried two so far (ZTE and Huawei).

The first thing that strikes you is that they need a mode switch to work. What this means is that they start life as a USB mass storage device and not as a modem or such. Why? Well, the best guess is windows. By appearing to be a mass storage device then windows will look for and offer to install any drivers for you. If they started off as a modem then windows would either ask for drivers or install its own drivers which then need un-installing. So it has to pretend not to be a modem at all. Great! But then the mode switch itself does not use the standard USB alternative configuration system at all, no. It uses a specific message - in this case one uses an Eject command as if it was a CD and another users a message allowing a Wakeup request from the dongle. Neither is intuitive. Thankfully we can just send both.

It then reconnects and appears as mass storage still, and, well, not a modem in fact. USB allows it to be a communications device but it claims to be a vendor specific device instead - hmmm. Thankfully it is pretty clear it has a serial type interface we can talk to at this stage...

So, we are talking to a device that apparently has to understand packets on the air, but we are talking to it as if it were an old fashioned serially connected modem. Yes, that means old Hayes modem style AT commands.

Once we get that sorted, we finally CONNECT, and get PPP in HDLC style async serial framing. Why??? The HDLC style framing was designed for slow serial modems that may confuse XON and XOFF with data, and so on, and needs escaping. It even has a 16 bit CRC which is generated by the dongle or host and sent to the other - it gets no further, and is being sent over a short reliable USB link and protocol. What is more of a surprise is that the dongle bothers to check the CRC even, and ignore you if not valid.

OK, but even with this tedious escaping and CRC, we can finally talk PPP. Woohoo... Except...

You are talking to the dongle, not the network, it seems. Most, if not all, of the PPP negotiation stage is local. And the dongle is actually extra special with its use of PPP...

1. It does not actually offer up any IP for the remote end. This is odd, most systems expect that. In fact it sends an IPCP conf Req that is totally empty!!!

2. It initially refuses to negotiate the local IP at all, and says DNS is and It also insists that WINS servers are and even if you did not ask for them, so you have to ask for DNS and WINS.

3. It keeps NAKing even though what it NAKs is what you asked for, and not ACKing, until (presumably) it managed to get through to the far end...

4. It eventually Rejects the WINS servers you asked for (why did it NAK them then, doh), and ACKs with proper DNS and IP details at last.

5. It ignores IPV6CP, which it should either pass on, or reject.

Thankfully, with the addition of WINS, my PPP stack copes with this fiasco and finally gets connected.

So, all good fun... Do let the normal support email or irc channel have any feedback if you try it.

Next trick is to try bonding 3G dongles. Watch this space.



OK proper rant today...

I know different people have some very different ideas on "borrowing" stuff.

Some people have very strong views on property ownership, and would not dream of touching something that belonged to someone else and would expect the same for things they have.

Some people have a much more relaxed view, and feel that they could just use something that belongs to someone else if they thing what they are doing is no harm. Some people would assume they can just take stuff even if it is a consumable such as "borrowing some coffee, or milk, etc"...

I can see there are different views on this, and I an not trying to be totally anal, honest.

Of course, it makes a difference what relationship you have, and with a family in a household it is normal to borrow stuff from other people, usually asking or at least informing them. It is also usual, I think, to take in to account if people do have strong views they have made clear previously.

There are lines that get crossed! I don't mind too much my kids borrowing stuff if it does not effect me, and ideally if they ask.

What really pisses me off is borrowing stuff, not asking, not telling me, not putting it back, still not putting it back when I came to use it and got cross, still not putting it back a day later, and a day after that and a day after that, and then finally trying to fob me off with something else and losing what they borrowed!!!

You know who you are - it is not acceptable.

If I want to use something that is mine, I expect it to be where I left it and in the same state I left it (e.g. not battery suddenly flat, etc). If you can borrow it without affecting that logic, then that is generally OK, but not otherwise.



Some assembly required

Well, the bits have arrived.

Not sure when I will have time to make it.

Fun fun fun.


The Theory of Financial Relativity

I am sure that as we go through life we all learn valuable lessons and so wish we could teach "the young" those lessons in advance. I have five kids, and so I feel that as much as any of you. They will not listen and will learn in their own way.

One of the many lessons of life I have learned so far (and an still learning) is the relative nature of money and finance. I am rather unsure of posting this, as some will see me as a rather strange but wealthy nutter but I hope some will see the wisdom of this.

I stress that I very vividly remember the days, notably when first married, when money was a challenge. I had moved from managing my own small amount of money to managing a family and their finances, and I was the bread winner. Those were the days of a "real job".

In those days I would go to the pub with a few friends for a drink maybe once a week and would dread that it would end up as my round. It was a challenge. My friends were in much the same boat. We coped.

When we went on holiday (caravan in Cornwall) we had to plan it and save for it.

My monthly income was worked out to the penny and I automated all of the payments exactly, including many credit cards. I managed the problem with technology!

But things change. And now I run a company I "have money" as some would say. Now, a pub round or paying the bill in a restaurant is not a problem. I am really glad that some of the day to day issues are gone.

But what I did not realise is how things move on and change over time. How one lives in a "level". I am reminded of the level of my character in WoW and how spells and damage and money move on....

I have things to worry about now that would have driven me to, well, fuck knows what, a decade ago. I had a bill from my favourtive telco this month that was around £35,000 more than I thought. Looks like it is right and just not what I expected for various reasons. I'll cope. But FFS a decade ago that would have killed me. I had not paid the £30K mortgage on my first house back then. So I have worries on a new scale. No more do I have to worry about the cost of a round but I do have things to worry me.

Now, what I have realised is that it is relative and you sort of "move up the ladder" step by step. I am sure there are people that day to day deal with millions in a way that would even now make me lose a lot of sleep or worse.

What we have to do in life is work out if we want to move up that ladder and if so how we do it. There are plenty of people that stay at one level, and are happy there. They have their challenges where they are, but what they risk is less. What shocked me one day was working out that there are people with nothing, begging on the street, who had a lot more than me because of negative equity in my house. The bigger the stakes, the bigger the win and the bigger the possible loss.

So as a life lesson we have to work out what risk we can handle - where we want to be. We all want to be "one rung up", but when do we decide we are safe where we are. When do we stop and say "I am happy here".

One life lesson though, if you are working your way up the ladder, if your friends and relatives ask for money - i.e. people lower down on the ladder want help - it is nice to help - but one day you have to say "no" and be the "bad guy". If not then they keep asking and keep asking for more and more and more. So that *will* happen. The sooner you say "no", the better. "Giving" should be something you want to do and something you feel happy to do and can do - it should not be forced upon you. Give when *you* want to, and can afford to, and don't give in to demands and pressure. Everyone is happier, including you...

Money is relative - use it wisely.


To infinity, and beyond...

Needless to say - our favourite telco yet again! This time I would like this chance to publically apologise to our customer for the inconvenience. I know the fact it was not our fault is not much consolation and I understand the frustration of having an office off line like that. It is appalling.

What I find particularly annoying is when problems like this are quite so unnecessary. It is not like something broke, even!

It all started when an engineer went to install FTTC and refused to proceed because the customer did not have a "business hub".

We have seen this before, occasionally, and usually they either refuse and go away or they continue reluctantly. This time the engineer left the job half done with no ADSL or FTTC.
This really looks to me like a case of favouring their retail arm over other communications providers, and is just not on. It is very clear to me that has this been their retail arm, this would not have happened, and I challenge them to deny that.

What is worse is that they they took 8 days to fix it. In a long series of emails, marked confidential, that blamed system problems and claimed that delays where their suppliers fault (AKA their own). Madness.

I have to praise my escalations manager, Shaun, for staying on top of this. At one point he was working around the clock chasing them from shift change to shift change to get things progressed.

Finally, they seem to have refused to provide any sensible explanation that we are allowed to publish and are not even waiving the install cost to compensate for the problems.
I would stress to customers reading this that things normally go very smoothly, and this is the first time the job has been aborted half way through...

[Reposted as blogspot lost it. Thanks to Simon for finding a copy]


How fast can you get broadband?

Just under 3 working days for phone line and working ADSL is probably a record :-)

Normally a phone line is around a week to install, and broadband is also around a week to install. Usually both can be done together though, but often a phone line can take several weeks.

However, it seems that some times we can get lucky. We have one customer who is now connected on a brand new phone line which was ordered only 3 working days ago.

The first bit of luck was the phone line install. A business line install was available on a 3 working day appointment. That is without paying any sort of expedite fee! This depends on engineers being available in the specific area at the time, but we have WLR3 B2B XML gateway systems now that make it easy to check appointment availability and book the appointment.

The other luck was that we were able to do a simultaneous provide of broadband. We do that all the time, but as broadband is normally 5 working days lead time we were not sure it would work. BT actually put a due date for 5 working days, but it was all done at once today like any normal simultaneous order.

So, just under 3 working days from start to finish, phone line with broadband.

Please don't expect this every time though :-)

Longer term plans are that we should be able to offer the appointment dates to customers on the on-line ordering (in some cases) so that people can know when they order what they can expect, and reserve the appointment there and then!

And well done to Paul, Andrew, and James for their work on the WLR3 B2B XML gateway interface over the last few months - it is finally paying off.

(Once upon a time broadband service would go in for existing phone lines in under 24 hours, but the system was improved by our favorite telco some time ago, and now one can pay a lot to expedite an order and still have no guarantee it will be that quickly)


Sky being a pain

What can I say!

They call, insist they need to replace the sky box, but want me to give out details of who I am. FFS they called me!!!


Phone lines

What a busy day...

Been working all day on fine tuning WLR3 B2B XML (yeh!). Basically it is a computer to computer way to talk to BT to order, cease, and modify phone line service.

No end of stuff - things like "picking a phone number" or "picking an appointment" and all sorts. However it is going well.

We may even start doing phone lines with phone calls soon! At present we only do them for DSL service (outgoing calls barred) and about 10% of our broadband lines use this. It means one bill for broadband with the supporting line.

I think that we are now at the stage where, in theory, when we have it fully integrated, that we can do anything BT Retail can with a phone line, which is pretty cool really.

Just a nightmare of badly written XML specs. Mind you - I have to say - overall these are way better than the BT Wholesale B2B XML for broadband lines :-)

Fun fun fun...


Beer festival (stats)

I think I can say the wifi for the beer festival worked well.

Over 15GB was downloaded, and around 1.5GB uploaded.

There were 642 distinct pieces of equipment connected over the event.

Based solely on DHCP client names it looks like:-
34% iPhone
19% Android
2% Blackberry
1% Nokia

We provided both 2.4GHz and 5GHz services, but during the event we saw very few devices using the 5GHz. My iPad2 and Mac Air were ones that did. I suspect 5GHz wifi is only in the newest devices. I found the 5GHz was much snappier to use, but that is not surprising.

We provided a password protected SSID (AAISP) as per the posters, but having realised the event was not going to swamp things we provided an un-passworded SSID called "AAISP Beer Festival" which is what most people connected to.

Coverage was based around one AP (Ruckus) in at the cider area, but covered both tents and a most of the field quite well.

In future it is sensible to operate a few APs to ensure more thorough coverage including the queue.

Our DHCP server (FB2700) worked well, but the number of clients did result in us making a few tweaks to improve the way it handled things and new s/w has been issued. We also had one hitch for a few minutes when we deployed some additional IP addresses and had not set up DNS correctly.

The whole event was run on public IPv4 addresses and public IPv6 addresses with no NAT. Google access defaulted to IPv6 as well. We confirmed iPads, iPhones and Android phones and tablets were using IPv6 with no problem.

All in all - very educational.

I hope everyone that attended liked the beer, cider, and the wifi, and had a fun weekend.

TOTSCO moving goal posts, again!

One of the big issues I had in initial coding was the use of correlationID on messages. The test cases showed it being used the same on a se...