Checking in

by Chuck June 3, 2011

Still here. Still alive. And now coming to you via the magic of the mobile and connected Web.

The company bought us all Windows 7 phones -- partly to seed the market and partly because they know that if they give us a way to work all the time, we will. Verizon was late to the party, but I finally got my new phone this week.

I'm not sure if it saves me time or if it makes me more productive, but it does make it easy to be spontaneous. Take this post for example, wouldn't be making it without the new phone. And the geocaching application makes it easy to find a cache whenever you have time -- no need to plan ahead, just map the cache nearest to where you are and grab it.

Could be that is the benefit of the new 4th generation phones -- they put the Web in your hand so you don't have to think about it, it's just there.



Dage MC-3

by Chuck May 27, 2011

One of the members of the Yahoo COSMAC ELF mailing list bought a Dage Scientific MC-3 on eBay. He wanted to know more about it, so I wrote up an article so that there is some information out there on the Web about this 1802-based microprocessor development system.

The article is here: Dage MC-3.



Wet sanding

by Chuck March 31, 2011

One of the problems with storing Odyssey outside and uncovered during the winter is that the deck gets covered in dirt and green gooky stuff – and when it rains that gunk flows down the side of the boat. I’m not sure why, but the stuff running down the sides of the boat leaves streaks, streaks that don’t wash off in the spring.

Today I went out to start cleaning the hull. I made up a bucket of my favorite washing soap (Purple Power) and got out a scrub brush. I started at the stern on the port side and worked my way forward and around, scrubbing the bulwark and rubrail with the brush to remove the caked on gunk, and then working my way down the side to the waterline (I don’t go below the waterline, Odyssey still has a layer of ablative anti-fouling paint that I don’t want to scrub away). The gunk came off, but no matter how hard I scrubbed I couldn’t get those streaks to come away.

Most years it isn’t a big deal, Odyssey isn’t the prettiest sailboat out there, and a few streaks on her side don’t make her any less fun to sail. But today the streaks were bothering me – they were darker than usual, or there were more of them. Not sure, but it bothered me anyway.

Up in the den I have a copy of Don Casey’s Sailboat Hull and Deck Repair, and the chapter “Restoring the Gloss” answered my questions. Compounding the boat, or, more aggressively, sanding the gel coat. Out in the barn I found a package of 320-grit wet sand sandpaper. A plan was born.

Right in the middle of the worst streaks on the port side I started wet sanding the hull. A couple of minutes later I found, much to the dismay of my elbow, back and shoulder, that it worked. The streaks were gone, the gel coat was shiny, and I had the rest of the boat to finish.

Dana came out to talk to me while I worked, so I wasn’t completely absorbed in the sanding, but she went back inside as the rain started to come down harder. For a time I didn’t need to run water on the hull as I sanded, the rain provided all the flow I needed to keep sanding.

After an hour or so of work I was able to step back and admire hull that looked remarkably good. Not perfect by any measure, but a whole heck of a lot better.

Unfortunately, now that I’ve sanded the hull I need to get some wax on it to protect if from additional staining. And with the weather forecast to keep raining for days, I’m not sure when I’ll get a chance.



Membership Card Serial Port Adapter

by Chuck February 8, 2011

Last week I let the COSMAC ELF mailing list know that I had made a serial port adapter for the Membership Card. I’d been planning on creating an installation package for it, but the announcement was what Scott Guthrie used to call a “forcing function” – once I announced that I had the software, I pretty much had to create a package and send it out.

So, here it is: Membership Card Serial Adapter

I want to thank Herb Johnson for his reviews of the first packages that I created, and to Lee Hart (of course) both for creating the Membership Card and for saying in a post “The genius of Chuck's work is his software.” I know it’s just a figure of speech, but it’s a real ego boost to have someone whose work that you admire to call your work "genius."

Tags: ,


Finishing touches

by Chuck November 15, 2010

Put some finishing touches on the greenhouse this weekend. It’s starting to look pretty good in there.

First, I built a couple of plant benches. I used grid tops from Charlie’s Greenhouse and Garden for the tops. Rather than buy the $139 benches from Charlie’s I used some 5/4 x 4 stock from Lowes. Each bench took 6 pieces – so for a little more than half of what it costs to get one bench from Charlie’s I built two benches for my greenhouse.

I should draw them up sometime. I looked for plans for cheap greenhouse benches on line and couldn’t find any. Someone else might use them.

