Digital Tachometer for record player (LCD display)

Hi Greggan, I am probably not going to release the source code but will instead provide a pre programmed arduino nano. There are two reasons for this 1) the code is very specific to driving the hardware on the PCB, 2) I may decide to sell fully assembled units on a semi commercial basis via ebay and I don't want some outfit in China taking the code and producing clone versions as happened with the Hercules boards. I have no objections for the DIY community building their own units for the price of the arduino and PCB. Hope that does not sound unreasonable.

Users have full control to adjust all the parameters via a serial configuration menu or with the windows app I have developed for the PID tuning.

Steve.
 
Hi Steve:

Was wondering how accurate is this unit compared to the Phoenix road runner. Not being a software guy I do not have a clue on what you are doing to the single sample rate on the platter.

Both units display to a thousand of a rpm but I guessing there is alot of math and rounding to get there.

Thanks Tom
 
Hi Mark, actually the arduino can make it difficult to read the binary by setting appropriate fuses. Whilst I accept it's probably not going to stop a really determined hacker, why should I make it easy? It's not going to disadvantage the DIY community.

To answer the comment over accuracy, yes about 1/1000. The arduino is not particularly fast or accurate. I am currently investigating dropping the clock speed on the DDS generators to see if I can get any better as I think the rounding error there may be the main culprit. Also maybe two markers on the platter may help.

I will complete final BOM list at the weekend and post up the options. I currently have 4 x PCB's for anyone who wants to be an early adopter and test out the construction notes. 1 x PCB claimed so 3 remain. By the way there are some 1206 size and resistors on the underside of the board to solder. This is actually pretty easy with a fine tip soldering iron.

Ralph yes I confess I started this before I came across pyramids board. The main difference to this board is twofold. 1) for synchronous motors no step up transformers or off board amplifiers required. 2) full closed loop feedback with PID control.
Probably similar to roadrunner but available (I think production of roadrunner has stopped) and very low cost. I have designed using very low cost readily available semiconductors and passives.
 
Last edited:
Also maybe two markers on the platter may help.

A viable approach in my exploration of a similar venue has been the usage of multiple markers. I use a hall effect sensor and multiple magnets. Provisional code allows for anything between 1 and 12 "markers", yet I arrived at 4 as most suitable in my application.

Note to read each marker individually in a separate loop, and then average. Trying to establish timing by reading "between" markers may lead to gross errors unless positioning is surgically precise. Establishing separate loops for individual markers avoids you the hassle of exact spacing between markers and allows for decreased drifts over time.

If you are basing your RPM reading off of Arduino's clock, and you haven't already accounted for the crystal's inaccuracy (which I assume you have) have a look at @Pyramid 's code where he allows for the code to be adjusted to each Arduino board. While this may be troublesome for large scale manufacturing, seeing your idea is to offer the Arduino's preloaded, you may be able to do this as you dump the binary to each board (will require recompiling though).

Lastly, may I advise that you revisit the automated calculation of PID parameters after you've implemented multiple markers. Allow for some time for the rotation to "settle". You should have a good dataset of which to extrapolate PID parameters automatically within 5-10 rotations.

This might make the stabilization period slightly longer than what you already have, but that is a price I'd gladly pay for higher speed accuracy / stability.

After all, you do not need to calculate PID parameters with every rotation start - room and equipment temperature and humidity does not vary significantly on an hourly basis.
 
Hiding the source isn't going to stop cloners, they'll just copy the binary and the hardware, and failing that just steal the idea. At least if they have to copy the binary the user interface won't be worse!
You are perfectly right and that is the reason why I always post all code and even 3D printing files, it will render it useless to copy. If it worth it it will be copied regardless :cool::cool:
 
Hi Steve:

Was wondering how accurate is this unit compared to the Phoenix road runner. Not being a software guy I do not have a clue on what you are doing to the single sample rate on the platter.

Both units display to a thousand of a rpm but I guessing there is alot of math and rounding to get there.

