A rare item

It isn’t often that I see a thing like this in this country, and so when I found it at a car boot sale, I couldn’t resist picking it up, working or not. Needless to say it didn’t, and much fettling was involved to get it to the point of even remotely being able to see it operational. This is at least some of that story.

One Super Mario World game watch (not to be confused with the Nintendo Game & Watch, which I also own an example of), made by Zeon under license from Nintendo. Screen cracked slightly, wrist band chewed a little, no doubt by some eager canine or child. As I said before, it was found in a non working state, but I figured at the price asked (R25) I wasnt going to leave it behind. And so it was brought onto the geek bench and gingerly operated upon until it lay seperated into as many single parts as I was willing or able to endure.

So I first had to make sure I wasnt trying to fix a real dud. 1,5 v was applied to the power pins and sure enough, it sprang to life. With that confirmed, I proceeded to clean the thing. There was a lot of corrosion of the battery terminals.

I also cleaned up all the corrosion in the body and all the carbon buildup in the button sections of the board. The pictures do it no justice, but it is very small inside. Its clear that someone had done a repair job on this before.

As I didn’t want to redo that work and didn’t see the need to, it was left as is, I might have to go back and tidy up later. As the battery in the device was completely dead, another had to be sourced. It did take a while to find and purchase the A390 cell, but once it was acquired, I closed it all up and marvelled at my new toy.

There are, however, some remaining issues:

The strap will require replacement, it is barely functional and just barely fits me anyway.

More troubling is the fact that the down and left buttons seem to cause either a screen issue or a power drain problem as the screen goes completely blank when you push them, The down button is worse, and hence my thoughts on power drain, as a lengthy push on that causes a device reset 😵😡 .

The screen glass on the cover is also cracked. Unfortunately its not that easy to replace as there is a game specific edge bonded to it and at a casual glance it doesn’t appear easy to separate the two without doing damage.

Mostly due to the fact that the down and left buttons cause issues, I cannot completely play the game so I cant tell you how good it is. I am hoping to resolve the problems in due course.

Well thats it for the time being. See you later.


Sacrifice at Vega

Roy had always been a man of nerve. No situation had caught him short of response or action. His actions had always been swift, merciless and bore the mark of one who had been thrown into a life of survival. Usually at all cost.

Knowing this did nothing to temper the discomfort he felt at that moment. In one of the very few instances of hesitation, today’s would prove to be fundamentally terminal.

Roy realised this all too late.

The enemy ship had already detected his exit from the jump. Normally this would not have been a problem. ‘The Varatar’ was small, fast, and manoeuvrable, however this meant very little when one had the misfortune of ‘bumping out’ right in front of what was the equivalent of a Union cruiser. Everyone, Union or otherwise, had learnt what “Dark” ships looked like, some through the misfortune of encounter, others in the warmth and comfort of a classroom. Frankly both were a fear rending experience.

Roy relished the fact that he was in the first group. He always felt it gave him an edge. He had seen what they were capable of and was highly motivated by his experience.When the realisation dawned that it was too late, he deeply wished he hadn’t had the experiences he did. He knew what was coming.

But it didn’t.

As the cloud of confusion seeped from his mind, he was struck by a realisation of two things. The first that this was his end. He had always been sure of a method of escape, but today was different. The second notion was the most puzzling, or maybe disturbing, or both. He couldn’t tell and wasn’t interested in finding out which. Maybe today he could pay humanity back for everything bad he had done in the past.

This second realisation came from something he knew was unfolding out there, beyond the ship’s hull, at least two thousand kilometres from where his ship lay listing in the gravitational eddies of the Vega system. The “Dark” had stopped. He had thought of trying to escape, but knowing that this was going to be a useless attempt, didn’t bother to allow the thought to fully form.

For the first time that anyone in the Union knew of, he was going to be taken as a prisoner by this enemy. They normally killed on site, but not today. His stomach churned with a fear and an excitement. Pushing it aside, he reached out to the panel, tapped it and issued voice commands for the programming of a death trigger. This would record all visual and auditory information, and at the moment of death use the body as a subspace antenna to transmit a high-speed data dump. Death assurance came in the way of a second neural augment build for complete and rapid brain de-synchronise. The code was loaded into two sets of nanite injections, which he administered in that order.

