## WB8NBS

This Blog will document projects I have
in progress or completed. You can search for my
for photos. I will link some of those here.

## Notes on the Schwarz Folding Bookstand

In June 2018 Popular Woodworking published an article written by Christopher Schwarz on making a small bookstand. It folds up into a neat package about 7″x3″x2″. The PW article shows the stand folded and unfolded, but doesn’t really show how it works. Several people including me, complained to PW about the lack of detail. PW responded by posting the entire article along with a short video of the bookstand folding and unfolding on their web log. Schwarz covers the construction well in the article. I will not repeat his details here but will write about the methods and tools I used, plus some minor changes in the design.

I had four slabs of walnut that used to be engraved commemorative plaques. They are 10″x14″ and about 11/16″ thick after I planed off all the text. There is a 3/8″ cove on all four edges and keyhole hanger slots cut in the back.

Rescued Commemorative plaque

Could I salvage enough wood from one of these to make a bookstand? Of course! Could I salvage enough to make two bookstands? Probably. Could I stretch it to three?  Maybe. The first plaque I cut up did yield three bookstands but I had to glue cutoff scraps together in several places. Nevertheless, it worked and I gained a lot of understanding of what needed to be done. I proceeded to cut up a second slab after thinking through a more detailed cut plan. So if you have a 10×14 slab of walnut maybe you can use this:

Cut Plan for the Plaque

Most of the PW project is based on sticks 7/8″ wide and 3/16″ thick. The article specifies 7″ length, mine have to be a little bit shorter, 6 5/8″ because of the cove. My table saw is currently equipped with a Diablo 7 1/4″ finish blade that makes a very thin kerf, just over a sixteenth.  I can cut a 7/8″ strip from the plaque then resaw that into two 3/16″ sticks with a little bit left over, or into a 3/8″ thick piece plus one 3/16″ stick. The back has some kind of finish that I planed off after the board was sliced up.

One section of the my cut plan produced a 3 1/2″ wide slab that I resawed into a 3/8″ and a 3/16″ section. The 3/8″ thick component was cut into six 1 1/8″ ledge parts, while the 3/16″ part made eight of the outside rail/stile sticks. For three bookstands I needed six ledges and 18 rail/stile sticks. Six shorter rail sticks form the foot and prop parts. The center frames consumed six 3/8″x7/8″x1″ blocks and six 3/8″x7/16″x6 5/8″ pieces for the frame stiles. I had to glue plugs and patches into some of the keyhole slots but I made it.

Three Bookstand Kits

Initially, I made the inner frame slightly wide. I cut the two inside stiles oversize then set the final dimension by laying down two of the 7/8″ wide sticks with a thin coffee stirrer in between, marking the glued up frame to that width. The approximately 1/16″ space down the center assures room for the stand to fold completely. Gluing up the center frame was difficult. I could not keep the one inch stiles from sliding around when I applied clamps. The wads of rubber bands you can see in the above photo helped, allowing me to position the four components, then apply larger clamps when the glue began to set up.

Constructing the first group of bookstands pointed out issues with the bottom rails. Schwarz shapes the bottom of the center frame as a half circle with a full 7/8″ radius. This brings the trimmed edge very close to the lower rivet counterbores and I had a couple of those break out while setting a rivet. My second batch of bookstands has a 7/16″ radius on each bottom corner, leaving more meat in that area.

Also I decided that bottom rails don’t need full half circle rounding. They are glued to the flat surface of the ledge, so these rails only need a radius on the top inside corner.

Bookstand Glued Assemblies

While finishing the first batch of stands the glue joint broke between a bottom rail and ledge on three occasions. The problem is if one of the bottom rails is rotated past it’s normal open position, the ledge will contact the inner frame and put a lot of stress on the glue joint. So on the first three I redid the glue and put nails through the bottom rail into the ledge to reinforce that point. My revised design with the bottom rails only half rounded will hopefully reduce or eliminate that weak point.

Danger With Only One Side Unfolded

