Category Archives: computers

New settings for 3d printer

My hot end connector burnt out:
Extruder heater burnt out

And my LCD was behaving extremely oddly after that, so I bit the bullet and just got a whole new electronics package: RUMBA plus full graphic LCD, from

Had to compile new Marlin for it, so had to remember all the stuff that I did to get the last one running ok.

Calibrating e-steps:

  1. Write down the current e-steps value
  2. G92 E0 to zero the extruder position
  3. G1 E50 to extrude 50mm of material
  4. Measure how much was extended
  5. Divide 50 by actual amount extruded
  6. Multiply e-steps by that value
  7. M92 E<the value> to set the new e-steps value, or use the LCD

For example:

  1. Current e-steps is 114
  2. G92 E0 and then G1 E50
  3. Machine extended 57.4mm
  4. 50 / 57.4 = 0.87108
  5. 114 * 0.87108 = 99.30314
  6. M92 E99.303

Easy. I forget this every single time and have to scratting around to find the article that helps me do it. I even forgot that I’d written it up on this blog, three years ago, then I stumbled across that now, and didn’t find it helpful.

Other truths:

  • X and Y steps per mm: 81
  • Z-steps per mm: 3980

And remember to do a M500 to save it to EEPROM afterwards. And make sure that


is uncommented, so as to allow EEPROMing. So:

M92 X81 Y81 Z3980 E99.303


JMyron – unsatisfied link is now satisfied

I was putting JMyron on a new machine, to use in Processing on Windows 8, and kept getting this:

Exception in thread "Animation Thread" java.lang.UnsatisfiedLinkError: C:\Program Files\processing-1.0.4\libraries\JMyron\library\JMyron.dll: Can't find dependent libraries
     at java.lang.ClassLoader$NativeLibrary.load(Native Method)

Well, I used Process Monitor to see what was going on, and spotted a load of failed attempts to open MSVCP71.dll during sketch startup.  I tracked down a copy of that C library (msvcp71.dll and msvcr.dll), dropped them into my system32 dir and hay bingo, works.  Process monitor is ace.

I had already installed the C++ 2010 redist.  I guess JMyron needs some extra sugar.


Installing OS over PXE on machine without USB/optical drive

I got a little second-hand Dell D430 laptop to use for my upcoming polargraph show. I’m actually really impressed, it’s a dinky little thing.  No optical drive however, and installing an OS from a USB memory stick didn’t seem to work.  So I’ve done it over the network, and it even seems to work.

PXE (Pre execution environment) is the method, and this is a way of booting over LAN.  Hit F12 on the POST screen and then boot from NIC.  There needs to be a server on the network with TFTP running on it, to dish up the necessary files.  This is hard, but there is a nice little app called SERVA that handles the TFTP/DHCP stuff, because I don’t know how to.  Anyway, I followed the instructions on this site and windows 8 is winging it’s way onto my new old machine.


I initially tried putting the windows 8 disk in and symlinking to it instead of copying the files into the TFTP source folder.  That worked up to a point, but the installation failed.  I think it is because SERVA needs to add some files to the windows installation to customise it for this method, and obviously that can’t work if it’s read-only (on a CD).   So actually copy them over, or at least make sure they are somewhere that is writable.

CV on Raspberry Pi

OpenCV is a pain.  I guess I’m just being a dolt, but I can’t get it working.

I want to run a piece of software on my pi that will run my slow photo booth at the upcoming Edinburgh mini maker faire.

SimpleCV –

Issue with getting lots of VIDIOC_QUERYMENU: Invalid argument and then a bunch of “Select Timeout” messages:


You can not edit the binary uvcvideo.ko file directly. I advise not trying to compile it yourself. It’s not worth the struggle. You can try various options temporarily on the fly. Attach your webcam, the driver module should be loaded and shown by


. Then you unload the module using

rmmod uvcvideo

. Afterwards you can reload the module with something like

modprobe uvcvideo nodrop=1 timeout=5000

. Fiddle around with the settings.
You can make a set of parameters permanent by editing the file /etc/modprobe.d/modprobe.conf . For the above settings, simply add a line saying

[code]uvcvideo nodrop=1 timeout=5000[/code]



Accessing raspberry pi by name rather than by IP address

I’m using a virgin media superhub that does DHCP, but doesn’t have any kind of DNS stuff in it.  So I can ssh to my pi using it’s IP address, which is inconvenient because it makes me go and look the address up in the router.  For my application (the alarm clock), both devices (the pi and the kobo) need to be able to find each other, or at least the kobo needs to be able to find the pi to register itself.

I’m guessing there’s smarter ways of doing this, but until I am schooled, I’m working on these lines:

So the pi is samba-able now.  I guess samba uses netbios, and that’s the enabler for hostname resolution.

So now I can hit raspberrypi from my windows machine.  However, I suspect, I also need to netbiosify the kobo, and I guess that won’t be as easy.

Put Pronterface on pi.

Get VNC working:

Install pronterface:

Instead of copying the files from github manually, install GIT with sudo apt-get install git then do git clone to get the files.  Skills.


Cheating on Windows 8

I really like Windows 8. I think it looks neat, and works well. And while the fullscreen/windowed duality often seems slightly embarrassing (control panel etc), I applaud Microsoft for being bold. And I love whizzing through the start page with my touchscreen laptop.

Trouble is, I’ve just realised that the start page is superfluous, and other than that, it’s entirely the same as Windows 7.

I missed jump lists from Windows 7 – these are the things in the start menu, where your applications have an arrow next to them, and that arrow expands to show recently used documents (for that application), as well as a particular pinned docs. I think these are really useful for documents that aren’t frequently used enough that they would stay top of my main “recent documents”, and because of not being frequently used, I can’t remember where they are, or which version I used last. An example is the designs for my Up To Much jewellery boxes. I don’t often print off a batch, but when I do I have to go into the main ring box folder and try and wade through the dozens of versions to remember which exact variation on the filename I used last. Not difficult, perhaps. But it’s easier to just choose it from a list without even opening the application.  Jump lists are a feature I didn’t even realise I wanted.

So anyway, to get jump lists on Windows 8, it is necessary to pin the application to the taskbar and then it pops up on a right-click. But I prefer to keep a pruned taskbar, particularly since I am now more used to using windows-key->start typing to launch apps and don’t need icons floating around everywhere. I really expected jump lists to be present on the start page, so a application tile would spawn some little tiles with it in.

So rambling on, I put StartIsBack on my machine, and instantly forgot I was even using Windows 8. It boots to the desktop, and gives me my jump lists. The start menu is a bit untidy, and not as beautiful as the start page. I haven’t even seen the start page for the last week. Which begs the question – why did I upgrade to Windows 8? And I don’t know either.