Tuesday, 20 February 2018

Let the juice flow

Well, the nice man from British Gas came round and did a very neat job, and we are all 100A now. Cool.

Unfortunately there was another side effect of having everything re done that has added a lot to the cost! A new washing machine.

Turns out the old one had an earth leakage issue but was not tripping the old circuits (may have been one of the non RCD circuits), and so as soon as we put in RCBOs, we find it is duff.

All good fun.

P.S. the geek in me that passed A-level physics can't help feeling there should be something more fun and youtube worthy to do with a 100A power feed than just charge a car and run a tumble dryer at the same time. Shame.

Sunday, 18 February 2018

Clawing back a DD

I have covered this before, and slightly on my recent blog, but I think I have had a few more angles on it now...

Suppose I buy services from BigTelco and agree to pay by DD. I run up a bill of £100. They take £100 by DD, simple.

How it works..
  • I agree to pay by DD and provide an instruction to my bank allowing BigTelco to request them to send money from my account to BigTelco.
  • The bank, in return, agree to provide me with the Direct Debut Guarantee. It is pretty simple - if a mistake is made I am entitled to an immediate refund.
  • BigTelco tell me they are going to take £100, let's say the pick 10th of month
  • They tell my bank to pay them, but make a mistake, saying 9th, and the money goes on the 9th
  • For sake of simplicity let's say I have the money, the account does not even pay interest, I don't even notice the error, no inconvenience or costs at all.
At this point I have paid my £100, simple. Everyone is happy.

Then, later, I get my bank statement and realise it went on 9th not 10th. So I tell my bank. For the sake of argument, let's assume bank not being arses, and in a case like this I could literally show them the advance notice saying 10th and the bank statement saying 9th, so no question, no argument, no doubt.
  • My bank give me £100 immediate refund.
  • The bank, having now lost out, make an insurance (Direct Debit Indemnity Claim) from BigTelco
  • BigTelco pay out on the claim sending £100 to my bank.
[update] It is worth explaining a bit about this complicated system. Obviously the scheme could have been that the originator (BigTelco) had to give an immediate refund if a mistake is made. Had that been the case it would be clear the money was sent back by them, but one assumes people did not trust the administration of the guarantee to be in the hands of the party that made the mistake in the first place, and so the guarantee is made by the banks and not the originator, hence this complex process of an indemnity (insurance) to the banks.

Now, at this point I am £100 better off, and BigTelco is £100 worse off.

The question, and the whole point of the blog post, is do I still owe BigTelco £100?

I can think of three reasons why...

1. BigTelco were forced to send me £100, so obviously I do.
[update] AKA, the payment was "reversed" so obviously I do.

This is probably the most obvious and what most people and companies would assume. Obviously if I only owed £100 but they took £110 and I got a £110 refund, I would in fact only owe the initial £100 not £110 that was a mistake, but clearly, having been forced to send money back to me, I now owe whatever balance is now due after adding that refund. Obviously there could be something in BigTelco's T&Cs to cover this case, but that does not seem to be the case generally as everyone assumes this scenario is BigTelco returning the money to the customer.

I think not!

[update] This is not a case of the payment being reversed (see above for the complicated way this happens).

BigTelco are £100 worse off, but not because they were forced to send me £100. They sent my bankers £100 and that was because they agreed to insure my bankers. The £100 was not "for me" it was for my bankers that have lost out to the tune of £100 and made that insurance claim from BigTelco.

I am £100 better off, but not because BigTelco were forced to send me £100, no. The £100 was from my bankers not from BigTelco, and was because my bankers agreed a guarantee with me.

To illustrate, consider, after taking the £100, BigTelco went bust and by the time I told my bank of the mistake they no longer existed. In that case my bankers still have a guarantee agreement with me and still have to pay me the £100. In that case my bankers are £100 worse off and have nobody to make an insurance claim from. I get to keep my £100 in that case, clearly. This demonstrates my £100 did not come from BigTelco.

2. Insurance companies can pursue losses as if the insured