All the rails and stiles need counterbored holes for the rivets. Accuracy of these holes, centered, and 7/16″ from the end is important to the finished stand folding smoothly. I built the specified fixture but not wanting to spend 20 on the counterbore bit Schwarz had, I dusted off a technique used in previous projects. Some router bits will make a flat bottomed hole. I used the 3/8″ keyhole bit seen in the middle of this photo. A spiral upcut bit would probably work as well. Some of the counterbores came out slightly off center when I used the router bit alone so I think the best procedure is: 1. Start all holes with a 1/16″ pilot bit 2. Mark all roundovers with a compass. Compass point fits nicely in the pilot hole 3. Start all the counterbores about 1/16″ deep with a 3/8″ Forstner bit 4. Change to the router bit and flatten the counterbore bottom 5. Drill the pilot hole out to 9/64″ The Forstner hole will guide the pilotless router bit. Note that the top rail has holes on both ends, and its counterbores are on opposite sides. You only need to counterbore to about half the 3/16″ thickness to hide the rivets. Fixture for Drilling Outside Rails and Stiles Once the round overs are marked, they can be cut out. I used a disc sander for the first batch of bookstands, but the second set of three I pared to the line with a sharp chisel and refined with a sanding block. It was just as fast as the disc sander. This picture shows some of the marked round overs. Note – top and bottom pairs here are for bottom rails and have only one corner marked. Ends Marked for Rounding You have to glue the ledge to the bottom rail. Note – the counterbore goes on the back of the rail, and the whole thing has to be kept square. I used leftover 7/8″ bits of wood to support the front of the ledge while fussing the bottom rail flat against the ledge while gradually tightening the clamps. I’m using Old Brown LHG so it will be easier to fix if I mess up. Here are two glue ups in progress. Ledge and Bottom Rail Glue Up While the bottom rail glue was setting up, I drilled rivet holes in the center frames. To mark the positions I fitted a 9/64″ transfer punch into one of the rails. Then holding the frame and the rail tight to a square, tapped the punch down. I then used the drill press to make 3/8″ counterbores with a Forstner bit and ran a 9/64″ bit through for the rivets. Note – on the center frame the counterbores are on the front at bottom and on the rear at the top. Second note – If you screw this up you can make a patch from one of the thin scraps using a 3/8″ plug cutter DAMHIKT. This photo also shows the center foot pieces in which I have pre drilled pockets based on spacing learned from the first batch of stands, 1 inch, two inches and three inches up from the bottom. Marking for Frame Drilling Hinges for the foot and prop that support the unfolded bookstands need to be created. I used 4 penny finishing nails instead of the 6 penny Schwarz specified in the article. This gives a little more leeway when drilling through the pivoting part. First the holes have to be laid out. I have a gauge set to exactly half the foot thickness, and scratch the pin locations from the face on both sides of the frame. Drilling halfway from each side reduces the chance of a misalignment. Mark for drilling with an awl in the gauge scratch 3/16″ from the inside edge of the center frame rail. The prop and foot must be firmly held in position while drilling for the pins. The foot goes on the rear of the frame against the bottom frame rail. The prop is hinged on the front of the frame against the top rail. I put a spacer cut from a playing card between the parts and the frame rails which gives some clearance for the part to swing open. Tape the whole thing together. Holding Foot and Prop Prior to Drilling for Hinge Pin I carefully checked that the drill press table was square to the quill. Then mounted the taped up frame in a vise and pushed a 1/16″ hole halfway through the foot and prop from both sides of the frame. Drilling for Hinge Pins Next removed the 1/16″ pilot bit and replace with a 7/64″. Made 1/8″ deep counterbores on one frame stile only. This allows for the finish nail head to be sunk below the surface. Hinge Pin Counterbore The final hinge step is to cut the head off one of the 4 penny nails and chuck that up in the drill press. Remove the foot and prop from the center frame and use the cut off nail to ream the hole made by the pilot bit. Also ream the two holes in the counterbored side of the frame. Cut the taper in the prop stick. I just hogged off the wood with a chisel. Dry fit the foot and prop in the frame but don’t drive the nails in until satisfied with how they unfold. I had to chamfer the foot and prop edges above the pins to get satisfactory unfolding. With all the parts drilled I could do a dry fit checking for interference between the moving parts. A few spots needed tuning with sandpaper or a block plane. Successful Dry Fit Each bookstand will get two layers of Watco Natural before assembly. After the rivets are installed, I will apply one more coat of Watco and finally paste wax. Three Stands Drying Rivets. I had no experience with copper rivets prior to this project. Schwarz says they are easy and they were for the most part. I bought 75 Tandy rivets on Amazon, the PW article listed a source for a pound which would make a hundred bookstands but I only need about four for next Christmas. I think it looks better, by the way, if all the rivets face the same direction. Now I watched my father set rivets in sickle bar mower blades a hundred times but I could never do it right. They are normally swedged with the round end of a ball pein hammer, but because in this project the rivets are recessed, you need a tool. Schwarz used a type of nail set which I’ve never seen to reach into the counterbores. I made a punch tool from the sawed off end of an auger bit by hollowing the flat end slightly with a Dremel grinder. The hollow helps to keep the punch from sliding off. Homemade Rivet Setting Tool First you have to drive the burr washer down on the rivet shank. I tried two methods, both worked. The first, as shown in the article, is drilling a 9/64″ hole up the center of a hardwood dowel rod to make a setting tool. The second method uses the drill press quill to force the washer down. In the photo below left, a short piece of tubing supports the head of the rivet. The chuck is adjusted to slide loosely on the #12 rivet shank. It takes quite a bit of force to get the burr started. Note – there are lots of Youtube videos on setting copper rivets. Set Burr With Drill Press or Dowel When the burr is firmly seated, I cut off the excess rivet shank above the surface of the wood with a pair of tile nippers left over from a long ago bathroom project. Biting the copper part way from two or three directions distorts the shank less. Cut Rivet to Length I flatten the cut off shank flush with the wood surface with a rotary file bit. Trim Rivet Flush With Surface The PW article shows the parts being joined lying on a steel plate while the rivet is swedged. I don’t like that because the rivet head sits loosely in a counterbore, and just using a flat plate as an anvil will make the joint loose. I made an anvil from a steel rod that fits inside the counterbore, clamped that in my bench vise with the bottom end resting on one of the big guide rods. Then I support the other end of the assembly at the appropriate height with a wood block clamped in a small vise. Swedging First Rivet I tap the concave punch holding it at a slight angle, then move the tool to a different spot. I’m trying not to hit the rivet directly in line with the shank as that may swell the whole shank. This isn’t leather, it will split the wood DAMHIKT. Just gently form the sides until the burr washer is evenly captured and the mushroomed over part is below the surface of the wood. Swedged Copper Rivets I fastened first the top rails to the outside stiles. Next attached the top rails to the center frame. Finally attached the bottom rail and ledge to the frame, constantly checking that the parts didn’t interfere when folded and unfolded. It’s much easier to remove a bit of wood before the rivets are set. And the pre-applied finish needs to be completely cured or the parts may stick together – another DAMHIKT. Swedging Last Rivet Six rivets done and time to test the unfolded bookstand. Assembled Bookstand Unfolded A final coat of oil is optional, but paste wax protects the finish and shines it up. Merry Christmas to my three sisters, hope they don’t see this before December 25. #### Update July 11, 2018 One of the stands in this final batch somehow got the foot and the prop reversed i.e. prop was hinged on the rear face of the frame and the foot hinged on the front face. In this condition you can’t unfold the foot to the rear as it is longer than the prop. I redrilled for the hinge pins at the correct position and in the process broke the glue joint on one of the ledges. Maybe OBG isn’t all it is advertised to be. So I am now nailing the ledges to the bottom stiles. Thats nailing into the edge of a 3/16″ thick bit of hardwood with a very small wire nail. You must pilot drill for it. A cut off brad was not long enough to act as a pilot so I used a wire cut off a stiff paper clip as a drill bit which worked well in the drill press. I sunk only one nail near the stress point by the rivet. A number 2 screw would be better but I couldn’t find any long enough. Here is a family photo of the final three bookstands. Three Folding Bookstands ## More Sliding Lid Boxes – Hexagons I had good success last year making simple sliding lid pencil boxes for the Dupage Woodworkers Club. My construction method is documented in this Weblog post. This spring I adapted the method and jigs to produce six sided boxes. The hexagonal box construction is very similar to the earlier rectangular pencil boxes so please refer to that post for details. Here I will describe the few differences. Obviously there are two more side pieces to deal with. That’s the bad news. The good news is they are all the same length so the spacer is not required. I expected the glue up to be a big problem with the additional surfaces but with slow setting Old Brown liquid hide glue it hasn’t been an issue. There are two handle pieces to cut instead of one, and making the hexagonal lid plates is more complicated. First, the math. The hexagonal lid plates are made from rectangular blanks. The length of the rectangular blank is the width divided by cosine of 30 degrees. To find the length of the side pieces, take half the lid blank width, add the thickness of the side stock, subtract 1/8″, then divide by the cosine of 30 degrees. Trust me, it works. I’m using a Diablo 7 1/4″ 40 tooth finishing blade now, it cuts a very narrow kerf. I modified my regular cross cut sled to cut the lid hexagons. There is a batten tacked to the sled to establish the 30 degree angle. Actually it worked better to measure 150 degrees from the fence face on the obtuse side of the batten. This angle is critical. Next I added a movable stop to position the rectangular blank at the correct spot. Hex Lid Jig Stop Down The stop has a hinged end, as I quickly found the small triangular cutoffs would catch on the saw blade and be launched into low earth orbit. Raising the stop lets the cutoff fall free. Hex Lid Jig Stop Raised The movable stop has to be calibrated to match the lid stock. I draw the hexagon onto one of the blanks then the long side of the rectangle is placed against the batten with the corner touching the stop. The stop is tweaked until the blade cuts on the line. I cut the marked blank half way to see how it’s going, then loosen the stop screws and adjust. Once the stop is calibrated it’s simply rotating a rectangular blank until the four edges are cut off. I made a you tube video of the jig cutting a hexagon. It’s the best way to see what’s going on. Here’s enough lids to make sixteen boxes. It goes very quickly. Completed Hexagonal Lids Cutting the six side pieces requires a dedicated cross cut sled with the blade set at 30 degrees off vertical (60 degrees from the saw table). I use an adjustable flip stop as described in the sliding lid box post. There is a note at the end of the pencil box post for Doug Stowe’s method that does not require the stop to flip up. 30 Degree Crosscut Sled To calibrate the stop, make the first bevel by raising the stop and bringing the stock in from the left with face side up. Note if you have a saw with a right tilt blade, these directions will be reversed. Side Jig First Cut Measure and mark the side length on the stock then with the stock on the right side, carefully place the mark right at the saw kerf in the sled fence. Adjust the stop to that position and cut the second bevel. Once the stop is calibrated the rest of the sides go quickly. 16 boxes will need 192 cuts. For these boxes I saved time by cutting the lid grooves in the long stock before the stock was sliced into sides. Side Jig Second Cut The side pieces are dot marked to maintain grain direction. Designating the two pieces with three dots for handles makes the opening side exactly opposite the starting grain discontinuity. Rabbiting the lid plates and cutting off the handles is similar to the rectangular box procedure. Gluing the hex box is similar to gluing the pencil boxes but the assembly jig is different. It now has three sides, one adjustable to account for different sized boxes. People with six hands might not need the assembly jig. Adjustable Hex Box Assembly Jig This is the jig with a box nestled between the battens. It’s a dry fit with rubber bands. I use stronger bands cut from bicycle inner tubes for the real glue up. Hex Box Assembly Jig In Action These are the first couple of boxes made from construction pine during the debugging phase of the jigs. Cupped lid stock is more a problem with these than it was with the narrower pencil boxes. First Hex Boxes I made a number of boxes from Cherry. These two were specially done for the Beads of Courage project. Before slicing the sides, I glued on a beveled strip of Cherry at the top and bottom, and inset a small strip of Maple in the top edge. They are about 7″ wide. Beads of Courage Boxes in Cherry These are the sixteen boxes made for the club Christmas drive. Menards had glued up, 1x12x48″ Poplar panels on sale for5, I bought two. With careful measurement and calculations each panel made eight boxes.

