Archive for the ‘Ethernet’ Category

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.


Email Scraping the Insane way

29 Jun

Insane as far as an individual goes:
I have had to shut it down because it was a bit too scaleable.
Any computer it was loaded on, contacted the distributed data-storage mechanism and off it went…..
(Over 20 million HTTP addresses in less than 24 hours) with each and every HTTP address recorded.

There is still an issue related to the HTTP storage mechanism, in that if they get corrupted they cannot be recovered and have to be started from scratch, possibly something related to partitioning would be good to solve this problem.

The Story
After looking around at various “email scraping” programs and having a bit of spare time on my hands, I decided to build an email web scraper out of Java.

Yep…. I know Java is supposed to be slow and not as fast as “insert current lame language here
But the crawler is cross platform and that is enough for now.

Key requirements:
1. Don’t duplicate email addresses (actually checking for this is a waste of processing power, since a simple sort and merge will remove duplicates)
2. Don’t crawl the same web addresses unless specifically required to.
(Experienced programmers will already see a problem with #1 & #2, even with 16GB of real ram)
3. Make it fast.
4. Make the physical HTML parser a plugin.
5. Make it ‘seriously’ scaleable.
6. Completely restartable after a crash/shutdown of the Control server.
7. Fluid enough to deal with crawling nodes popping up/shutting down randomly
8. Crawls in the direction of most profitable harvesting.

#1 & #2 actually require that you either store:
A. All the web addresses (HTTP:xxx)
B. All the hashes of the Addresses
Looking at the length of some web addresses (>150 characters) and we can see some design criteria regarding memory starting to creep in.

We actually started testing by implementing a Hashmap in internal memory , that maxed out at about 500,000 entries, but did it in a BAD way: the JVM physically crashed and exited (thanks OSX).
This resulted in the complete loss of the whole crawl session.

You will also be surprised at the number of websites attempting to do IFRAME injections of viri linked into the “mailto:” tags.
This also resulted in JVM crashes, but this was more to do with the antivirus program on the computer.
Basically the antivirus was looking at the stream of data from the web port and then “Clamping” the port by ending the communication session in an abrupt way.
It might have been better if the Antivirus program just inserted “dummy” 0x00 bytes.

To be continued


A really Small Atomic Clock

03 May

Symmetricom have released a development board for their new Atomic clock

I’d Like to do a review of the product and possibly write some cross platform software for the device, but unfortunately the price break is currently putting this baby at $1500 USD for a single piece.
Details of the device, as well as a couple of in-depth data sheets can be found at the following link: Symmetricom Atomic Clock


But they said…… ‘It is 10/100 Ethernet’

11 Jan

We had a look at purchasing some USB to 10/100 Ethernet convertors, unfortunately many were not exactly what they claimed to be .


  • They were 10/100 Ethernet chipsets
  • They were USB compatible(after a fashion)
  • One device stood out as an excellent hand warmer during this recent cold weather
  • You can find more details here: USB to 10/100 Ethernet fact or fantasy.