Another principle is that if you pay out on insurance, you can then pursue someone for damages. E.g. if you were to break my phone, I could pursue you for damages. If, however, I claim on my insurance, then my insurers can pursue you for damages.

So BigTelco insured the bank, but they can pursue me for the £100 they had to pay out.

I think not!

The insured risk was "a mistake in the Direct Debit payment". The mistake was made by BigTelco, not me. So if they have anyone to pursue, it is themselves. I am not the cause of the insured event.

3. Unjust enrichment.

There is a principle of unjust enrichment which may apply, and I am not a lawyer.

However, I am £100 better off, and BigTelco are £100 worse off, I am "unjustly enriched" and so should pay them the £100.

I think not!

Again, this was not £100 from BigTelco. If I am "unjustly enriched" I should pay the money back to the person that paid it to me, my bankers. However, I do not think this is "unjust", this is money from a guarantee the bank offered me and on which I validly claimed.

Consider Pizza Hut. If they take more than 40 minutes to deliver my pizza I get £10. This is not to cover losses or damages in any way - I don't really have any losses for a pizza a few minutes late. It is a guarantee they offer. It would not matter if it was £10 or £1000 they pay, if they agree to pay it if the guaranteed event does not happen, then I justly receiving that payment.

I don't see how my bankers offer of a guarantee is any different. In this case they agreed to refund me if a mistake is made, and they did what they agreed when a mistake was made. My gain is justly from the guarantee the bank offered me.

Also, what of the example above where BigTelco no longer exists. Surely my getting a refund would be 100% just in such case, even though it is my bankers and not BigTelco that have lost out.

I am not a lawyer

One thing, obviously, is a judge is going to do the whole "walks like a duck" thing, and clearly say that the money came bank from BigTelco to me in that case, and so I still owe it. But really, that is not how it works and not what happened. I wonder if there has been any case law on this.

Imagine the chaos if there were - every clawed back DD ever would suddenly be something you could keep. People would be suing suppliers like mad if there was a case the way I think this should work.

On that bases, I must be wrong, surely. But... think of PPI, that was rock solid logic until the day it was not. This could be another PPI fiasco if it ever happened!

Just a though :-)

Saturday, 17 February 2018

Startgate Origins - Indeed!

Hmmm...

Stargate is one of the TV series I quite liked, and the films, and I have watched them all several times. So when I saw there was something new, Stargate Origins, I was quite looking forward to it.

Initially I thought it was a new film, a prequel to the initial films, set in the 40s or so "Young Catherine Langford embarks on an unexpected adventure to unlock the mystery of what lies beyond the Stargate in order to save the Earth from darkness." - it's MGM so I expected it should be good.

Even so, it grates with the initial film and start of the series where Catherine Langford did not know it could open and access other worlds or that there was ever more than one place it could go. The plot is at odds with it all, and could have been done better. If only the plot did not involve Catherine, it could have worked as an unknown site track in the gate's history, maybe.

But putting that aside, I thought this could be good, and actually the trailer looked good. Release 15th Feb, yay!

Then I realise it is a new series, and actually that is way better than just a film. Cool.

But no, and WTF?

I am used to two main formats, a film which is like 1.5 to 2.5 hours, or a series which is a dozen or more episodes which are distinct stories (sometimes double episodes) of maybe 45 mins to an hour each.

But this is crazy, so far released is three episodes with streaming via an app. The first is 10 minutes, including credits, titles, and a long scene from the original movie. The second is 8 minutes, including credits and titles. The third is 13 minutes including credits and titles. These are not "episodes". You are stretching to call them parts between advert breaks in the UK even! They are little more than "scenes" at best.

Each is in fact just the steps of a longer story, not distinct "episodes". I would not normally give away "spoilers" but seriously, at this stage, there is nothing to "spoil"...
  • Stargate unearthed (clips from original film)
  • 10 years later, Prof and Catherine Langford made no progress, losing any funding
  • Nazis turn up, with old parchment and notes and open the gate using car batteries
  • Take a few people inc Prof Langford through, meet female G'ould that kills one of them
  • Catherine, left behind escapes and gets British army chap and his mate
  • They dial, using car batteries, and go through