Completed Run Sixteen Hexagonal Boxes

## Small Router Table

Our local woodworkers club makes wooden toys every year as Christmas presents for disadvantaged children. Most of these are band sawn shapes from 2 inch stock. They are cut out, drilled, sanded, and then we do a round over on all exposed edges. I made small router tables as dedicated tools for the round over step. This post will outline my construction though I’m using photos of the finished product.

Small Router Tables

Small trim routers are perfectly adequate for a 1/8″ or 3/16″ round over. I have a Dewalt and a Porter Cable so made two tables.  I selected 3/8″ plywood for the table top as I had scraps on hand salvaged from (should be obvious) cable reels. Quarter inch ply might flex too much and a half inch thick table might require extending the router bit uncomfortably far. For this dedicated application, a 12 -14″ width and an 8″ depth is fine.

The first step is locating screw holes to mount the router. I removed the base plate and used that to mark the location of the four holes. Remember the router will be upside down so the mounting plate here is bottom side up. The Porter Cable router has an asymmetrical hole pattern so this is important.

Lay Out Mounting Holes

Both my routers have round head mounting screws for the base plate so to match, the screw holes need to be counterbored to sink the screw heads below the table surface. Do this first with a forstner bit, then drill through with a smaller bit to fit the screw threads.  Don’t counterbore so deep that the screw attachment is weakened.

