That will take a few days, but it doesn’t matter, they’re sold out.
People with photosensitive epilepsy are affected by lights that have different flash or flicker rates from as low as 3 to as high as 60 per second.
I was just raising a general concern about flicker affecting people with photosensitive epilepsy, but if the multiplexing is indeed at 100 kHz per section, that’s definitely outside the problematic range.
> Summary
The specifications for the clock were as follows:
* Millisecond precision, with no perceptible jitter
* Display clearly, without flicker, when filmed at very high framerates (20,000fps or more). The brightness should still automatically adjust, of course, and without the use of PWM
The signals rates mentioned in the article are with respect to how frequently the segments are updated, not the brightness. (With the one exception being the colons being PWM controlled, IIRC).
PWM means Pulse Width Modulation. Controlling a (perceived) light intensity of an LED via PWM means (if we pretend for the sake of simplification that the voltage rise and fall is instantaneous, etc) quickly turning the LED fully on and fully off, varying the duty cycle to achieve the desired perceived brightness. This project avoids the flickering inherent with PWM by not using PWM: the voltage itself is set to some fixed value for a given target brightness.
(If one then wonders why this wouldn’t be the default approach for such things: microcontrollers often provide a built in means for PWM output, but it’s less common to have built in true, non-PWM analog outputs, requiring additional parts (thus more cost, more complexity) to implement variable voltage control).
> Auto timezone
> Possibly the most requested feature, automatically setting the timezone based on the GPS coordinates was essential. However, most people don't realise how complex this process is, at least within the restrictions I'd given myself: no internet or cellular modem, nothing beyond the GPS data, and a USB port for occasional updates.
> If we had an internet connection, sure, we could just query an online service. But I don't want my clock to require wifi.
> If we had a cellular modem, we could get the time from the cell towers, which is broadcast through a protocol called NITZ. This is how phones auto-update when you enter a different timezone, but it's somewhat unreliable depending on the carrier, and overall worse than using GPS. And I really don't want my clock to have a sim card.
> I'd also like, just for the sake of it, for the clock to work anywhere in the world, even at sea.
> This means we need to keep a copy of the map data for the country outlines for the whole world. It also means we need a full copy of the timezone database, and have the processing power onboard to make use of all this.
I'm not really tracking the MHz signals thing considering there's the 10 MHz oscillator. It would've been interesting to see an EMI/C report. Usually I can see SMPS frequencies as a spur (especially in PFM mode).
For the 32K, at least for the H7 they recommended a ring of ground around it for some shielding. Unsure if that would've helped here. There are also micros that can use their internal RC 32K on vbat. And ones that can do USB without a crystal. The best micro is the one you know, the second best is the one you have. Maybe that's in play here.
The LED driver variability was nifty. My first reaction to large IO with tight timing would be an FPGA, but I don't know if they'd like the variable bank supply. It would probably be fine bit the solution used is interesting and works.
It's a two layer board with no attempts made to keep loop areas small, it's going to be bad. Most of what I read of this seems fine at a glance but that part about EMI sticks out as complete nonsense.
Edit: I have nothing against it being a two layer stackup as part of the art of it, I however don't like that they're also claiming that it's designed to have extremely low radiated emissions while doing so.
That is not correct, with a charitable reading of the text. Which is not to say it’ll have good EMI characteristics - you never really know until you get it tested.
> Artificially confining ourselves to two layers is exactly the kind of challenge I am wont to be engulfed by. The trick, if you want the board to work well, is to work on only one layer, and keep almost the entirety of the other layer as ground. It is almost always possible to do this, if you're willing to put in enough thought. I rather find that designing circuit boards is a lot like Tetris, and once I'm in the swing of it I can route things for hours on end. It can become a multi-day trance, with dreams of signal integrity and current loop area.
Though on this subject:
> In contrast, said this one PCB designer, a thin track has a higher inductance, so if you make your power supply lines thin, you'll get a free bit of extra filtering.
Inductance in your power supply lines is bad, but I don’t have time to get into it right now.
> you never really know until you get it tested.
I suspect they haven't given the lack of a CE marking on the board.
As an aside that bothers me a bit given that they say they sold 1000 of the last version, which would easily cover the cost of the (legally required) testing. Normally I'm of the opinion that it's fine to ignore it for some obscure hobby product where the cost of testing would be higher than any expected profits, but in this case they have the money from previous versions of the same product.
[0]: https://mitxela.com/img/uploads/clock/mk4/kicad-screenshot2....
Not always. You want to have appropriate nearby bypass capacitance, but it's common to filter power lines by deliberately adding inductance into them (this also requires care to avoid setting up resonances, but a thin trace will also add some resistance which helps with that). Either way it's not likely to make a detectable difference on this kind of PCB anyway.
The highest energy part of the device is going to be the LEDs, which are switching well below the bottom of the standard EMI compliance range (10Mhz).
Just out of curiosity, what can you do with a cellular modem but no sim card? Can you get the time?
My first thought was something like a nuclear operator - "we need to shut down the core at exactly 19:00, but our clocks are down!" so they call and wait for the operator to advise when the time is reached. Obviously contrived and not realistic, but interesting to think about.
Maybe, if all of your clocks don't work and you went to somewhere else and their clock isn't working either, and it is raining and you cannot use a sundial, and you tried to call everyone else already and they also cannot give you the time for whatever reason, then you might try to call 911 and ask them, because you tried everything else and it didn't work. (I once heard a (fictional) story where this happened. This is an unlikely scenario, but some of the things mentioned here (and other things) might happen, e.g. bad weather so you cannot go out, the television and computers are not working (and maybe the power is out but the telephone uses a separate power), and there are some problems with the telephone too (I have had problems before where some telephone numbers worked and some didn't), etc.)
But until a few decades ago, the primary way most of us to set our clocks was to call a number the phone company provided, which in our case was TI4-1212. "At the tone, the time will be ..."
Many, many years ago, I have designed a piece of equipment that was integrated in a phone exchange and it provided vocal messages to be sent to a caller, for errors like non-existent phone number, but also for replying to the dedicated number for the time service. The messages were something like "The time at the next beep will be ... hours ... minutes ... seconds".
I have not heard about a similar service for mobile phones, because here the phone gets the time automatically and it displays it.
That and the fact it's the highest precision clock display I've ever owned!
It is certainly not inexpensive, but it's more of an art piece than a practical instrument, unless your eyes can see in the thousands-of-hertz range!
Can you perhaps refresh my memory? Been trying to find the reference and it's driving me nuts this am. Thanks.
My first thought after reading this statement was to add one Ethernet port to run a NTP server and have PoE capability. Completely overkill for the intended purpose, but I can't help but giggle at the thought of hanging this on a wall in a datacenter and have the clock also provide time-keeping for it.
There's other types of environments where you isolated users like SCIFs or really anything airgapped.
Hell: that would convince me to buy one that for my house.
https://www.cnmoc.usff.navy.mil/Our-Commands/United-States-N...
Should be within tens of ns if you have good reception and decent antenna placement.
The 1PPS output may have that much jitter (due to it being clocked synchronously with the module's system clock) but I believe there is usually a way to query the device for the error between the 1PPS signal and the actual idealised pulse time.
Sylvain Munaut made a project using a high resolution TDC/time of flight converter to discipline another clock against the GPS idealised pusle time. I can't find a link right now unfortunately.
Those chips are also useful for getting better positions from navigation signals. One could imagine using them to help filter out spoofed signals, for example.
[0] https://www.microchip.com/en-us/products/clock-and-timing/co...
(Don't worry, I know they are considered atomic clocks, I have 2 Rb modules.)
(Really nice project)
I think my own minor issue is the use of a micro-USB port instead of USB-C - I wonder why, I don't see it mentioned in the article. Maybe adding a PD controller would have complicated the already complex dance of components on the board. Standard USB can supply 5V at 1A (5.0W) no problem, so maybe that was just a simpler way to go.
You don’t need a PD controller. You need two resistors of a set value to be able to have USB-C supply 5V at up to 3A. No ICs needed on the input side.
However, the 0.65/0.40 pads required for USB-C are no longer an issue for any of the board houses I have used in the past couple of years.
I wonder if there’s some electronics hackers you can do to increase the response time on the last three elements.
If I'm not mistaken, this is why HN was made.
Though their neighbors will kill them. Their prototypes are so goddamned loud.
All of this for a clock! I don’t get it, but I’m in awe.
A hyper technical, perfectly executed, fun/whimsical/smart product. You can share all the source code and have build instructions! And sell assembled versions and make a buck! And hopefully make money / thrive/survive doing what… you love?
((The reality, ofc, is that in the hardware biz, getting more orders can just mean a ton of additional problems re logistics of making, assembling and shipping the thing. But I still naively think that’s a good problem..?))
Extraordinary Clock, truly. Cheers, congrats on launching and wishing you all the sales!
There is another project out there using a BeagleBone Black plus a small hardware RTC and a GPS module hooked up over GPIO/serial. The advantage there is that the BBB supports hardware PTP timestamping on its built-in NIC. I threw one together over a weekend, just need to design up a small box to hold it all in (though the cable mess of jumpers also made me want to design an interposer board to clean things up)
But it can come and go, especially as there are other sources of interference in the 1-1.5 GHz range indoors, and reflections off various surfaces and objects make the signal way harder to distinguish.
But for by far the best chance of success, you should have the antenna outside, ideally with a clear view of most of the sky.
If inside, you could put it near a window or exterior wall, but a lot of modern construction materials can block things pretty badly.
During past year running i don't believe its lost 3d fix once (not in the can)
Wish the 2 ports were on the rear.
Are there no good reasons why I might want to display time for a timezone other than the one I am currently in?
The only other thing I’d add is NTP support, and perhaps I2C for driving external displays (such as a few other time zones).
Going to this kind of resolution, the only practical use case is with cameras. You record some frames and later want to check the exact timestamp. This is even useful for a single image, not just high speed cameras.
But taking images is not just a single point in time. There is an exposure time and it is hard to measure absolute timings on start and end of exposure. With a segment clock display, the numbers will blur. For this a row of LEDs is fine - just light up one at a time. In the image you will see multiple leds on at once, giving you verification of start and stop.
But again, I needed just one clock and built it already.
addaon•1d ago