That is it! All 31 minutes in total. It may make like the first third of a story/episode, perhaps. If this was SG-1 we'd maybe be at the first advert break by now.

Vaguely redeeming feature, it has Connor Trinneer (who played Michael in Atlantis, and Trip on Enterprise) as Prof Langford. Even then, the make-up is not that good.

I mean, I have no idea, if, when finished (IMdb says 10 episodes) it may actually be possible to stitch together to make like one episode, or even something that could be called a film, but at this point I am less than impressed. I only paid £19.99 for this (with streaming of all existing movies and series), and I think I was ripped off!

Only IMdb review: "NO...JUST NO complete and utter drivel ,If MGM want to destroy a franchise this is the way to do it production values very poor scripts and concept worse, sets just not worth the effort ,totally ignores not only the movie, and series universe but craps all over it. who ever wrote this and decided it was a good idea needs taken out and shot. very very disappointing" - well, I agree!

What is this crap?

Friday, 16 February 2018

Barclays incompetence

I asked Barclays to refund a Direct Debit in accordance with the Direct Debit Guarantee. This should be a simple and routine thing for any bank involved in the DD scheme. Sadly not, and this is the exchange with Barclays lasting a week! I have redacted some details obviously...

First message, via secure on-line banking messaging...

Fri 09/02/2018 20:19 A direct debit from my account today appears to not have had the required advance notice. Please provide an IMMEDIATE refund as per the Direct Debit Guarantee. The payment is for £271.38 today to BUPA CENTRAL A/C from my account number XX-XX-XX XXXXXXXX. Don't cancel the Direct Debit instruction, just refund that specific payment. Thanks. 

Concise and to the point and all of the details they need.

Well, I get (at every stage) a standard reply saying they aim to respond within 48 hours (clearly bullshit), so I'll omit those... But I did reply to the first one, just to be clear...

Fri 09/02/2018 20:22 Sorry but a reply in 48 hours is not acceptable, the Direct Debit Guarantee you offer is an IMMEDIATE refund, and not a 48 hour delay, please rethink this and reply IMMEDIATELY with a REFUND as per your GUARANTEE.

So, how long to wait I wonder... After 4 days...

Tue 13/02/2018 07:29 It has now been substantially more than 48 hours. This is meant to be an IMMEDIATE REFUND under the DD guarantee. This does not feel very IMMEDIATE to me. Please act on my request today or I will have to take this matter further.

Finally a reply...

Tue 13/02/2018 13:47 Hi Mr Adrian, 

Thank you for sending us a message and I apologise for the delay of response. 

I understand that you would like your direct debit payment to BUPA for £271.38 on 09-Feb-2018 to be returned because you were not given an  
advance notice for it. We can progress this as an indemnity claim for you. Most customers receive a refund which will be visible in their  
account immediately, however on occasions we may require further information regarding your claim to establish the error before a refund can be  
provided. If we do require further information from you, I will advise you of the outcome once your claim has been logged. Whilst the bank can  
provide a refund, you may be required to pay back the amount refunded if an error has not occurred. In this situation, the originator that  
collected the DDR is likely to seek payment from you, which may include legal action. Are you happy to proceed on this basis? 

I look forward for your response, Mr Adrian. 

Regards, 
Rodante Jericho Araullo 

Customer Support Manager 
Barclays Bank PLC

This is what prompted my recent rant. "We can progress this as an indemnity claim for you" is just wrong. I am requesting a refund under the Direct Debit Guarantee, not any sort of "indemnity claim". I respond, promptly...

I have to say the scare tactics of possible "legal action" are over the top. There may even be some major flaws in the logic here. I request a refund as part of a guarantee the bank offers me. The bank claim from originator as part of an indemnity they have with the bank. That indemnity is to cover losses due to the originator failing to follow DD rules (such as giving notice). I see nothing in either of those to processes that impacts the fact I did pay the originator by Direct Debit as per the contract I have with them. Even after my bank (not the originator) refunded me for an error, I still paid the originator as per their contract terms. The fact they paid on an insurance policy they have with the bank because of an error they made (not my error), does not mean they can reclaim that insurance pay out from me in some way, does it? So actually I feel the law and the contracts and guarantees in Direct Debits have a huge hole in them.

