Archive for the ‘Linux’ Category

coreos-cloudinit not found. Could not validate config.

02 Jul

When Installing coreos, this is a common problem depending on the ‘live CD’ used:

./ -d /dev/sdb -C stable -c ~/cloud-config.yaml
./ coreos-cloudinit not found. Could not validate config. Continuing...\

All manner of ‘solutions’ appear on the internet, actually it is simply stating that ‘coreos-cloudinit’
is missing.

The reason being that the so called install scripts are actually not fully integrated.

Simply following the instructions at :

will ONLY work IF you use a liveCD that contains ‘coreos-cloudinit’

Get in the prerequisites first:

1. Build your cloud-config.yaml BUT validate it first at:

Then ensure that you perform the following BEFORE attempting the installation

your working directory:
cd coreos-cloudinit-master/
cd bin
#ensure you put the binary on a path where it can be found
cp coreos-cloudinit /usr/bin/coreos-cloudinit

Then cd back to your original working directory where you have: (or whatever you called it)

./ -d /dev/sdb -C stable -c ~/cloud-config.yaml
Checking availability of "local-file"
Fetching user-data from datasource of type "local-file"
Downloading the signature for
2015-07-02 20:12:43 URL: [543/543] -> "/tmp/coreos-install.GLOoJSUz0c/coreos_production_image.bin.bz2.sig" [1]
Downloading, writing and verifying coreos_production_image.bin.bz2...
2015-07-02 20:14:03 URL: [196978663/196978663] -> "-" [1]
gpg: Signature made Thu Jun 18 17:08:09 2015 HKT using RSA key ID xxxxxxxxx
gpg: key xxxxxxxxx marked as ultimately trusted
gpg: checking the trustdb
gpg: 3 marginal(s) needed, 1 complete(s) needed, PGP trust model
gpg: depth: 0 valid: 1 signed: 0 trust: 0-, 0q, 0n, 0m, 0f, 1u
gpg: Good signature from "CoreOS Buildbot (Offical Builds) "
Installing cloud-config...
Success! CoreOS stable current is installed on /dev/sdb

And that gets you to the next stage.


Allwinner (SUNXI) A20 getting two CPU up

30 Dec

In my real work, I need a pre-boxed computer at a throwaway price, something I can walk into a server-room covertly stick inside a server cabinet, power-up and then use as a secured ‘base’ from where I can find out ‘what the hell is going on’ (all with the approval of ‘upper management’)

I have been playing about with the various versions of the TV box ‘construct’, what I need is a cheap secure (relatively speaking)
throwaway computer that contains in-bulit WIFI/Ethernet/Bluetooth USB and in a nice sealed case I can fill with epoxy……

Currently I use two units
840A (A20 – dualcore) & 809 III (3188-quadcore)

Enter the 840A TV box

Looking about on the internet you will see the A20 being hacked all over the place ( even at wrt), however when you look a little bit closer you will see that in many of the Kernel startup logs that ONLY ONE CPU is actually enabled and active.

Indeed if you use the ‘released’ SUN-XI code… guess what…. yep only one CPU comes up or you have to start using their ‘closed binary blobs’ for the functionality.(Having worked with some Chinese software developers… I would NEVER allow any Chinese built closed source on my network).

What happened

The Result
Whilst this is still a work in progress we have gotten this far.

[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 3.19.0-rc1-00011-g53262d1-dirty (bob@my-virtual-machine) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #14 SMP Sat Dec 27 13:53:26 HKT 2014
[ 0.000000] CPU: ARMv7 Processor [410fc074] revision 4 (ARMv7), cr=10c5387d
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] Machine model: I12 / Q5 / QT840A A20 tvbox
[ 0.001489] CPU: Testing write buffer coherency: ok
[ 0.001836] CPU0: update cpu_capacity 1024
[ 0.001853] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.001928] Setting up static identity map for 0x403d4b80 - 0x403d4bd8
[ 0.003335] CPU1: update cpu_capacity 1024
[ 0.003341] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.003428] Brought up 2 CPUs
[ 0.003449] CPU: All CPU(s) started in HYP mode.
[ 0.003455] CPU: Virtualization extensions available.


USB miners and the Dipo Electronic 19 port 20A USB Hub

20 Nov

This is a 19 port hub with an integral power supply that is capable of reliably supplying MORE than 700mA per port without overheating or becoming a fire hazard.

Dipo  hub , with engineering modifications for reliability

Dipo hub , with engineering modifications for reliability