Anyway, I also bought some wire shelves to put up above the cedar benches, and a plastic storage unit to hold chemicals and seeds and stuff. Still need to build another plant bench for the West wall and a potting bench for the South, but it looks nice and greenhousy in there.

Just for fun I also planted a flat of spinach and lettuce. Should have some plants growing in there, otherwise having it will be a little silly.



One step forward...

by Chuck November 5, 2010

After getting the Membership Card to work with the serial interface circuit on my big breadboard, I decided it would be good to move the circuit to a smaller breadboard – one that only had the one project on it and that could stand in for an actual completed project.

I should never change something once it works. It took me most of the night to get the circuit to run on a different breadboard. When I moved it I decided to move some of the pins around on the PICAXE-20X2; then I had to troubleshoot those connections, change the control pin IDs in the software, rebuild, reload, do it again and again.

On the bright side, I’ve been watching some interesting shows on while I work on this stuff…

In any case, I’ve discovered that I can’t actually read the data bus with the 20X2 to send data back to the PC. The pull-up resistors on the data switches, um, pull up the bus to +5V when I read the bus, and all I get back at the PC are ones. I need to rethink how I’m going to get the data from the Membership Card back to the PC – I’m not sure I have enough data bits on the 20X2 – though I may be able to do something with diodes so that I can use port B to both write to the Membership Card and then read back from it. Worth a try…

Maybe this weekend I’ll make a couple more steps forward – and avoid the steps back.



Bleedin' door

by Chuck November 5, 2010

Last time I worked on the greenhouse I managed to build the door just a leetle bit too big. I’ve got a 71 1/2 inch hole, and I made the door 72 inches tall. Add the fact that the material that I used for the door was lousy, I decided to start over with new wood and do it right.

The second time. Close enough.

It’s been so nice the last couple of days that it seems a shame not to get out and enjoy the weather. So while dinner cooked I went out to the barn and put together a new door. First I measured. Then I measured again. I went down to the barn and cut. Then I hauled the newly cut board back to the greenhouse and tried if for fit. Carried it back to the barn and trimmed off half an inch. Carried it back to the greenhouse and made sure that it worked. Measured the cut board. Measured it again. Went to the barn and cut the next board. Back to the greenhouse. Fit the board.

You can see how this can take a little bit of time to get done, right?

In the end I had a door frame that fit in the hole that I have to put it in, is straight, and is fairly square. It’s not covered, but I can do that tonight or tomorrow.

And the title? Here’s an important safety tip: When you are using an air nailer with small gauge nails, you need to make sure that your fingers and thumbs are further away from the air nailer than the length of the nail. Otherwise, if the nail turns in the wood, like one did to me, you’re in danger of nailing your thumb to the wood.

Like I did.

When I stopped swearing I went in to get a dressing – told Dana that “I’d nailed my thumb.” She thought I meant hit it with a hammer, not driven a nail in.

I hope she doesn’t take my air nailer away…



Killer Serial

by Chuck November 2, 2010

adapter-smallThe Membership Card has a 25-pin connector on the standard front panel. The designer, Lee Hart, intended for this connector to be used to control the Membership Card using a standard PC parallel port.

The only problem is that most PCs, and all laptops, don’t have parallel ports any more. And even when they do, there aren’t any commonly available parallel port drivers for computers that run Windows Vista and Windows 7. It’s a dilemma, especially since even the one computer that I have at home with a parallel port runs Windows 7.

But we are not without our resources here at Brambly Hill, and one of the resources that we have is the Revolution Education PICAXE® microcontroller. Specifically, the PICAXE-20X2. The 20X2 has enough I/O to provide an 8-bit bi-directional data port and all the other control and data lines that I need to connect Membership Card to a PC via a USB serial port.

Terminal program communicating with Membership Card serial port adapterWindows Membership Card Control Panel programAll that it takes is a little software, and I know how to do software. I am, after all, a professional. A little software here, a little hardware here, and I had a serial port interface for my Membership Card. In the picture you can see it running on my large breadboard (along with a another bit of hardware that I’m experimenting with). I actually built this circuit up before I got the Membership Card from Lee – I wanted to bench test the software to make sure that it was working the way I expected. Having the Membership Card simulated by a set of LEDs let me work the kinks out of my PICAXE software, and do a lot of improvement to the code before I ever saw the actual hardware. Not only does the serial port adapter work with a standard terminal program, but I was also able to write a simple Windows application to act as a control panel for the Membership Card. Two for the price of one, and they both worked. At least with the simulated hardware. The next step was to test it with the actual Membership Card.

