My lesson I learnt tonight was to never double the data wire on my 2811 rgb strings. Over the last couple of days, I've been measuring up all my wire runs between strings, so that I can fully test my lights (which were working fine with just the short plugs attached). While I was connecting my lights together using the full length cable runs, I thought to myself that I might be able to get a longer cable run (without a null pixel) if I doubled the data wire with the spare wire (on the 4 core security wire). BIG MISTAKE. Over the next 1hr, my lights were flickering a lot, especially during the white parts. I started unplugging everything and running 1 item at a time. I tried injecting power left, right and centre. I couldn't get any lights to work past about 80 pixels. The multimeter was reading the correct volts. I tried changing the speed on the j1sys-p12r up and down, and had worse result (currently set at 2400). I was at breaking point. As a final test I disconnected 1 of the doubled wires (out of about 12 - this run has 6 different strings), and the results started improving. I then disconnected the rest of the doubled over wires and bingo, a perfect result displayed. I'm guessing the theory would be that the data was being sent down both wires and getting corrupt when meeting at the next join. I thought I would blog this just in case anyone else is having the same problem. Sorry if it has been mentioned before.