The nanites quickly worked their way into his system. The first went to work building the sensory interfaces. Then after building the antenna interface, began assisting in building the neural disconnectors with the second group.

Roy had never be overly thrilled with the concept of nanites. He was always of the opinion that it meant giving over decision making to a committee that he couldn’t see. But in reality it was just the idea of having machines inside him that he didn’t care for. He shuddered at that thought while the machines worked tirelessly towards their goals.

“Neural interface link up” came the thought, and he now had to come to terms that he was part man, part machine.

A solid ‘clonk’ sound brought him too. Where was he? What was going on? His eyes were open but he saw nothing. Then he noticed a small slow green flash in the bottom right of his vision. “Neural interface link up” he thought. Did they knock him out he wondered.

He felt the hardness of the table he was lying on, smelt the strange sweet aromas of the air he was breathing. The cold thought hit him that he had already been boarded and was now with them, whoever they were.

The memory of ‘The Varatar’ being boarded came back to him. In his mind he slowly looked up at the face of a previously unseen enemy as they stood filling the door to the cockpit.

“OH GOD….OH GOD….OH GOOOOD” he screamed inside.

“De-sync activated”

“Transmission start……..”

The door chimed notifying Emily that someone was outside.

“Come” she firmly ordered.

A young flushed man hurriedly entered the room.

“Sir,…. Admiral Sheffield, I have been ordered to deliver this to you”, he said, handing her a sealed diplomatic box.

“Whats this about ensign?” She cooly queried.

“I don’t know Ma’, uh Sir, but I was told to get this to you as quickly as I could.”

The boy, who couldn’t have been more than eighteen or nineteen years old, had quite clearly been running. She eyed him for a second, pondering what was so important that it couldn’t arrive via normal channels and so speedily.

She dismissed him quietly and turned to the case.

Providing her usual credentials, voice print, thumbprint and retina scan, the box opened automatically. Within was a standard memory card. Long, flat and silver with an almost non obvious depression on the one side. She lifted it out fo the casing that contained it and mused at the object for a few seconds.

“Well let’s see what this is about” she thought as she walked over to the station that served as desk, communications and computer interface. She inserted the card into the port, depression side first and the whole viewer flashed to life.

Her stomach turned at what was digitally scribed in the air in front of her.

“Desynchronisation and data dump from Antonio Roy Sheffield. Data for the eyes of Admiral Emily Sheffield only. Pease confirm your identity”

Unconsciously she reached out and provided her fingers to the reader and pronounced her full rank and name.

The three dimensional viewer flickered and changed.

“Oh god no” she murmured.

Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.


Greetings all.

At the encouragement of a few people, I am starting a story section here. At this point in time, I will be uploading my short stories that create environmental fill and background to events and characters in my greater, but unpublished “Dark Saga” works. I try to keep these very short and my aim isn’t always to explain the stories themselves, but to add to the greater detail to the saga. In the first one I will post here, the beginning and the end seem to be missing, but both the event and the names are pivotal in the saga.

Please note:

Creative Commons License
These stories are licensed under a Creative Commons Attribution-NonCommercial-NoDerivatives 4.0 International License.

Prusa i3 problems, a story of madness

So in the last month or so, I have been experiencing feed problems on my RepRap Prusa I3. At first tops didn’t fill in correctly, then I started to notice wall issues and eventually large prints would not complete and every second print had to be restarted because the filament just chewed up.

It became incredibly frustrating to print anything. I assumed (incorrectly) that the problem lay with the new version of Mattercontrol (the software I used to use for slicing). Initially I thought it was the built in slicer, so I switched to their implementation of Cura. This helped initially in terms of finish, especially when I moved from 0.4mm layers to 0.1mm layers. But it wasn’t a week again until even that didn’t work nicely anymore. Switching to Cura itself did nothing to resolve the issue. Madness set in and I kept playing with settings, but with no improvement.

I did some research, and did find that their may be an issue with the hobbed bolt that the Gregs Wade extruder uses on this machine. Honestly though, I ignored that. I mean, come on, its been working all this time, why now all of a sudden. I kept playing with feed settings, new filament, but yes, eventually it sank in. I pulled the bolt form the extruder and found that inside the carved channel some of the ridges had bent because they were so thin.