And that’s where the fun starts.

I started with the easiest control line, INP. Just toggle the control bit, and the Membership Card should write the data on the switches to the RAM. It’ll show up on the output LEDs, and I’ll be able to reset and run the program using the toggle switches. Piece of cake. And it was. I spent a happy few minutes toggling in programs and then pushing the INP button on the Windows control program to load them into memory. Even that was an improvement – that tiny little input switch on the front panel was starting to hurt my finger when I pressed it.

So far, so good.

I hooked up the Memory Protect line – and discovered that it worked opposite of how I originally thought. When I put the Membership Card in Read/Only mode, you could write to the RAM, and in Read/Write mode, you couldn’t. That was a simple change in the PICAXE code for the adapter. Now I can control whether you can read and write RAM from the Windows program. Cool.

I hooked up the LOAD and CLEAR lines. Nothing worked. I couldn’t get the Membership Card to load data, I couldn’t get it to run, nothing. I pulled all the control lines out. I put them all back. I checked the schematic, I swapped pins. I changed the high/low states of both lines. Nothing.

After the fourth time that I’d pulled all the wires out of the breadboard I noticed on the schematic that when the LOAD and CLEAR switches on the Membership Card are in the LOAD position (both down), they are connected to ground. When they are in the RUN position (both up), they are connected to +5V through a pull-up resistor – and to the 25-pin connector. I put the wires back in place, flipped both switches up, and was immediately able to put the Membership Card into RESET, LOAD, and RUN modes from the Windows control program

The last thing to do was connect the data lines and start sending data from the Windows control program to the serial adapter and then from there to the Membership Card. I busily attach jumpers from the control port to the breadboard to hook up the data bus. All eight. I turn everything on, and then try to send data. Nothing happens. Even the LEDs connected to the 20X2 port aren’t lighting up. I pull all the data bus jumpers. I send data. The LEDs flash in the appropriate pattern for the data that I send. I put the jumpers back in. No illumination on the LEDs. I pull ‘em again. The LEDs light up.

You’re probably ahead of me. I glanced up at the schematic. When the data switches are in the down position, they connect to ground. In the up position they connect to +5V through a pull-up resistor – and to the 25-pin connector. I put all the jumpers back in again. I switch all the data switches up. I load the RAM with the simple “Hello world” program (7B 30 00). I set the Membership Card into RUN mode. Nothing happens.


I reset. I step through memory. The pattern on the data LEDs change. They look – odd. They’re – backward? I look at the breadboard. I’ve connected D0 to D7, and so on. I’ve reversed the connections on the data bus. Pull ‘em out. Put ‘em back in the opposite order. Load the RAM. Reset. Run.

Q LED lights up.

More rainbows. More bluebirds. Or something.

I load a few programs. I’m happy. I try to use the Windows control program to load an Intel HEX file onto the Membership Card. It fails. I’m sad. I try putting a delay in between the PICAXE-20X2 “pressing” and “releasing” the INP switch. I load the HEX file again. It works.

I’m really happy. It’s also midnight, so I’m really tired.

Just for fun I load Herb Johnson’s version of Dennis' Boone’s implementation of Steve Gemeny’s program to blink the Arecibo message on the Q LED. I go to bed with a “70’s vintage interstellar communications system” blinking away on my desk. I go to bed.

Tags: ,


Membership Card

by Chuck October 27, 2010

One of the things that I like to play with are retro-computers – old hardware from back in the dark ages of computing, hardware that a 17-year-old could understand, and that a 48-year-old can still wrap his head around.

One of the most famous of the retro computers is the Popular Electronics COSMAC ELF. I, and many others like me, got our start with computers flipping switches and pressing buttons on a home-built ELF. Many, including me, still have their old ELF sitting in a box on the shelf, and have a soft spot in their hearts for the red Q LED and the 8 toggle switches on the input panel.

Back in 2004 SpareTime Gizmos created the ELF 2000, a re-interpretation of the ELF using mostly modern components. The ELF2K is an ELF full-gallon – 32 K RAM, 32 K ROM with monitor and multiple high-level programming languages, support for terminals, Compact Flash – basically everything that you could want in a small computer.

But there is another style of ELF computer out there. These are not ELFs brought into the 21st century, and they are not faithful reproductions of the 1977 COSMAC ELF. Lee Hart’s Membership Card packs the essence of the COSMAC ELF into an Altoid’s tin. Essentially, it’s a microcomputer trainer that you can put in your shirt pocket and take with you everywhere you go.