Thanks Tom
Everything is a compromise correct me if i'm wrong!
 
Hi cbdd, well I guess that's what we are trying to eliminate entirely with a feedback loop. So currently I am seeing movement by a couple of thousandths after the system has settled. That is also without any averaging of the display. I am trying to eliminate that as well. After discussing a few ideas with Pyramid I am going to see if I can improve further at the weekend. I suppose I could add a % variation to indicate frequency wobble (wow) but flutter needs to measure a high frequency tone which I don't think we can achieve.
 
Attached is a BOM for v2.0 prototype boards. There are currently two remaining. Prices including UK shipping. The prototype options are:

1) Bare PCB and Pre Programmed Arduino Nano 18.00 GBP
2) Full kit of parts as per attached BOM 48.00 GBP
3) Fully assembled and tested board 98.00 GBP

a) If you want the optional FFC / FPC RA header so you can use a Linn flexible circuit switch (e.g. if fitting inside a Linn LP12 replacing a Valhalla) then that's 1.00 GBP extra.

Options 2 & 3 are complete with all parts (I2C 128x32 OLED display, DDS generator PCB's, Arduino, IR detector, passives, semiconductors, heatsinks. terminal blocks etc). All you need to add is a power switch (momentary action), indication LED and external enclosure for board (if not fitting inside TT) and enclosure for IR detector & display. (Greggan has produced an excellent 3D printed enclosure that can house the IR sensor & OLED display. Checkout his website).

If you want shipping outside of UK please contact me with your address and I will work out how much extra it will be.

Once feedback from early adopters gained and kit assembly instructions refined I will open a formal group buy option.

One note of caution: This kit contains a SMPS that is not isolated from the mains supply (similar to Linn Valhalla board). I recommend you build and test with an isolation transformer/step down transformer (100 - 240v @ 120mA) for safety of you and your test equipment. You must be confident and competent working with voltages 90V - 320V.

The above being said, the kit is straightforward to build and I will provide full comprehensive instructions on safety procedures, modular build and testing plus actual setup with your turntable. The most difficult part is tuning the PID parameters via serial interface/tuning application.

As a reminder these boards are designed to work with 2 phase synchronous motors 50Hz/60Hz that work off 6V - 110V RMS (160v p2p) that have a current consumption of approximately 10mA per winding. AKA Premotec, Airpax, Philips motors as used in Linn, Rega, Manticore, ProJect and other compatible turntables Two boards can be stacked to drive 3 or 4 phase motors. You may be able to use them on shaded pole motors by using a single phase as long as the voltage and current requirements match the board specifications above. I have not tested on anything other than synchronous motors. If your motor draws more current/voltage then you will need to use an off board supplementary amplifier as per Pyramid's SG4. This motor controller can be used as a source for the sine waves and to handle the tacho & feedback/control functions.
 

Attachments

  • TT Motor Controller BOM.pdf
    430.2 KB · Views: 284
Last edited:
Just finished reading through this thread and I'm stunned once again by the creativity and skill that has gone into pushing this project forward. Thanks to everyone who has shared!

I am planning a speed controller and tach for my upcoming Lenco plinth build, and I'm encouraged to see that others have successfully used this with Lencos. My question is if anyone thinks it would be possible to output the RPM reading to Nixie tubes instead of a LCD display? Wouldn't that look cool?

I don't know how to do it, but if anyone has thoughts, please do share.
 
Haha really retro. I like it. This is how I would approach: Both the tacho project and the motor speed controller can output the speed via a serial interface. I would use a second arduino nano to receive the serial data and drive the nixie tubes with suitable drive circuit. That means it's an easy add on project. How are you at DIY construction and coding?
 
I’m hoping it will be an easy add-on too. I’m not much of a coder, but the DIY assembly aspect will be a snap. I’m building a plinth and it’ll look really slick all integrated into the turntable as one piece.

I’m thinking the SmartNixie modules at Taylor Electronics may make the whole process easier, too, but I need to figure out what to get and how to make them see the display out from the DIY tach.