Mounting Holes Counterbored

Also at this time mark and drill a pilot hole for the router bit to come through the table. Just make a hole big enough for the bearing to come through, probably 1/2″ or 5/8″. The hole will be opened up to clear the cutting edges later on.

Locate Hole for Bit

I added a 3/4 inch bit of scrap to the bottom of the table to provide a boss for extra leg stiffness. These are attached with countersunk screws from the table top. The legs are set into holes drilled with a 10-15 degree splay angle. Splay is not absolutely necessary but makes the table more rigid when it’s clamped down. Leg dowels should be at least 1/2 inch thick and long enough that you don’t have to bend over to allow your glasses to focus on the bit. 10-12″ is good.

Support Boss for Legs

I used a piece of 3/4 stock to make the table feet. Notice the legs are offset from center to provide a larger area for clamps. I located the foot holes by assembling the legs into top, then marking where the splayed legs touched the feet.

Table Foot

This photo shows the splayed legs assembled and glued. The feet need to be parallel to the table. I ensured this by clamping the feet to the workbench while glue was applied. I then set a heavy weight on the table top while the glue was setting.

Table Legs Splayed

Getting a consistent splay angle for the legs is not difficult. I made this tapered jig for the drill press. The exact angle is not critical as long as all eight holes are drilled the same. 10-12 degrees is good. A clearly marked center line is important.

Tapered Jig to Guide Splay

Pick a spot at the center of the table bottom and draw sight lines to where each leg hole will be drilled. The legs will lean out exactly on those lines.

Splay Sight Lines

Photos here are from my completed table so I marked another bit of scrap to better show how the sight lines are laid out on the two bosses.

Lay Out Leg Boss

Here you see the tapered jig clamped to the drill press table. Align the sight line on the boss with the center line on the jig and drill.

Taper Splay Jig Aligns Hole

Then align and drill for the other leg.

Right Side Hole

The feet are drilled similarly. Here I used the upper boss to mark the sight line angle on the foot after finding where the holes go by inserting the leg dowels into the top boss. Note when you are drilling the splay direction along the sight line is opposite for the feet. On the top the legs lean out. On the bottom they lean in.

Once the feet are drilled, you can clamp and glue the whole thing together.

Duplicating Angle on Feet

When the glue is set up, I assembled the router to the table. The router bearing should clear the hole at the top but not yet the rest of the roundover bit.

Pilot Hole for Router Bit

With the table clamped down in working position, I start the router and slowly raise the bit. The bit’s cutters open the hole to make a perfect zero clearance opening.

Bit Raised Through Table Top

This photo shows the finished table clamped to my work bench. I sanded and sealed the top with a couple coats of danish oil, then applied paste wax. The toys slide over the bit really smooth. You have to route a bit of scrap a few times to get the bit height set exactly right.

Table Clamped to Bench

Just slide the blank into the bit until it touches the bearing then run it to the left to do the roundover. Yo need to experiment some as moving too fast will result in a ragged edge, moving too slow will burn the wood. Needless to say, keep your fingers away from the bit, and also be aware that sometimes the bit will grab bad grain or a knot and throw the piece off the table.

Routing Roundovers

## Audio Adapter for the Si5351 Signal Generator

I had just finished building a three port RF signal generator when the January 2018 QST arrived in the mail. January is the annual Do It Yourself issue and there was an intriguing article by Keith Kunde, K8KK titled “A Low Distortion Digital Audio Oscillator”. The heart of Keith’s circuit is a MAX294 filter chip, a sophisticated 8th order switched capacitor filter capable of rounding off a square wave into a pretty good sine wave. The ‘294 is fed with a square wave at the desired frequency and also a clock signal 100 times the desired frequency. Keith generates his clock with a 555 timer and then feeds a divide by 128 chip to develop the base output frequency. My new Si5351 RF generator could be a crystal controlled clock source and all I would only need the divider and filter circuits to add audio capability. The MAX294 costs about six bucks each.

Goals for the Audio Adapter were:

1. 20 to 20000 Hz capability
2. Sine or Square wave output
3. Line level output, one volt peak to peak into 600 ohms
4. Be as portable as the signal generator, meaning battery operation in an Altoids tin
5. Two channels
6. Direct frequency readout from the signal generator display

That sixth requirement means decimal dividers throughout. If I add one additional decade to the ‘294 chip’s clock divide by 100 requirement, the total division would be 1000. When the signal generator display shows 25 megahertz, the output would be 25 kilohertz. No math necessary.

The MAX294 has an uncommitted on board op amp but it is intended as a pre or post processing filter and has weak output specs. To get line level output I decided to buffer the ‘294 output with an LM358 op amp connected as a voltage follower. Later on, this proved to be the most troublesome part of the project.

Internet searching did not turn up many choices for decade frequency dividers. I decided on the 74hct390 chip which I have used before. It’s a dual decade divider, each side has a divide by two, and a divide by five stage. Cascading these gives a divide by ten with BCD output of the counter state. For this two channel build I would need a total of ten divide by ten stages, achievable with five 74hct390s. This diagram shows the basic filter wiring.

Basic MAX294 Application

The last divider stage is a divide by two so the ‘294 filter sees a symmetrical square wave. 100k and 39k resistors form a voltage divider network to get the TTL level square wave down to an amplitude the ‘294 can handle without clipping.

I decided the project was indeed viable and ordered parts from Digikey.

Software in the signal generator was tweaked to have a lower range limit of 100 Kilohertz. The Si5351 should go all the way down to 10 Khz with appropriate software support but rather than press my luck, I added two additional decade divider stages to the design. A three position switch selects a frequency tap from the chain so the frequency ranges are:

• Divide by 10**3  100 to 25,000 Hz
• Divide by 10**4  10 to 2,500 Hz
• Divide by 10**5  1 to 250 Hz