In practice all originators consider such a refund and indemnity claim to be "un-paying" the money you owed, but I am not sure that actually holds legally (before anyone asks, A&A T&Cs do make it so for our DDs).

There is a new clause on the DD guarantee that if you get a refund to which you are not entitled, then you will have to repay it if/when the originator asks, but in this case I am entitled to it as they made a mistake, so even that clause does not kick in.

Anyway, in spite of scaremongering I try to explain I do want this!

Tue 13/02/2018 14:02 I am making a claim against you under the direct debit guarantee. So refund the payment immediately as per the guarantee. Don't cancel the ongoing instruction. 

The error is simple, I have not seen the agreed advance notice for this collection. Obviously I cannot prove that as one cannot prove a negative. 

As for an indemnity claim, that is entirely a matter between you and the originator and nothing to do with me, so I'll leave you to do whatever you wish in that regard. My dealing with you relates only to the Direct Debit Guarantee which you as a bank offer to me. 

Please confirm when you have made the refund. Thank you.

Note, I state things like "So refund the payment immediately" and "Please confirm when you have made the refund" so there can be no doubt I want them to go ahead...

But, oddly, nothing, no reply... I did say they need to action "today" or I would take further, so next day...

Wed 14/02/2018 07:10 I requested this on Friday. It is now Wednesday and it has not happened. 

I remind you the guarantee is an IMMEDIATE REFUND. 

This is not IMMEDIATE. 

I did say in my last message that if not done yesterday I will have to take this further. 

As such, please advise the process to refer this matter to the banking ombudsman as Barclays have failed to response to communication within their 48 hour target and failed to provide an immediate refund in accordance with the Direct Debit Guarantee.

So this really is making it crystal clear I am expecting this to have been done by now. I mean how clear can I make it?!

So I give up and contact them on twitter, and end up talking to the social media team on the secure messaging system... Even so this is next day.

Thu 15/02/2018 16:00 Hello Adrian, 

I can see that my colleague has replied to you about this on the 13th of February, asking you to confirm if you're happy to proceed with the  
indemnity claim to recall your direct debit. As you haven't specifically said you're happy to proceed with this the claim hasn't been actioned.  

In regards to the timescale, we aim to reply within 24 hours however it can take up to 5 working days to get a reply. If you need something to  
be actioned urgently I'd recommend that you ring us directly on 03457 345 345 (24 hours a day, 7 days a week). 

Let me know if you're happy to proceed with the indemnity and I will get this set up for you to recall the direct debit payment for you. 

Kind regards, 
Ramona Oprea 

Barclays Bank PLC. 

I mean, really, all of my messages were somehow not I "specifically said you're happy to proceed" how the hell is that a sensible reply in any way?!

Thu 15/02/2018 16:06 I replied at Tue 13/02/2018 14:02 

I stated "So refund the payment immediately as per the guarantee." 
I also stated "Please confirm when you have made the refund. Thank you." 

How clear do I have to be on this. As per my original message nearly a week ago and that reply. 

REFUND THAT DIRECT DEBIT AS PER THE DIRECT DEBIT GUARANTEE IMMEDIATELY. 

Is that clear enough for you?

So hopefully now it makes sense...

Thu 15/02/2018 16:53 I am sorry for the confusion created earlier with my colleague, I think he got confused when you've mentioned that this is not an indemnity but  
a refund.  

However I have now raised this for you and the details have been sent to our processing team who normally action by the next working day,  
however on occasions we may require further information regarding your claim to establish the error before a refund is to be made. If you have  
not received the refund, it is likely we need to obtain further details from yourself.  

Once this has been actioned you should see the refund coming back into your account.  

Kind regards, 
Ramona Oprea 

Barclays Bank PLC. 

And finally the refund happened on Friday... A week after I demanded it.

