QSI programmer software and USB connection tool used as DCC programming process.
Tom G explains in detail how he used a Team Digital SMC4 servo control to power HO scale N&G semaphore signals.
Required bill of materials:
- Team Digital SMC4 controller board
- QSI programmer software and USB device interface
- Two wire strips (to connect USB device to SMC4)
- HiTech HS-55 “Feather”Servo motor, with actuating arms provided in box
- N&G semaphore signal (complete) and mounting hardware.
- Small 2-56 set screw to mount servo motor and 1/32nd inch thick square brass plate stock
The N&G signal is sold with a small bag that contains parts with some necessary assembly and custom work:
- The brass casting must have its set screw position tapped for a set screw. This will hold the signal pipe in place.
- The casting has two long double slots; this must be trimmed to 13/16ths from top of slot portion of the casting, and discard the remaining portion.
- From spare 1/32nd thick brass sheet stock, create a ½” by 11/16ths inch square plate. Solder the side with the ½” width to the slot area. This provides a base to mount the servo (see photo below to get a basic orientation).
- Drill a 1/16inch hole and attach the HC-55 motor (upside down) to the brass plate using a 2-56 screw and nut.
- Using the brass pin in the parts bag, attach the black plastic signal rocker arm to the casting, so that it can perform a swinging motion. Sleeve the signal actuating wire and signal pipe through the casting. Orient and bend the steel actuating wire into the small hole in the rocker so that the semaphore ‘yellow’ or 45 degree position is displayed when the rocker is (or close to) straight up and down in the casting. This will give ample room to swing in the red or green positions. You may need to trim off a small part of the black plastic at the bottom but do not remove enough to break the connection at the bottom of the slot.
- Attach the long white/clear plastic servo rocker arm to the motor shaft HC55. Do not attach any pins in the holes at this time.
- The motor should be directly below the black rocker pivot. The motor plastic may attach in front or in back of the custom plate depending on how you did your workmanship. What is important is that the black signal rocker and the white servo rocker can move close to each other, without interference. Leave the two free to move independently for now.
- The picture below shows the final assembly after programming is complete, with the rocker pin in place and the signal in the green or ‘fully clockwise’ rotational position.
Set up of QSI programmer interface:
- Install the software as outlined by the QSI documentation. It is not necessary to install all the latest upgrades, as only the basic functions are necessary from the software,
- Once installed, open the QCV icon to start the program. You will need to create a new folder or document and give it a unique name. There will be a series of questions that the software will inquire about your new document, and just specify ‘other manufactures decoder’ in the menus. This will provide a generic session. With the document open or ‘selected’, change the default locomotive address from 003 to 001. If you do not see a test cab available, open one up from the menu bar but do not use it yet.
- Connect QSI / USB hardware device connect to one of the USB plugs on your PC, and connect the power. You should observe the green LED on the USB port light on.
Connecting the USB device and servo motor(s) to the SMC4:
- Using the Team Digital SMC4 documentation as a guide, connect the USB output terminals directly to the circuit board terminals for track power. These are terminals ‘RA’ and ‘RB’ as shown in their diagram.
- Familiarize yourself with the other aspects of the circuit board. Find the location of the ‘smart’ button, the accompanied locations of status LEDs, 1 (red) and 2 (green). Note the location of the output terminal strip for the servo motors GD/5V/SG 1 through 4, and the terminal strip for the input connector pins 1 through 10. Study the board diagram in the Team Digital document so you know where these are.
- The plug for the HS-55 will plug right into the output Servo terminal strip, with yellow for SG, red for 5V and black for GD (ground). This would orient the yellow wire side (of the plug) toward the inside of the board. Remember that there are five sets of pins, and that the second row is a duplicate position Servo #1, so that the third row is for Servo #2 and so on.
- IMPORTANT – DO NOT HAVE THE SERVO DIRECTLY CONNECTED TO THE N&G SEMAPHORE ACTUATING ARM AT THIS TIME. This will be attached after initial programming. If you connect the servo to the signal before assessing its initial settings, unexpected rotational behavior of the default setting of the servo can lead to disastrous results, possibly destroying the signal’s actuation wire or other delicate parts. Your initial programming will establish the proper servo movement boundaries to a safe range, before connecting the signal.
Checking the QSI programmer / SMC4 interface:
- Now that everything is connected you may wish to test if the board is getting power, and if the servos will respond to input commands. The SMC4 has default settings for all four servo outputs as pre-sets, so it is a good idea to test before starting a programming session, and determine if additional pre-programming is needed.
- Set the radial button on the top menu to ‘operations mode’ in the QSI software, and open up a test cab from the menu bar if you have not already done so.
- On the cab, press the “+1” to start the throttle. This will cause the red LED on the QSI / USB hardware to light up meaning that track power has been applied. Having a servo connected to the any of the pins on the strip you should see the motor respond or ‘jump’ to its factory setting at the end of its clockwise range. This is proof you have power and signal. If you see no movement the servo motor may be on its default ‘resting value’.
- Assuming you have your first servo connected to the Servo #1 output, connecting a wire from the primary input 1 and the ground input 5. This should cause the servo to move to the opposite fully counter-clockwise position. If there is no response, then you will need to determine the problem. It could be possible you may to perform some pre-programming of a few extra CV values to align the values of the QSI software with those of the SMC4 board.
Initial programming of the SMC4 to get started
To enter the programming mode for the SMC4, you must perform a precise order of steps:
- The board must have its power turned off by selecting the ‘service mode’ radial button QSI interface. This will shut off the track power, and the red LED on the QSI device will go off.
- Press and hold the ‘smart button’ on the SMC4, then on the QSI screen select the ‘operations mode’ and ‘+1’ on the test cab to repower the board. You should observe the two LEDs green and red both light on the board. With the green LED extinguishing first, let go of the smart button, and a second later the red LED extinguish. This indicates the board is now in programming mode and can accept CV programming changes.
- The picture below shows the QSI device on and the red LED light on the SMC still on while the pen pointer is on the smart button that just was released:
- In the QSI software, push the ‘Program any CV’ selection from the menu bar. A box will pop up allowing you to select a CV number (on the extreme left) and the desired value (on the extreme right). There are no decimal values needed in the middle two boxes, which are left blank.
- As you program any CV at this stage, upon each entry, the green LED on the SMC should blink or flash once, indicating that the CV value was accepted.
- If you had no response from the board (in your test in the section above) you can at this point verify some key CV pre-programming settings: CV1 should be a value of “1” (same as loco address), CV31 should be a value of “1” (the ops mode setting), and CV29 should be a value of “0” (decoder setting to program center position and range values). If you program all three, you will need to power off-power on the board while holding the smart button to “recycle” these settings into place, and enter the programming mode again in the SMC4.
Programming the SMC4 to tune the semaphore red – yellow –green positions:
- Important reminder – At this point, you will only be positioning ‘an approximation’ of the rocker arm positions, in order to determine the initial center position and range values. After your tuning session is compete, the pin can be placed in the servo actuator arm to allow it to slide the black rocker back and forth. In the picture, note I have pin inserted on the opposite side of the arm (below the motor) as a temporary safe place away from the action.
- The picture above shows why you don’t want the pin connected. The motor jumped to its original preset position upon power up, which was way out of range. This could possibly damage the signal by pulling the rocker out of the center pin and then pulled the entire wire down and out of the mast, destroying the signal actuation.
- Now that the servo has moved to the default position, you must now program the center position and the range values.
- Program the CV7 to a value of 2. Servos connected to all pins whether 1, 2, 3 or 4 will all move to the center value. This is the value you want to set with the servo arm positioned as the black rocker straight ‘up and down’ (to give a yellow indication). You may need to remove the servo arm and ‘rekey’ it to be close to the default value of 62 that the SMC4 is set for all four servos. Inspect the Team Digital documentation on page 15 to determine the CV variables used and the default positions. CV10, 11, 12, and 13 are for center positions of servo 1, 2, 3 and 4 respectively. CV3, 4, 5, and 6 are for the range values of servo 1, 2, 3 and 4 respectively
- At this point, I would strongly suggest creating a chart with the values listed as columns, and the CV values of the servos listed as row entries. This chart has two strong assets: 1) You can remember what settings entered as you fine tune the values (left to right) for each servo, with your final value being the last entry. Remember the SMC4 cannot respond back with its value similar to the way locomotive decoders can (through the software or by voice in a sound decoder), so you can only recall what you’ve written down. 2) This information can be kept with the SMC4 for future reference, and new values can be entered. In the example below, it took three attempts to get an appropriate right center position for servo #1 but only two attempts for servo #2, and so on. A chart like this will keep your sanity (I created this template was in an Excel spreadsheet so I can create more and enter values on my computer as reference).
- Let’s assume you are programming servo #1. When you find that the servo position is too far clockwise, then enter a lower value in CV10 (than the default 62) to allow a center to move farther counter-clockwise. As you see in the chart, I had to go down about 15 and then worked up to get the center position around 51. With a different servo in the servo #2, I had to go up from 62 about 5 to get the same center position for yellow. Each servo is a little different. In the picture below, the pointer shows how I aligned the rocker and servo arm at this position with a final value of 51 for servo #1.
- Next you will need to determine the green and red range value. Assuming you are programming servo #1, the value for CV3 default of 15 is far too low, so start with a value between 80 and 90 (this does not necessarily correlate to actual degrees, so don’t assume it means 90 degrees on a compass). After programming this value, you can move the servo to each of the end positions by programming CV7.
- To reach the green or fully clockwise position of the motor and arm, program CV7 with a value of 4. Check to see if the blade is fully vertical. If not, you may need to change the center position (or range) slightly so that the green is correct, and this may take four or five rounds of tuning.
- To reach the red or fully counterclockwise position, program CV7 with a value of 5. Again you may observe the same issue getting the blade horizontal. What I found best is to seek out the range value first, so I can observe that I have a good “90 degree quadrant of motion”, then revise the center position to get a perfect vertical for green and perfect horizontal for red for that value. You may find that the center position for yellow may be slightly off, but that is a compromise you may have to accept with this system. I did not see it to be a major liability.
- The pictures below show programming CV7 as 4 to go green, and CV7 as 5 to go red on the picture.
Remember, higher values for center position CV10 will move the arm more clockwise or green, and lower values will move the arm more counterclockwise or red.
- If you are confident that all the settings are good, you can now place the brass pin into the servo rocker arm and sleeve it into the black actuation rocker arm. You may find that either hole 2 or 3 may be best depending on the amount of swing arc in your mechanism.
- It is likely a little more fine tuning may be necessary with the two arms connected.
- Once you have completed the settings, the board will need to be reset into a new service mode that allows three positions of the semaphore. Currently all the programming has been performed in “service mode #1”. Now you will need to reset the default value of CV29 which is “0”. Change the value of CV29 to “4”, and this will now allow the service mode #4 to be in effect, which is necessary for the three position actuation of the signal. Keep in mind if you need to reprogram the servo, you will need to change the service mode CV29 back to ‘0’, make the changes, and then reset it back to ‘4’ again.
- If you happen to own a two position N&G semaphore such as a lower quadrant ‘style B’, all of the same instructions will apply except the following:
- 1. The range will be lower since the green position is not vertical and now below the red position.
- 2. The reverse will hold true for the CV7 programming. CV7 as 4 to go red, and CV7 as 5 will go green. In other words, higher values for center position CV10 will move the arm more clockwiseor red, and lower values will move the arm more counterclockwise or green.
- 3. You will not need to change CV29 from “0”, since there is no need to locate a center position or yellow indication in the detection circuit.
Operating the semaphore with the SMC4 with the detector input terminal.
- You will need to power down the board in the QSI interface and then power up again as noted in the instructions above with one exception, you will NOT hold down the smart button as you are no longer programming. This is for standard operation from a DCC system, and now the input terminal can take over the operation of the servo.
- Team Digital sells track detector boards on its website and these can be plugged into the input terminal as per their documentation. However you can simulate the operation manually as follows to test the settings or create a manual push button or rotary switch to set the red, yellow, green positions. This will assume you have the board set up to operate the servo #1. If you wish to actuate servos #2-4, inspect the Team Digital documentation to determine the appropriate pins for those motors.
- To operate the servo #1, locate the pins on the input terminal strip designated as number 1, 5 and 7.
- Pin 5 is the ground for all the other pins, including 1 and 7.
- For purposes below ‘activating’ means completing the circuit, ‘releasing’ means breaking the circuit.
- Pin 1 is the ‘primary connect’ to move the servo from the green to red position as an active or live circuit. This means that unconnected, the signal will be in a home, resting or ‘green’ position (fully clockwise).
- When you connect pin 1 and pin 5, the signal will cycle over to the red or fully counterclockwise position, as long as the connection is kept or persistent. Releasing the connection of pin 1 and pin 5 will return the servo back the other direction, clockwise or green.
- Pin 7 is the ‘secondary connect’ to move the servo from the green to yellow position as an active or ‘live’ circuit. This means that unconnected, the signal will also remain in a home, resting or green position (fully clockwise) unless the red position of pin 1 was activated.
- From the green or unconnected position, activating or connecting both pin 1 and pin 7 to the ground pin 5 (together) will move the servo counterclockwise from green but halt at the yellow position. Releasing the pin 7 but continuing to hold or activate the connection to pin 1 will allow the rocker to continue counterclockwise to red.
- Releasing the pin 1 but activating the pin 7 (when currently in the red or fully counterclockwise position) will move the servo back to halt at yellow. Subsequently releasing pin 7 will then let the servo continue back to the fully clockwise or green position. With both pins ‘off’ this is the resting state.
Remember if you have a lower quadrant two position signal. All the activations will be reversed and the yellow or center position of pin 7 is not needed. Team Digital has other service modes #1, #2 or #3 that may be better suited for two position indication logic and you may wish to explore this option.
This completes the programming and operation of your SMC4/N&G semaphore signal.