With the additional ranges, I can still read the LCD display directly but have to mentally move the decimal point. The first requirement is met. Also added is an SPDT switch to connect the op amp input to either the filter input (square wave) or the filter output (sine wave). That meets the second requirement.

Digikey parts finally in hand, I bread boarded the circuit. The dividers are on the left, the op amp is on the right.

This is the final schematic of the filter circuits. Eagle made the drawing and I did go through the exercise of generating a PC board  just to see if there really was room for the parts.  Since the project is a one-off, I built everything on perf board, using 30 gauge wire wrapped around IC pins with my standard wire wrap tool – a ballpoint pen refill. It would have been a lot faster if I had a real PC board.

Analog Board Schematic

Analog Board

A 2000 mAh portable USB power pack was sacrificed to obtain an 18650 battery, it’s associated charger, and 5 volt up converter. That would satisfy the portability requirement. I stuffed the battery, charger board, four RCA jacks and three slide switches into an Altoids tin while waiting for Digikey.

I used Eagle to generate a schematic and proposed PC board for the higher level digital divider circuits. This board had to fit between the 18650 battery and the range switches, and I had to nip off the corners to work around the battery charger circuit. This board is mounted on #4 screws soldered to the bottom of the Altoids tin. I built the digital divider board first, it is much simpler than the analog boards.

Digital Board Schematic

Digital Divider Board

I used the analog portion of the bread board to verify the digital dividers were working properly. I found the 74hct390 chips would accept a signal as high as 90 MHz. They will be loafing at 25 MHz. This photo shows the digital board seated in the bottom of the Altoids tin. Only six wires will connect to the analog board in the tin lid, 5 volt power, ground, two divided outputs from the range switches, and two audio output leads. Audio connects to 1000 ufd  capacitors nestled on either side of the battery.

Digital Divider Board and Charger Installed

Now came extensive testing on the breadboard. Keith Kunde’s QST article discusses the level and DC offset considerations of the MAX294 filter when used with a single ended supply. I used a pair of 10k resistors to create a half supply voltage virtual ground and bypassed that rail with 22 uF capacitors.  I’m using DC coupling between the dividers, the filter chip, and the op amp so had to do some fussing with the voltage divider parameters Keith talks about to get a filter output with no clipping. My final divider has 100k resistor in series with the TTL level divider output, and a 36k resistor to virtual ground. I also found that connecting a VOM in series with the 5 volt supply to measure current seriously upset the DC balance for some reason. It appears the final circuit will draw about 25-30 milliamps from the battery. At that rate, the adapter should run 60 hours on a charge.

But the output waveform from the LM358 buffer amp was horrible! To make a long story short, Google “LM358 Crossover Distortion”.  The ‘358 has a class B push pull output stage and when the signal crosses over from one side to the other it takes a short nap. After a good bit of troubleshooting and research, the fix is simple. Add a 1000 ohm resistor from amp output to ground. This forces the output stage into a class A region and I was able to get 2 volts peak to peak out with no glitches and it will drive a 100 ohm load with no clipping or distortion.  I believe 2200 ohms to ground will also work and draw less current through the amp.

Also the ‘358 has a slow slew rate which causes the sides of the square wave to lean noticeably.   If I knew then what I know now I would have ordered an MC34072 amp which has better specs and no crossover problem, still less than a dollar.

The following photos are the analog board top, bottom and trial fit into the lid. The board is supported in the Altoids tin by the pot mounting nuts at the front and a single L shaped bent paper clip soldered to the lid at the back. I’ve also added an LED in the lid to remind me to turn the power off.

Top of Analog Board

Bottom of Analog Board

Connecting Digital Divider Board to Analog Board

I took a couple of weeks part time to wire and debug the analog circuits but I was finally satisfied and mounted the board in the Altoids tin lid. It JUST clears the battery and the inductor on the battery charger. This photo is as finally assembled. Note a small bit of blue clay on the charger inductor, that’s how I checked the clearance.

These are the money shots of the fully assembled Audio Adapter.

But does it work?

This shot has sine wave selected on one channel and square wave selected on the other.

MAX294 Filter Out and In

A 10 KHz sine wave. As K8KK noted in QST, there is some clock noise on the wave form at 100x the output frequency.

10000 Hz Sine Wave

This is a 1 (ONE!) Hz sine wave. Notice the sweep speed setting on the right. It took some creative manipulation of room lights and the camera shutter speed to get this to show properly. You can definitely see the clock noise on this trace.  It looks a lot like the synthesized sine waves I experimented with a couple of years ago.

One Hertz Sine Wave

The next two photos show the waveform when the two channels are combined in an external resistor network. 1500 ohms from either side to a junction, then 1500 ohms to ground to load the signal.

Combined Waveform: 10000 + 10500 Hz

Combined Waveform: 1000 Hz + 1100 Hz

Finally, here is the family connected together to the resistive combining network.

Set Up for Combined Waveform Test

This was an enjoyable but sometimes frustrating project. It’s definitely the densest thing I ever built and would be much simpler if I wasn’t too cheap to order a PC board. I learned that 0603 resistors are not a good choice for hand soldering. I learned that LM358 op amps suck. It is working great now though, and even though I have two other audio oscillators, this is a welcome addition to my test equipment stable.

de WB8NBS/9

April 27 2018:  I acquired a Brother P-touch labeler. Labels help my feeble memory. The P-touch came with a short reel of 12 mm black on white background – these labels were made in two line mode which fits well on the edge of the lid. I will probably replace them with black on clear sometime as that would better keep the Altoids theme.

## Arduino – Si5351 Powered Signal Generator

Arduino-Si5351 Signal Generator

## Device Description

For a long time I wanted a general purpose signal generator. Now Direct Digital Synthesizer hardware is available on a single programmable chip. The Analog Devices AD9851 is used in many ham radio projects, also widely used is the Silicon Labs Si5351. Either of these can be obtained from many sources such as Adafruit, Sparkfun, or on EBay and there’s lots of information on the internet. Even Amazon has them. A few dollars gets a DDS chip that will tune continuously from audio to VHF mounted on a small breakout board. I purchased an Si5351 board from Etherkit because they offer a version with a TCXO.

