Forums » Power and Sound

List of newest posts

    • February 23, 2018 7:03 PM EST
    • I don't see any reason that you would.  I didn't dig into it TOO deeply, but let me know if that doesn't work, and I'll take a closer look.

    • February 23, 2018 6:17 PM EST
    • Thanks Eric,  That will get me part way there then.  Do I need the routine to save the address to EEPROM if the code is hard coded in the script?



    • February 23, 2018 6:08 PM EST
    • It looks like you can comment out these lines:

        if (linkButtonState == 0) {
          linkAddress(); // if button pressed on boot link to first DCC address seen

      And then change these lines (immediately after those above) to match your locomotive address:

        activeDCCAddress = 1794;
        DCCAddress = 1794;

      It appears that 1794 is a hard-coded default address that Dave used while debugging. 


      There is also a routine there to save the address to EEPROM and load it again at startup, but these lines seem to overwrite the loaded address for some reason.

    • February 23, 2018 5:48 PM EST
    • My last post on DCC++ kinda when in multiple directions so I hope this one will stay on track.  I built Dave Bodnar's DCC++ wireless Throttle and control board to go in the tender and  both work great.  I even layed out my own circuit board to make things cleaner and eliminate a rats nest of wiring.  As soon as the new boards arrive in a few days, I will assemble one and post photos of the throttle and boards i had made.  Now  with that being said,  I know nothing about Arduino C++ programming and just loaded Dave's script and it worked like a charm.  The only thing I dont like about the system is that I have to push a button on the tender to Link the receiver to the Throttle. This makes it  hard to do when it is in the round house or more than a arms length away. So what this message is about, is,  I want to change the script to have the DCC address for each locomotive hard coded into the script for that locomotive.  That way I can turn them all on and then select which one I want to run from the Throttle.  So  what I need is  someone that knows Both DCC and Arduino coding that can tell me how to change Dave's coding from scanning for the DCC address to having it hard coded and wont have to scan for the address.

      I hope this is straight forward and will be easy to do.  You can find Dave's code on his website.  I am using the code that is for the VNH2SP30 motor driver with the DF Mini Player sound module.  the code and schematics are here:

      Any help will be greatly Appreciated.  Oh  I have talked to Dave about this,  but he is on other projects now and does not have the time to look into it, so that why I am asking here.


    • February 23, 2018 2:56 PM EST
    • Has anyone read through the Revolution DCC manual? It is a little different from what is currently in use.

      I'm sure that more experienced DCC users will have lots of comments.




    • February 20, 2018 10:40 PM EST
    • Seen 'em listed as "servo tester".

    • February 20, 2018 10:36 PM EST
    • I have seen many different "servo drivers" over the years, these gadgets allow you to control any servo as designed and or a constant rotation servo with a 4.8v-6.0v receiver battery pack by turning a knob. I use servo driver to test servos and set-up and cycle aircraft flight surfaces, throttle and any linkage mechanically to prevent binding. I've seen the drivers go for under $10.00 on up.



    • February 20, 2018 8:49 PM EST
    • Constant rotational servos are designed to be used with ANY regular digital proportional R/C receivers for a lowish cost 5-6 volt combined ESC, motor and gearbox, in a super compact format.  I doubt they can be used with any regular PWM output controllers such as AirWire or Revolution unless they are equipped to control servos such as used by Kadee.

      All you need is some form of chain drive attached to the output shaft and the axle you wish to drive.

      I have tested all three of the servos listed on that link. 

      All three provide continuously revolving proportional control either side of neutral.

      The smallest one revs quite high but is quite smooth.  Sadly it would be not very long lasting if used to drive a small rail vehicle.

      The middle one tested very well.  Nice and smooth either way. Probably 50 -60 rpm. No idea on current drain but I doubt much more than a few hundred milliamps max.

      The most expensive one was the least smooth, as it started with a bit of a jerk.  It was very powerful.

      Be wary of any servo that does not have metal gears as constant revolution is going to wear them out rapidly.  Preferably they should have ball bearing shafts as well.


    • February 20, 2018 6:59 PM EST
    • Sure that makes sense (the n-channel MOSFET switch to the power).


      BTW: I'm not doing this yet, just filing this away for a possible future bash like John is doing. It may make more sense to just use a regular can motor and an off-the-shelf airwire receiver with integrated H-bridge. Less fiddling. And my electronics is rusty.



    • February 20, 2018 6:57 PM EST
    • Like this:


      BTW, I'm not sure of the power consumption.

    • February 20, 2018 6:41 PM EST
    • I haven't actually used a continuous rotation servo for anything, but I have used conventional servos quite a bit.  A conventional servo is centered with a 1.5 ms pulse.  If you continue sending the pulse, it hold that position with a good deal of strength - handy if it's connected to a steering mechanism or aileron.  In this scenario, it draws current continuously, since it's constantly making little corrections.  If you stop sending pulses, it stops holding position, and you can turn it by hand.  It also stops drawing current.  


      The problem with killing the control line but not the power line is that any noise that is picked up can be misinterpreted as a control signal and the servo will go bonkers.


      How exactly this translates to continuous rotation, I'm not sure.  What's happening in continuous rotation is that the servo is hunting for a position that it will never reach.  


      What I've been doing with the servo controlled Kadee couplers is putting an N-channel MOSFET inline with the ground so I can interrupt the power when not in use.  When I want to open the coupler, I begin the pulse stream on the control line, and then switch on the MOSFET.  The servo goes where I want it, and then I switch it back off.  I suspect this approach would work fine for what you're doing as well.

    • February 20, 2018 6:31 PM EST
    • Thanks Eric! Any idea of the power comparison vs a raw motor? Presumably if I gutted the servo and used it as a raw motor there wouldn't be much difference?


      As to #2, I guess I would have to send a pretty much continuous set of 1.5ms pulses to keep the motor from turning, eh?


      Here's a few wikipedia pages: H bridge, general servo, arduino control of continuous servo.


      I'm worried that there's a power drain even when the servo is not moving (1.5ms pulses). Any info on that?

    • February 20, 2018 5:50 PM EST
    • A couple of answers:

      1.  Airwire uses PWM through an H bridge for motor control - i.e. the polarity of the PWM signal reverses to reverse the motor direction.

      2.  A continuous rotation servo has an H bridge built in.  To control it, you have a constant DC (+5 V), and a control line.  A pulse of 1 ms will run the servo at 100% speed CW, 1.5 ms will stop it, and 2.0 ms will run 100% CCW.  The current is drawn through the DC input, so the control line can be interfaced directly with a microcontroller or other low-current device.  

      3.  You could gut the servo and attach leads to just the motor and have a motor with reduction gears that would operate just like a DC motor - e.g. on the output of an AirWire board.  BUT, it's a 5V motor, so you'd have to somehow reduce the PWM output to 5V.  

    • February 20, 2018 5:13 PM EST
    • Here's that link ...

    • February 20, 2018 4:43 PM EST
    • Thanks for starting this John. I'll repost my questions...


      I looked at that link and am having a hard time telling the, for instance, power usage for these vs a regular motor. Any idea for the watt requirements? I saw 3 amps at 8.4 volts but that seemed to be a maximum and not the normal. And they seem to be on average about 1 rotation/second, or about 50-80 rpm.


      I'm wondering what the battery life would be for a servo vs a motor, and also how this fits with existing decoders. Do the current decoders (such as airwire) do pure voltage variation to control speed, or do they do pulse width modulation (which this seems to be.


      I'm afraid I'm also a bit confused about why servos take both a VCC (like 5 volts) input and a separate PWM (pulse width modulation) input to control speed. Why do they need both? Anybody know?

    • February 20, 2018 12:29 PM EST
    • In another thread I mentioned that a sales clerk at the local Ace Hdwr. store suggested modifying a servo for a cheap 5-6 volt motor. He suggested moving the 'pot' and setting it in the center position. The result is a continuous run, polarity sensitive motor, since I had 2 on the shelf, I grabbed one and found it fairly easy to do;

      Since my application is a cheap motor, it raised questions regarding the wisdom and a link to more powerful editions....and questions!

      I don't have the answers and thought a specific thread might be helpful to the Others.

      I googled continuous run servos and saw thousands, I was impressed with the $2,100 beauty, but since I'm not aiming lasers I clicked on ...


    • February 7, 2018 9:58 PM EST
    • Yeah, I think the wireless loader updater (the usb dongle) software is only in the newer stuff, he must hardware to some contacts on the motherboard.


      Sure would be nice to know what other changes to the firmware have been done between the various versions.



    • February 7, 2018 6:45 PM EST
    • He didn't mention the labor cost only that I'd have to ship them to and from. I asked that I thought the older boards could not be re programmed, but he said that HE could do it. I replied "Of course!"

    • February 7, 2018 11:17 AM EST
    • Joe, I thought you were retired? (Time)

      How much did Navin want for the reprogramming? (Money)


      Just curious. I do have the USB dongle for reprogramming.





    • February 7, 2018 10:32 AM EST
    • Joe Zullo said:
      Steve Featherkile said:

      Button 1 is default latched.


      I was able to latch button 2 (bell) to get continuous clanging.


      I was not able to get a single blast of the horn.  Default of button 3 is momentary, and one press of the button yields 4 blasts of the horn that is almost a crossing signal.  The short blast could be shorter.  Latching the horn makes it go on forever, as one would surmise.  


      In both the bell and horn, the latching was not disengaged without a second push of the button, after which the software demanded the sound complete its cycle, bell 8 dings, horn, 4 blasts.  I can live with that. 


      Perhaps, on the next update, the horn can be changed to one blast per button push, with an allowance for duration of button push.


      I was able to change which locomotive had the bell and horn with the * button, thanks, Kevin.  I suspect that would also work with 3 or more locos in the consist, I would just have to cycle through the locos to get the right one.


      Thanks to Dave for posting the article, and to Gregg for linking it here.


      I have seven locos set up with battery/Revo systems. Three steam and four diesels. On all four diesels I was able to set F2 to latch to get continuous bell clanging. On the three steam boards I was not able to get continuous clanging even though the F2 button is set to latch in the menu. Weird. Is there a fix? Obviously the steam board is different from the diesel board. It's been bugging me since you posted this.

      I took your advice and called Navin to ask about my problem. He was good enough to discuss the problem with me. It turns out that with the steam boards I have I cannot get a latched bell even though the menu says F2 is latched. He also said that if I send him the boards he could reprogram them to the RevII standard. I thanked him for taking the time to talk to me about this, but it is not THAT important to me to have to take these boards out and ship them to him (time and money). He is very easy to talk to and told me to call any time. Nice customer service!