Barclays, this is not how you handle an immediate refund!

Apple iMac Pro 10G Ethernet buggy?

I would be interested in anyone else able to test this on their iMac Pro to confirm as it seems highly unlikely to be anything but a simple driver bug. Sadly to test you need to craft broken TCP/IP packets.

Myself and a colleague have wasted a lot of time trying to track an issue over the last few days, it seemed to be that a simple TCP stream could have corrupted data in it.

Basically, we would do a test of a web page served from a device (the FireBrick as it happens, with test s/w on it), and the page would be all nulls and spaces, or should be, but random corruption would appear.



To be 100% frank we have not tracked it down yet, but we initially assumed it had to be an issue in the new FireBrick code. We are just launching the FB2900, so any issue in testing is somewhat serious.

Now, if you know anything about networking, TCP as a stream will only work if you get proper packets at both the TCP level and lower levels like Ethernet, with good checksums/CRCs. Whilst Ethernet is generated on each link. The TCP checksum is end to end (no NAT involved here).

So, you have a visible, albeit slightly intermittent problem - basically view a specific web page from a specific device and see gibberish in the page. You naturally assume it has to be within the TCP stack / processing of each end as that is where data could be corrupted without breaking the TCP checksum logic. There are two ends, one is my nice shiny new iMac Pro and the other is a FireBrick somewhere on the end of a DSL line. It has to be one of those two ends with the issue, and well, obviously not the iMac, so look at the newest code, and latest hardware, at the FireBrick end. Anywhere in between would cause a TCP checksum error and so we would not see in the final TCP stream.

A lot of time wasted, and a clue pops up - cannot make it happen from the iMac (not the Pro) at the office. Hmmm. Sadly it is a tad intermittent, so not conclusive. I could not make it happen locally either, but assumed the slower uplink and more buffering may be a factor.

Then it gets really really weird, and I can imagine some network engineers would pull their hair out at this point. On my home iMac Pro I did lots of the same test. I tested on wired Ethernet (running only at 1Gb/s), and on WiFi. Every time on wired it got corruption. Every time on WiFi it did not. A dozen tests. Pretty conclusive. WTF?

Seriously how can that be - clearly the iMac Pro is not randomly corrupting TCP streams, as I would notice in web pages, images, etc. Even, as it seems, levels like 1 in 1000 packets, you'd notice. So why only the stream from the FireBrick. It cannot just be an iMac bug...

So I used wireshark to pcap on the iMac Pro, and yes, it saw the corrupted content. Odd. Then it occurred to me - tell wireshark to check checksums. Bingo, the TCP checksum is bad. Yet the iMac Pro has accepted the packet and fed the corrupted data in to the TCP stream!

This changes the game massively. It means this is a raw data corruption somewhere on the route from the FireBrick to me. It could be ANYTHING now, as not in the TCP realm as the TCP checksum is wrong. We were (probably) looking in totally the wrong place for this issue. Thanks Apple!

It seems that the iMac Pro wired Ethernet is not checking TCP checksums. The WiFi is fine. Likely cause is that they use h/w TCP checksum logic on the MAC (not Mac, I mean Media Access Control, the Ethernet hardware) and there is either a h/w or s/w bug meaning the checksum check is not being checked! It is an easy bug to exist and one you will not notice generally as almost all packets have no TCP level corruption!

Reported to Apple but also said that I am not spending ages doing logs and crap for them unless I am paid my hourly rate.

When debugging you really do not expect two unrelated bugs to be in play at once. This is hard work.

Sadly, at this point, we confirmed the corruption is definitely upstream of my Mac (dumps on router in-between), but the bug has vanished for now - Heisenbugs we call them. If/when we manage to reproduce it, we can then trace at each step along to way to find if an issue in our network, BT, the modem, switches, and so on, or, as is seemingly increasingly unlikely, the FireBrick at the far end. As this happened on old FB2700 and new FB2900 on this DSL line, but not anywhere else, the chance of this being in the FireBrick is getting vanishingly small.

Chasing bugs can be hard!


Thursday, 15 February 2018

Power to the people: Stage 1