Silicon Labs makes the Si5351 in several variations. It’s intended use is as a multiple output clock generator with up to eight individually programmed frequencies. Most commonly available breakout boards though, use the A version with three outputs. Digikey has the bare chips for less than \$1. Connectors are optional, most boards are set up for SMA female jacks. The signal generator I built brings out all three outputs but I used good old RCA phono jacks. SMA connectors are wonderful but the cables to use them are pricey. My box will be used to check and align receivers so precision impedance control is less important.

AD9851 chips have a real Digital/Analog converter on board, it uses an amplitude lookup table to produce a fair sine wave. The data sheet says:

“The AD9851 uses an innovative and proprietary angle rotation algorithm that mathematically converts the 14-bit truncated value of the 32-bit phase accumulator to the 10-bit quantized amplitude that is passed to the DAC. This unique algorithm uses a much-reduced ROM look-up table and DSP to perform this function.”

which sounds suspiciously like the quarter wave sine synthesis I experimented with a few years ago. I’ll have to revise my WordPress pages about quarter wave DDS techniques to include the phrase “angle rotation algorithm”. The price for pure sine wave complexity is, the device has only a single output. In contrast, the Si5351 outputs a square wave on all it’s ports – it is intended to serve as a programmable frequency clock source but for my purposes I don’t care and the available multiple outputs are attractive.
I breadboarded the Etherkit breakout along with one of Paul Stoffregen’s Teensy-LCs I had on hand for the controller. A Teensy-LC has an ARM Cortex M0 heart clocked at 48 Mhz. An ordinary 16 Mhz Arduino would probably work in this circuit but would have trouble with sweep. I used basic software from N6QW to get started and my oscilloscope soon showed it was working. Then a series of enhancements to the N6QW sketch followed:
• expand to controlling all three outputs
• setting up frequencies using rotary encoder and LCD menus
• save and restore setup in EEPROM

## The Box

A thin metal gift card box was cut up to form an enclosure for the generator. It is about a quarter inch larger than the usual Altoids tin in all three dimensions. I needed the extra volume to fit in a battery and charger removed from a cheap phone power pack. These booster packs usually contain a single 18650 cell and it just fits.

Arduino-Si5351 Signal Generator Interior

The components are, top to bottom, blue 16×2 LCD board supporting the Teensy-LC. The entire unit can be 5 volt powered either from the Teensy USB jack or from the battery charger, I added a fat diode to isolate the two sources.  Both the Teensy and the Si5351 board are using their on board voltage regulators. The LCD is five volt, but the Teensy-LC does not have 5 volt tolerant inputs. There are 2.2k resistors between the LCD data pins and the Teensy to smooth over that discrepancy, these would not be necessary if the LCD was a 3.3 volt unit. The pot below the Teensy adjusts the LCD contrast.
At left below the LCD is the Adafruit (Bourns) rotary encoder. It just clears the battery. Right of the encoder is a strip of perf board with the three output select pushbuttons mounted. The LCD, encoder and buttons are Adafruit parts.
At the top of the open box bottom is the salvaged 18650 cell. The measured drain of the whole circuit is less than 100 milliamps so the battery should last half a day at least. The gooey glob at the center is a 2.5 amp fuse. To the right of the battery is the on/off switch and isolation diode. The salvaged Lithium charge/boost circuit is the green board at bottom right. It has it’s own separate USB jack because the USB data leads are not accessible. To program the unit you have to plug into the Teensy USB jack.
Finally the blue board in the bottom is the Etherkit breakout. The actual Si5351 chip is at the left end, next to the TCXO. There are three RCA output jacks mounted in the left side of the box, the fourth jack next to the handle is for syncing the scope when sweeping.

## Operation

On power up the unit reads saved frequency settings from EEPROM. The display then shows frequency, current port selected, and the output power setting.

Click one of the three buttons to change the port selected to display on the LCD.

Rotating the encoder knob will change the frequency digit under the flashing cursor. Press click the encoder knob to change the digit under the cursor, you can set the cursor to change digits from 1 Hz to 10 MHz.

Hold one of the port select buttons down and turn the encoder knob to change output power for that port. The chip has choices of 8 milliamps, 6 mA, 4 mA, 2 mA, and OFF. Silicon Labs’ spec for driver impedance is 50-85 ohms.

If any of the above settings are changed, the software waits ten seconds, then copies the current settings into EEPROM. In the event the unit gets confused, it can be restored to last saved settings by cycling the power switch. Also it can be returned to default settings by holding down all three port select buttons, while powering up.

Arduino-Si5351 Signal Generator Frequency/Power Setting

## Sweep Function

Sweep is accessed from a separate menu. Press down the encoder knob for more than two seconds (a long press) and release to enter sweep parameters for the currently selected port.  A short click of the encoder knob will advance the menu through the sweep choices, currently +/-  0, 1000, 5000, 15000, 50000, or 150000 Hz. The unit sweeps from frequency minus that amount to frequency plus that amount so the total width of sweep is twice the setting. Sweeping is done by reprogramming frequencies in 20 steps between the limits.

A second long press of the encoder knob will return to the frequency menu. The letters “sw” appear on the LCD to indicate that that port is set up to sweep. All three ports can be set up but only the port currently selected in the display will be sweeping at any given time.

A pulse is available at a phono jack on top of the box to trigger an oscilloscope at start of each sweep iteration.

Sweep parameters are not currently saved in EEPROM.

Arduino-Si5351 Signal Generator Sweep Setup Screen

## The Software