My only conclusion is that over time they wear down. Strange considering you’re feeding plastic and its supposed to be a hardened M8 bolt. So I searched for a quick resolution. YouTube abounds with quick fixes using a tap mounted to a drill. Most looked kind fo dodgey, but hey it was worth a bash. I ran out to the workshop with gay abandon, fumbled a rig together in the vise and churned a new hobbing into the place where the current one was. The idea is to just deepen the “teeth” and so get a better feed.

YA RIGHT!!! Honestly this MIGHT work if you use the same tap that was used when it was first made, and its not going to work if you don’t have the right tap on hand. I didn’t. Not realising this, I brought the bolt back to its old home and again failed to print successfully. Bummer!! So I looked online for a replacement bolt. Another one would cost me 5X what a normal bolt would in the hardware store. Ok, so maybe its done properly and the issues would go away. But shipping is double the price of the bolt. Bugger that, I wont pay R150 for a R10 bolt unless I REALLY need to.

And so, the plan was hatched. Missery wasn’t going ot be my friend and my life wouldn’t be empty of 3D printing sweetness. After much thought on how to accomplish this, and many hours of real life and work, the plan was boldly implemented one Sunday morning.So looking at the bolt, I could see that many, many washers were used on either side to space the gear in such a way that the current hobbing was inline with the hotend hole.

A quick note before continuing, I wish I had taken pictures of all of this. The thought only occurred ot me after I had completed the rig to help me, and so those are the only images you will get here. Sorry. It is what it is.

Looking at those spacers, I thought I could just move those around and get free unhobbed space where I could start a fresh on the same bolt. I took a few hours to cut and massage some aluminium channel and plate. The channel was drilled to accommodate the bolt in a similar fashion as it works on the extruder, exposing the area I wanted to hob. This was then mounted to some wood, and I built a mount for my cheap Chinese knock off  rotary tool. This took some fettling but I eventually got something that I could hinge on the side of the wood. And so with bolt in the jig, and the rotary tool mounted with a cutting disc, I forged into new territory and cut line after line of tooth into the fresh unhobbed steel.

Channel piece for bolt
Mount for rotary tool
Tool mounted and ready for work
Good and bad parts

5 minutes later I was admiring the job and wondering if it was going to work. In it went and I set a few small prints off. The difference was remarkable. From poorly filled and walled prints, to nice even and closed prints with no feed problems in a Sunday morning. Needless to say I was very pleasantly surprised.

So what are my thoughts at this point? If the hobbed bolt is so prone to failure, then surely there must be a better feed design. Surely even doubling up on the bolt count should help the situation. I will be thinking long an hard on an alternative. Another thought was that I wish I had taken other possible causes into account early on. This would have brought me to the solution quicker. At least I now have a way of creating as many new bolts as I want without the cost. I am sure the jig will come in handy again.

A slight footnote here. While I was working on the bolt in the extruder, I noticed that the x-carriage had broken where one of the bearings resides, with that now sort of floating free. So while I have improved print-fu and the bearing is hacked into place, a new x-carriage is being printed.

Hope you enjoyed my tale of woe. Caio.

Model train lighting Part 3

Greetings again.

In the last post I discussed the circuit used in the model train lighting. Today well look at board layout.


Above is a completed board with the CR2477 battery, MSP430, resistors and tilt sensor wired in. This all went into a nice neat little box I designed for this project which can be found here. I used a socket for the mcu because I would like the ability to reprogram, reuse or replace it at will. Both the RESET and LED resistors were wire under the socket to save space on the board, While I didn’t need to do that for this board layout, I might want to modify the board at some point in the future.

I put the tilt sensor on a board of its own, with solid wires running into the main board. This gave me  the required horizontal alignment, but also allowed me to fine tune the angle by being able to twist the whole board ever so slightly. The original design called for two tilt sensors, but I found that I didn’t need the second one. I removed it in the code, but you could just as well keep it and bridge it or attach it to some other sort of normally closed sensor. I wired the LEDs up in parallel, an to be honest was probably a bit too arty when I did it.