Upgrading the power in the house is not something I really expected, but seems like a good idea.

The main driver is the fact my son has a Tesla, and now has a 32A Tesla charger on the wall. It is quite nice technically, can take one or three phase, and can be configured to tell the car how much current it is allowed to draw. Mostly James uses the free supercharger on his way to/from work, but he tops up over night at the house. It makes it very cheap to run (for him, at any rate).

So, having installed the Tesla charger, we can be using 32A extra. That is a lot for a domestic installation, even for a large(ish) house like this one. The first time it was charging at the same time as the tumble dryer it tripped the 80A RCB on one half of the consumer unit. Now, we were not up to 80A, I can be pretty sure of that, and it is an RCB, so it is likely just all of that load from various sources led to just enough leakage current somewhere. Hard to be sure to be honest. Moving off the RCB worked.

There are therefore a couple of concerns. One is the nuisance caused by an RCB that trips half the house. We have computers with disks, a wax printer with melted wax in it, sudden power losses are a nuisance. To be fair, computers are way better at this these days (journalling file systems, etc), but if you are in the middle of something time consuming you can end up starting again. And then there is the possibility that you are playing some on-line game, which, by total fluke, my son and I were doing at the time (I rarely play anything, this was AoE on steam!).

The other concern is the overall current usage, with one device that can draw 32A, and a "commercial" tumble dryer on a 30A circuit, and five air-con units on 16A circuits. One can see this adding up.

So, yesterday was stage 1.

I have had the consumer unit replaced. As per that picture it is all RCBOs. This means each individual breaker is an RCB, rather than a breaker for each half. They are on 100A switches on each half. This is not cheap, and took many hours to do. But now, each circuit will trip independently of the others, which is much cleaner. I also isolated my "Internet" stuff (connection, switches, PoE for WiFi, and security cameras) on to their own circuit. The alarm is already battery backed up. So this means less chance of tripping something taking out the Internet as well.

Also, the tails to the meter were upgraded from 16mm to 25mm to allow for 100A feed.

Also, a separate meter was installed on the Tesla circuit so I know how much James is costing exactly.

Stage 2: The next stage is upgrading the tails from fuse to meter - next week. They are also adding an isolation switch, which is nice. All that for £44 from British Gas.

Stage 3: We checked the fuse, and it is marked 100A on the carrier, but is in fact only 60A. Wow, we are way closer to hitting that than we realised. So we need that upgraded. That cannot happen until the tails are upgraded, and they checked the meter is 100A, which it is. So we are good to go for 100A installation...

What a "dick head" (his words): NRG Installs Ltd

Wow, I get some dodgy sales calls, but this takes the piss.

It took me ages to find he was calling from NRG Installs Ltd.

  • He could not say who he was calling from, just "NRG Installations"
  • He did not know the company number, and thought his phone number was the "company number" no matter how hard I tried
  • He did know his web site, but thought that the web site/domain was actually the "company name"
So then we have the fact he called a number on the TPS...
  • He told me the number he called, which I presumed was one of my numbers, I have a few. It is a number on the TPS!
  • It turns out he made the number up (i.e. lied), but then rants at me for lying about it being one of my numbers!
  • He refuses to say which number he actually called - to be a "dick head" (his words)!
  • He has no idea how to say a phone number, i.e. area code, pause, number
  • When I did track down which number he did call, from the incoming call logs from our PSTN gateway, he is adamant that is not the number he called. Now, in theory it could be some sort of re-direct but that is unlikely (I don't recall setting one up and would not have to that specific number), but we normally see redirection headers on the incoming logs in that case.
  • The number he actually called is in the TPS and has been for a long time.
But it gets worse, I mean really bad!
  • He says the TPS gives them numbers and they call them
  • He actually has no idea who the TPS are even
  • He thinks we should sue the TPS and not NRG Installs Ltd for the PECR breach
  • "I thought we were meant to call the numbers that the TPS give us"
I have muted the number he called from the recording here... It is well worth listening to...



Sadly there is little point in talking to the ICO on this, they don't care.