My Membership Card computer tucked into its candy tin.It’s such a cool idea that I had to have one. So when Lee announced that he was selling kits of the Rev. B version of the Membership Card I jumped on the opportunity and bought one. Lee sent the kit complete with an Altoids tin – with Altoid powder still inside (a nice touch, that).

I hesitated over building it – I’m not 100% confident in my building skills. My ELF2K has an intermittent fault that was probably caused by a soldering error. The last thing that I wanted was another ELF-type computer sitting in my den, not working. But I eventually took the plunge, and over a weekend and a couple of week nights I got the hardware put together and tucked, if not neatly, at least cozily into the candy tin.

Next began an of evenings of frustration for me. Once I had the Membership Card complete I built a power cable for it and plugged it in. I flipped in the simplest “Hello World” program that you can use on an ELF: 7B 30 00. Turn on the Q LED, then loop back and do it again forever. And of course, nothing happened.

Starting to sense a pattern here?

I spent a frustrating evening trying everything that I know to get that tiny little program to run. Nothing. I knew that the program was going in to the RAM, the LEDs were lighting up with every press of the INP switch, and the way the ELF works those LEDs wouldn’t light up if the data wasn’t being written. But I just couldn’t get it to come back out; setting the memory to read-only and pressing INP didn’t cycle through the program that I’d just loaded. Once, and I had no idea why, I put the Membership Card in RUN mode and the Q LED came on. But I couldn’t get it to work again.

I spent a pretty miserable day the next day. At one point I was ready to pack all my 1802-based computers and figuratively put them on the side of the road with a “Free” sign on them. I’ve got four of these things, and not a single one of them works. Not my proudest achievement.

But I went home and tried again. I got out the schematic. I read the documentation. And a light dawned. Switch 9 isn’t the one that you flip to reset the ELF, switch 10 is. So I toggled in the program again. I flipped switch 10 up, then I flipped switch 9 up. And the Q LED came on.

The sun burst through the clouds casting rainbows. Little blue birds flew in carrying banners that said “Joy!” or little hearts in their beaks. There was a fanfare of trumpets and the air was filled with sweet perfume.

Or not. But I was pretty happy.

So I left the Membership Card sitting on my desk, flashing its Q LED like a little happy firework. And I went to bed, happily plotting new and exciting ways to drive myself crazy with this little tin box.



Solder smoke

by Chuck September 29, 2010

Occasionally, when I’m buying electronics gizmos, I’ll pad the purchase with interesting little bits of hardware that the supplier has on sale. This summer, when I was buying switches for Katie’s educational display, All Electronics  had some 8x2 LCD displays on sale for $5.50 each. Of course I bought two.

With the two displays in hand I went through my back issues of Nuts and Volts magazine looking for a “Picaxe Primer” column that I remembered, where Ron Hackett built up an LCD driver based on the Picaxe 14M chip. Look in the June 2009 issue for the column, or you can visit his Web site and buy all the parts that you need to build a serial LCD backpack. That’s what I did.

OK, so I didn’t order all the parts. I forgot to buy the 3-pin right angle male header that you need for the speed jumper. That just gives me an excuse to create an order for some other place – and pick up a few new gizmos to play with.

Building the LCD board was a simple and enjoyable job. The only problem I had was with R8. The assembly instructions say “See text” but the don’t say that the text in question is at the bottom of the page describing the LCD board. I eventually dug up the old Nuts and Volts back issue that had the discussion of the LCD backpack to figure out what was going on. Turns out R8 is the current limiting resistor for the LED backlight. If you just leave it off, you don’t need to worry about sizing it…

Anyway. I built up the board, programmed a 14M with the demonstration program, and turned it on. Nothing. Damn. Then I remembered to adjust the contrast pot – a few turns and there was the display flashing merrily away. I downloaded the serial LCD controller, plugged the LCD module into the backpack and the backpack into my breadboard, wired an 08M to send data, and that worked on the first try.


Finally, I ran down to Radio Shack (twice – always make sure that the package you grab out of the parts bin is actually the one that’s supposed to be in the parts bin) for some #2 nuts and bolts to attach the backpack to the LCD module.

The total cost for the two serial 8x2 LCD displays was about $40. At Digi-Key a single Matrix Orbital 8x2 serial LCD is $39.95. I’m sure that the Matrix Orbital display is faster and less “pic-y,” but I’m satisfied with the new ones that I built.



Log in