I am using the Si5351 library from Etherkit. I added a function to completely disable the output drivers to save battery when a port is set to “OFF” so I will include the library in the zip file.
Most of the sketch, implementing multiple port and the menus, was straight forward. The one thing that gave me fits was the quadrature nature of the rotary encoder. This is a mechanical switch and it glitches. Not a problem if you are say, setting an analog output from 0 to 1023, you probably wouldn’t notice but if you need to change a digit by exactly one, glitches are intolerable.  Conventional debouncing a switch usually just waits a certain amount of milliseconds after a transition is detected, read again and proceed. There are debounce libraries for doing this. I had no luck. I finally found an post by Oleg Mazurov about treating the quadrature pulses as a Gray code. It helped a lot and I posted about my findings in the Adafruit Feather forum.
The Adafruit rotary encoder outputs four state transitions on each of it’s 24 rotary detent positions. To get one increment per detent, I tried skipping four state reads with a software counter but it was still glitching if the knob was inadvertently touched. What finally worked was changing the Gray code decode table to disallow all but one positive change and one negative change. The allowed changes remaining are in the middle of the detent so glitches near the resting position are unlikely.
Sweep is accomplished by reprogramming a port frequency on the fly. Tests indicate this is slow and the 20 step sweep takes about 65 milliseconds which limits the sweep rate to about 15 per second. I found a very good way to time something is to write a 1 to some output pin at the beginning, then write a 0 at the end. It’s easy to see exactly how much time the intervening code took by measuring the pulse on an oscilloscope. The send_frequency function takes 3.5 milliseconds. Looking at the Si5351 library, the set_freq code is long and complex. It might be possible to speed this up by using the set_freq_manual call but I’m not smart enough to do that. Porting this code to a 16 Mhz Arduino might make the sweep unusably slow.

## Addendum April 4, 2018: Amplitude Modulation Experiment

I thought I might try generating an AM modulated signal by summing three generator outputs.  A 1.1 MHz signal modulated  at 1 KHz would have a 1.100 MHz carrier, a 1.101 MHz upper sideband at half the carrier amplitude, and a 1.099 MHz sideband at half the carrier amplitude. I breadboarded a resistive combiner as follows:

Resistive Combiner

The Si5351 was set to equal drive power on all three outputs.  I examined the output on the oscilloscope, channel 1 connected to AM Out, channel 2 to Audio Out with sync taken from Channel 2. The result is not encouraging. It does output an amplitude modulated signal but the waveforms are bizarre. I see a blocky square wave changing at a 1000 Hz rate but there is some phase problem I can’t control.  This is the best I could capture:

AM Modulated Signal

Connecting an audio amp and speaker does show a 1 KHz tone if the phases happen to line up just right. I found that setting any one of the generators to be one Hz off frequency results in a rolling pattern with about a one per second beat note in the speaker.

This method of faking Amplitude Modulation is certainly not precise or controllable. Setting one of the outputs off frequency by a few Hz does give a useful warbling tone in an AM receiver.

## Files

A zip archive is available including sketch source, the Si5351 library, and a schematic
Jan 4, 2018 V1.1 including the sweep function
Jan 5, 2018 V1.11 Sweep bug would not change freq while in sweep mode. Cleaned up schematic.
https://www.dropbox.com/s/hk7nc063ipjisr7/SignalGenV1.11.zip?dl=0

## Arduino Iambic Keyer – 2017

Last spring I started doing what I call “Morse Walking”. Going out with headphones on, beeping morse code. I’m doing this hoping I will get good enough at morse to actually use it on the air without making a fool of myself. I previously made two battery operated Arduino based keyers here and here that can generate random morse characters. But they are awkward, the 2015 version requires an external battery and the 2016 model won’t fit in my pocket. Obviously I needed another project.

Arduino Feather keyer

I decided to use an Adafruit Feather, it has an Atmel 32u4 processer, built in USB interface, a charger/converter for a 3 volt lithium battery, and plenty of pins brought out. The idea was to cut down the previous keyer software to fit the 32u4 equipped with only the hardware I needed for battery powered practice. Like many of my projects, putting it all into a small box proved to be difficult. Not many parts in the schematic but that Altoids tin is only 2 1/4″ x 1 1/2″ and about 1/2″ deep.

Arduino Feather Iambic Keyer

Note the unusual wiring at the headphone jack. Ring is grounded while tip carries the signal. Sleeve is not connected. This puts the two headphone elements in series and presents a higher impedance to the output circuit. The ring normal contact can then signal power enable to the Feather when the phones are plugged in.

I sawed about a quarter inch off the breadboard end of the Feather to make it fit, along with two phone jacks, in an Altoids Small tin. I wired up the Feather along with a quadrature rotary encoder which I thought would be cool to use as a volume control. Porting the previous keyer sketch to the 32u4 proved more difficult than I expected. The encoder required major changes to the keyer code as volume control is now in software and requires manipulation of the sine wave synthesizer tables. I got that part mostly working but set the project aside in May.

So now it’s November and I’ve picked up the little keyer again. The software has been revamped and now has these features:

1. Characters to be sent are buffered in an asynchronous circular queue so memory buttons or keyboard characters can be “typed ahead”.
2. USB serial terminal is supported as a keyboard for sending or function programming.
3. Paddle generated morse is interpreted and printed as ASCII letters on the serial terminal.
4. Four programmable memories available with 251 character capacity each.
5. Memories programmable from serial terminal or from the paddles.
6. Random code practice modes, letters, letters and numbers, letters numbers and punctuation.
7. Adjustable character spacing in code practice mode (Farnsworthiness).
8. Morse character speed settable 10 to 45 WPM.
9. Sidetone frequency settable 100 to 1200 Hz.
10. Synthesized sine wave sidetone with leading and trailing edge envelope shaping.
11. Memories and operating parameters stored in EEPROM and easily reset to defaults.
12. Stand alone operation from LiPo battery.

I went for an hour walk today with the keyer in my shirt pocket and it performed flawlessly so I consider it done.

This is a photo of the unit with battery removed.

Arduino Feather keyer battery removed