I don’t have an image, but these were then glued into the roof of the unit with some tinfoil backing to provide some reflective. The wires were glued off to one side and fed through two small holes drilled in the base of the coach. They were then cut to length and glued into position and then soldered onto the board. If you look at the first image, you an just see the white wire glue into the base behind a very small wall. This way none of the wiring can be seen.

Below is a time lapse video of the test. To be honest it works exactly as I wanted it to.


Now to the lessons learnt.

  1. I need to add a switch between battery and board for longer storage times when I wont be operating the units.
  2. The units I have built so far seem to turn off the lights at slightly different times, even though the code is EXACTLY the same. I can only assume that its dependent on things like temperature, voltage, and differences between individual packages. To fix this, the design might need to include a more accurate oscillator.

Well that’s it, thanks for checking this set of posts out.


Model train lighting Part 2

Hello again and welcome to this second installment on this topic.

The last post here, dealt with the basic design and code for the MCU. Today is all about the circuit. Firstly the ability of the MSP430 to source current form a port is a little complex. It can sink a total of 48 ma over all pins in a port, but a maximum of 20 ma per pin in a port. Additionally this MCU is a push pull type where a voltage drop happens when you increase the current draw on a pin. Thankfully none of that matters here as the LED’s are quite stable and are current limited by a resistor. The point we can make here is that on the 2 port chips like the 2553, we have many open pins to run additional current sinks off. The code in the previous post can be expanded to incorporate all sorts of other cool stuff.

Lighting layout