Some of the Basic specifications:

– Fully 480mb/s at each port
– 16 Front facing Standard A USB ports
– 3 Side facing Standard A
– 1 Master hub connection Standard B for connection to Computing Equipment or other hubs
– Fully fused internally via multiple poly-fuse resettable fuses both on each individual port and on the main power feed to the Ports.
– UK/European standard 3 pin power plug
– Hub runs COOL

Unlike cheaper USB ports that only implement links at USB 1.0 standard (12mb/s speeds but state they are ‘compatible’ with USB 2.0) this is a professional FULL 480 Mb/s port that complies and implements the full 2.0 USB standard. It may also be used to connect to generic USB 1.0 equipment.

The good thing about these hubs is that you can load them up with 19 Bi-Fury miners (around 76 gh/s) and the miners would STILL run as intended.

The supplier is a Chinese company we have been working with, each hub we sell is inspected both at the electrical and electronic levels to ensure the correct functionality of the product.

It can be purchased here:

Comments Off on USB miners and the Dipo Electronic 19 port 20A USB Hub

Posted in Android, Arduino, BITCOIN, forensics, FPGA, Linux, PCB Design, Reverse Engineering


Bitcoin Samsung 2440 Host controller

08 Jan

As is the way, we were sidetracked into taking a look at getting WiFi working on the Samsung 2440 embedded control board, the idea being that we could have a backup system for when:
1.HongKong telecom manage to cut the telephone lines.
2.The shitty little HKT ADSL modem or its PSU burst into flames again, yep it only takes them 3 DAYS to get a replacement to you.
3.Dock with my mobile phone, since that has unlimited data rate, which means I can cut one ADSL & one router from the mix I am currently using.

Sadly getting WIFI working on an embedded board is not that easy, EVEN with linux

Tried downloading ‘compat-wireless-2012-12-17’, but unfortunately the integral bash scripts wont run under busy box on the embedded system.

Tried downloading Bash for the embedded system, but it won’t compile, instead giving a segmentation error.

Tried cross compiling the needed wireless libraries… fail……

It’s not that I cannot figure it out, but rather how much is my time worth to get WIFO working on what is basically a dead out of date underpowered board.


For $89USD+$30USD shipping we can get an up-to-date Quad core samsung4412 at-least 4 times faster than a Pi and with enough memory to run a miner controller for a good many ASIC miner units and it comes with a functioning wireless installation of linux.


Bitcoin controller using YL2440 (Cont.)

24 Dec

In our last article, we were of the mind that the YL2440 sucked so badly as a bit-coin miner control board, that it could easily outperform a Dyson Cleaner.

As is the way, things come to light that change our interpretation of the data.

It now turns out that the “boot-loader” developed by the Chinese company to pre-load the kernel, was not actually passing the available ram size(64Mb) to the Linux Kernel on boot up.
For whatever reason, the user configurable settings were not being passed in, as a result the kernel was launching with only 16Mb of ram….. The fact that Linux could even run a system including Python in less that 16Mb of ram ,really is a testament to the design of Linux.

Python sucks at the best of times, and limiting its available memory only makes it worse.

New Improved YL2440
After making some modifications to the Linux kernel and forcing a new command line on boot up,
we now have the full glorious 64Mb of ram, and boy what a difference it makes.
No longer do we need to wait 3 minutes for an SSh login, and even the web-front end of the python miner is more responsive.
Total ram consumed… is now sitting at 20Mb, most of which is being used as buffers.

Our next task is to try and get the Stratum Mining proxy working, since this will cutdown on the data bandwidth needed by the miner, plus there is a 2% fee reduction with Stratum Mining.

Once that is done, we will be re-visiting the issue of the RS232 ports and why they are unable to function at 230400 baud.


CentOS 6 installing the Graphical interface (GUI)

06 Aug

When doing work for customers I work mainly on VM installations. This allows me to try things out and then rollback the OS should anything not work out.(Just HOW cool is it to be able to take snapshots & rollbacks of a complete os!!)
Normally this is fine for 99.99% of all the work I do, It also allows me the ability to offer the customer complete security, because once the VM is securely erased, absolutely all the customer job information is removed from the machine.
Read the rest of this entry »


CentOS 6.X yum does not work

16 Apr

I was recently working on a job that called for centOS.
not knowing what type of hardware the customer had, I opted to build a VM using i386.
Everything went fine until…
Read the rest of this entry »

No Comments

Posted in Linux