I had to move the JST connector to the side to get clearance, the battery would not fit under the rotary encoder. There are four memory buttons, plus the back switch on the encoder used for Function. I’m using my usual analog read routine to debounce the button switches. Metal cap switches from Adafruit, work much better than the 6mm plastic buttons I used in previous versions.

You can see here the battery just fits.

Arduino Feather keyer with battery

I spent quite a bit of time working on the waveform generation setup. The encoder routine generates a number 0-64 which is used to scale the synthesizer waveform. Four 16 byte amplitude tables must be regenerated in RAM each time the volume is changed. Initially the sine waves were horribly distorted so I made a spread sheet helped to see what was happening. I was able to work out code that produced a good stepped morse element.  There is very little audible clicking now at beginning or end of the morse elements.

This photo is a dit at about 25 WPM.

Arduino Feather keyer waveform

Any future revisions will appear here

#### Version 1.2 12/6/2017 Was running out of memory, rearranged startup and moved stuff to PROGMEMhttps://www.dropbox.com/s/hqx54u6ha8uu6xn/MemoryKeyerFeather_V1.2.zip

Jim Harvey – wb8nbs@gmail.com

## Motivation

In more than one episode of “The Woodwright’s Shop” Roy uses a gauge he calls an “Octoganizer”.  See this recent show at about 23 minutes in. He can mark a piece of square stock with the layout lines needed to plane off the four corners, creating an octagon. The tool has a pair of locating posts that straddle the work piece, and two scratch pins to mark the face.

These screen shots from the Woodwright’s 3613 episode show the antique Octagonizer and also Roy marking a stool leg blank. He made a point that the tool can follow a tapered leg blank.

Bottom side of the Octagonizer

Using the Octagonizer

Searching the internet reveals this is a common tool in the boat building business called a “Spar Gauge”. I don’t know what “Spar” is on a boat.  I thought it was something Texans carried in the back of their pickup. Many internet pages discuss methods of making this tool, here is one that uses a graphical method to locate the marking pins.

I decided to explore the concept and make one. Or two. Or three. It turns out one size doesn’t fit all.

## The Method

So exactly where do you drill for the scratch pins?

This is the necessary derivation:
In the following W = Width of stock, F = Width of a full facet, X = Width of an angled facet (to be removed).

Square stock layout

The full width W contains one full sized facet and two angled facets
$W = F + 2 * X$

Angled facets measure full width times the cosine of 45 degrees, which is $\frac{1}{\sqrt 2}$
$W = F + 2 * (F * \frac{1}{\sqrt 2})$
$W = F * (1 + \frac{2}{\sqrt 2})$
$W = F * (1 + \sqrt 2)$

Rearrange the last to solve for the full facet width:
$F = \frac {W}{1 + \sqrt 2}$
Plugging in the numbers and calculating gives:
$F = W * 0.4142$

But we really need to know X, the width of the angled facet, so we can mark the stock by measuring from an edge.
$X = F cos 45$
$X = \frac {W}{1 + \sqrt 2} * \frac {1}{\sqrt 2}$
$X = W * \frac {1}{\sqrt 2 + 2}$
Running that through my calculator gives:
$X = W * 0.2929$

So 0.2929 is the Magic Number!

Just to verify:
$0.2929 + 0.4142 + 0.2929 = 1$
Yes!

## Implementation

Locating posts on either side of the tool are a source of error because of their thickness. If the tool has to be skewed to a really steep angle, like using a four inch long Octagonizer to mark a half inch stick, the marks will be too close to the edge. In this exaggerated example with posts an inch in diameter, the scratch pins miss the thin board completely.

Error caused by post diameter

If the locating posts were infinitely thin this would not happen and the tool could always lay out an accurate octagon. Therefore we need to keep posts as small a diameter as practical and avoid steep skew angles. I’m going to use six penny nails for posts and eventually make several Octagonizers to accommodate projects of different widths. Practically though, for many uses octagon shapes don’t have to be perfect.

The Octagonizer I made doubles up on a 4 1/2″ piece of Osage Orange. The wide side will mark stock up to 3 3/4″ wide. I let the wide side scratch pins stick out on the side opposite the points, these form the locating posts for marking narrower stock up to 1 3/8″.

Dual Octagonizer front

Dual Octagonizer wide side

Dual Octagonizer narrow side

This photo shows the wide side marking a piece of 2 inch stock. I’ve enhanced the scratch marks with pencil for the photo.

Marking a blank with the Octagonizer wide side

I had a piece of Poplar about 1 1/4″ square, I marked it out with the Octagonizer’s narrow side. Here it is clamped corner to corner in the vise.

Planing a 1 1/4″ Poplar square into an octagon

The Poplar works down quickly. I left one facet uncut just to show how it works.

The first try, three facets planed

While working through the arithmetic to locate the six holes in this double sided tool, I had to carefully account for the radius of the nails. Six penny nails measured 0.116″ in diameter, not accounting for this would throw the accuracy off a lot. I sharpened the points before assembly by chucking the cut off nails in a battery powered drill, then gently spinning them against a grinding wheel. The points were tempered by heating them red hot, quenching in water, then cooking in a toaster oven for 20 minutes at 425 degrees. I used a machinists vise to press the nails through pre-drilled holes in the Osage Orange.

## Usage

In many cases you can set a marking gauge to Width times the Magic 0.2929, and just mark all eight lines with that.  If I had to make only one octagon I would use a marking gauge. If I had to make more than four, I might make an Octagonizer. A marking gauge will not encounter the error discussed in the previous section and you can lay out an octagon on a piece of stock any length, any width. It would not work though on tapered stock.

I plan to Octagonize a treated 4×4 for a porch support post.

Roy showed using the Octagonizer to lay out a tapered stool leg but laying out a short tapered octagon like a chisel handle, can also be done by marking both ends of a tapered blank, then using a straight edge to connect the dots. This is also a good method if you don’t want to see evidence of scratch marks.