Now on to the circuit. Its actually very simple. Battery positive attached to chip pin1, and ground to pin 20. S1 is attached to pin 6 (P1.4) and S2 is attached to pin 7 (P1.5). They are both in turn connected to ground. The LED feed is pin 4 (P1.2), and feeds a resistor (in my case I used a 100 ohm 1/4 watt, and 4 X 5mm white LED’s, who are in turn connected to ground.

MSP430 pinout

The MCU is capable of running on between 3.6v and 1.8v. To handle odd behavior you should be using a low dropout circuit to stop the source from dropping below 1.8v, however in this setup its not mission critical and you’ll just notice flicker in the cabin.

On the point of power, I would have loved to used a 3.7v Lion cell but those things are just too heavy. My next choice was to use a CR2032, which I ordered for this project, however I realized that in standby it would only provide me 18 days and 3.5 days with LED’s on. Not an option when those little suckers are not rechargeable. In its place Ill use 2xAAA rechargeable cells. HA!!! I found an even better source of power. Seems that those coin cells are varied, even more so than I had thought.


Everyone knows the CR2032, and more than likely the LR44, however there is a nice little hidden gem in the CR2477. Firstly, its 24mm in radius, and 7.7 mm high, but this little guy has 1000mah capacity. NOW WE’RE TALKING!! This is perfect. It will fit nicely in the space provided. Ok, so they are not rechargeable, but they certainly will do the job.

Another point of note, and to be honest I found this out during assembly of the test board, is don’t forget the 100k resistor between RST pin and Vcc. She just wont run right if ye dont.

Next item on the list are the tilt/vibration sensors. I settled on these little guys from Assemtech.








With a little fine tuning they should do the job nicely. The only issue is that I have to mount them on their sides, but a solid wire extension per pin should work well.

So, all thats left is to wire in the LED’s, and not forgetting the current limiting resistor, that’s about the last of it. See you on the next post.


Model train lighting.


This post is going to be the first in a multi-part post on adding custom lighting to some model train coaches.

First some background. I am currently setting up an H0 scale layout modeled on South Africa. One of the reasons for this is that I have a few of my old Lima Trans Karoo coaches from when I was young. As they are the junior version they are pretty sparse. No interiors, no glass, very basic indeed.

I bought some extra, including a baggage wagon that I had never personally owned, and wanted to make them a little better. I added some 3D interiors, which I will do a post on later, people, “glass”, and finally some lighting. Being that these units have plastic wheels, it would be impossible to run pickups from the rails for power, and I didnt want to go through the pain and cost of finding metal ones that would work.

I wanted a system that would light the moment the train starts, but would continue to burn for a short while after the train stops so that they would stay lit in stations etc. Clearly some sort of triggered timer circuit was in order, but I also wanted to be able to add customization after the fact if I could. The obvious choice was a cheap MCU, and as I have been playing with the Texas Instruments MSP430’s, it was an easy choice.

The next part was to figure out how to trigger once moving. After a couple of days on this, I settled on using a kind of vibration sensor as this would allow me to run a setup clear of track voltage. This could be a self contained system that would require battery changes every so often. For vibration sensors, I decided to use non mercury tilt switches because most of them use a little metal ball in a channel that shorts out 2 or more pins depending on their tilt. If I set the angles correctly, the slightest movement in one direction would set the ball (through inertia) onto or off their pins and so create a trigger effect.

Now I could start working on code for the MCU. It must be said here that, while I am aware that button or trigger events should be written as an interrupt and not polled in the MCU world, what I found was that when the system runs the LED’s, it draws more power in a short period of time than is saved by interrupting. It was simple to get the code to run the way I wanted in a poll situation and meant I could add as many triggers as I wanted without too much additional code. In “standby” mode, the MCU is drawing 0.47 ma anyway. On a set of 900 mah AAA cells, I would get 79 days in full standby. Interrupt code gave me no better than 0.37 ma and would result in full standby of 100 days. The figures make no difference when running with LED’s on as the draw is 2.7 ma regardless of interrupt usage.

With that out of the way, here is the code, currently running on an MSP430G2553.

Code was done in code composer studio. Test areas have been left in and commented. I have added comments inline for clarity, and will supply the code in a file attached at the end.

#include <msp430.h>

Setup the variables

//volatile unsigned int mvg; // For Test
volatile unsigned int cartrg;
volatile unsigned int offcnt;
volatile unsigned int offtrg;
volatile unsigned int stillon;

Rough estimation of time

//Static assignments
unsigned int seconds = 60;
unsigned int secsplit = 25713;

* main.c
int main(void) {
WDTCTL = WDTPW | WDTHOLD; // Stop watchdog timer

// Set P1.2 for LED output
// Set P1.4 for vibration sensor1
// Set P1.5 for vibration sensor2

// Set P1.6 – LED1 for test mode – moving signal
// Set P1.0 – LED2 for test mode – not moving signal

//P1DIR |= (BIT0 | BIT6 | BIT2); // Set out at P1.0 1.6 1.2 – For Test

Using P1.2 as the LED pin. All LED’s that need to be light are powered from here. I currently use 4 LED’s and they do not overtax the amp rating of the pin.
P1DIR |= BIT2;
//P1OUT &= ~BIT6; // Switch LED at P1.6 off – For Test
P1OUT &= ~BIT2; // Switch LED at P1.2 off

Set the resistor networks at P1.4 and P1.5 on. Some of this code is useless as it is for interrupts, but it works as is so well leave it.

P1REN |= BIT4;
P1OUT |= BIT4;
P1IES |= BIT4;

P1REN |= BIT5;
P1OUT |= BIT5;
P1IES |= BIT5;

Set P1.3 P1.4 P1.5 as inputs for the vibration sensors. I kept P1.3 in as it allows us to use the dev boards button as a trigger as well.

P1IN |= (BIT3 | BIT4 | BIT5); // Set in direction at P1.3 1.4 1.5
//mvg = 0; // Set moving off – For Test
cartrg = 0;

for (;;)

// Main cycle

Here I poll the input for P1.4 and P1.5

if ((P1IN & BIT4) | (P1IN & BIT5))

If either (the | is or) triggers off (circuit open) – thats the reason we use pullup and a resistor network to hold the line high.

//mvg = 1; // For Test

This is a flag for the LED test later. In this case, cartrg is 1 which means turn on LED’s

cartrg = 1;

These reset the offtrg and offcnt so that the counter never gets above the turn off value. In other words, when the ports trigger, they reset the 1 minute counter, and the counter is always working to turn off the LED’s

offtrg = 0;
offcnt = 0;

else {

//mvg = 0; // For Test

Here the flag is 0 and so tells the LED test to begin the count down to turn off the LED’s
cartrg = 0;


// For Test
//if (mvg == 1) // Is movement detected
//P1OUT |= BIT6; // P1.6 – Test signal green on
//P1OUT &= ~BIT0; // P1.0 – Test signal red off
//cartrg = 1;
//else {
//P1OUT |= BIT0; // P1.0 – Test signal red on
//P1OUT &= ~BIT6; // P1.6 – Test signal green off
//cartrg = 0;

If the flag is set

if (cartrg == 1 )

and the LED’s are off

if (stillon == 0)

Switch them on

P1OUT |= BIT2; // Switch P1.2 – main lights on
stillon = 1;


else {

If they are on
if (stillon == 1)

increment counter

offcnt ++;
if (offcnt >= secsplit) // count the number of seconds

Count up the seconds

offcnt = 0;
if (offtrg >= seconds)

if the offtrg is larger than the amount of seconds, then turn off the lights

stillon = 0;
P1OUT &= ~BIT2; // Switch P1.2 – main lights off


As promised, here is the file: Lima-Light-Timer.


Quick hack – 18650 into a torch.

Greetings all

Quite some time ago, I bought a cheap set of torches/flashlights. Nice looking little aluminum LED units in a pack of 3. The problem with them is the stupid little 3xAAA power packs. AAA isn’t really known for longevity, and frankly the power is just terrible. Enter the 18650 cell so called for its dimensions, 18mmx65mm. Mine are from an old laptop that wouldn’t charge. Interesting, I found out that there is nothing wrong with ANY of the cells. They all still hold their charge and deliver very nicely. Its that damn pre-programmed failure BS they put in the charge controllers for laptops.

But, before I launch into another sermon on greedy corps, lets continue. So, I was hoping that the 18650 would just fit, but alas, things are never that easy. I found the 18650 to be about 16 mm longer than the original unit, but I was fairly sure that I could get it in there.

So here we go:

By figure:

  1. Basic disassembly, with 18650 for size comparison.
  2. 18650 in slot – not going to fit.
  3. LED section pulled and separated, rubber cap off rear push button
  4. All disassembled. all parts simply pushed out. How thoughtful of the designers.
  5. The buttons frame contact – I used this to attach the resistor.
  6. 1 ohm resistor soldered to button and pulled around so that it has a firm based to be pulled against when its re-inserted into the holder.
  7. button and resistor re-inserted.
  8. Solder on 4 ground connections to LED unit.
  9. LED unit inserted into metalised plastic front unit.
  10. Pushed back into main frame. This protrudes a little now as this will give the space for the 18650 cell.
  11. I had to print some shims as the cell doesn’t fit snugly, so I added a front cap for some protection.
  12. Shims glued into the frame
  13. All reassembled and light working. YAY.

So that’s it. Some new torches with oodles of power and they will last forever on a charge.


Adafruit MCP charger holder


I have been playing a little with some second-hand Li-ION cells from an old laptop in the form of 18650 cells. I have an Adafruit MCP 73833 charger that is LiPO/Li-ION capable in 3.7 and 4.2v with variable charge rate.

Nice little board but it is exposed to the world, and anyone who knows 18650s, knows they are frequently referred to as terrorist cells, they get nasty really quickly for no seeming reason. A short across the connector block, for instance, can very frequently result in much heat, fire and in some cases lots of sparks. Not so long ago, I managed to make the connection between  one of these cells and a set of LED’s using just my thumb, and it gave me a very detectable kick. Ferocious little animals indeed.

So a nice cover for the charger was in order. The box is friction fitted, has all the appropriate openings and even has pieces printed to make contact with the on-board LED’s. The print isn’t perfect so the contact isn’t great. The next version of the top should be better. STL’s can be found HERE.

Some more images below:

New LM8UU bearing holders for Prusa i3



So today I noticed during a print that the print bed on my Prusa i3 was wobbly, like a sea-lions bum wobbly. Not conducive to nice prints eh? I really wish they wouldn’t supply PLA parts for 3D printers. The stuff isn’t heat tolerant and just goes bad over time. Case in point is this:

Yeah, its broken. 2 out of 3 were, the third well on its way. It was also printed cheaply (ie thinly) and the texture was rough. So low cost eh?

Well they have now been replaced with

Got them from here. Thanks MartinMajewski, big help.

They went straight on, and its busy printing some more replacement parts for the printer. Think its time to rejuvenate the whole damn thing with some decently printed stuff.

Anyway, CAIO.