IMO the take away from command-line interfaces is compact, precise and minimal design. In a transitional shell prompt like #~$, each character has its meaning. Merely copying these symbols to a watch face is the exact opposite spirit of command like interfaces.
Cool project, but I also noticed the weird choice of #:~$ as a prompt, it uses almost half the width of the clock screen. And isn't # normally used to denote root shells? I don't think I ever saw it together with $.
My favorite prompt is >: as a callback to the Swan computer in the TV show Lost (not sure if it's also used in early Apple computers).
A prompt including > can be dangerous since that character also does shell output redirection. A sloppy copy/paste could, in theory, overwrite an important file.
The usually trick here is to use a unicode character like ⟫ (U+27EB) instead, which looks basically the same, but isn't interpreted as a redirection by the shell
Using computers since 1986, not sure where I can find such precise and minimal design, when it is impossible to use them without a manual, there is no discovery, and most commands have an endless list of options.
The manual is there usually: type `man`, or `help`, or run the command with `--help`.
Most GUIs also have "endless" pages of options. Grouping them helps quite a bit.
Having many options is usually considered the trait of the rich and powerful. Studying them for the tools you use often may actually save time, compared to googling around the bush every time.
Great hardware design, awful watchface design. The pseudo terminal interface looks like something I'd design right after discovering Linux at 13yo and making it my whole identify for a while.
I think sometimes if there's a project that's getting highly voted up but the initial few comments are negative, the thread can stay that way.
I agree with what you said though, when I was 13(-ish) I had an XKCD store t-shirt with a bunch of Linux commands upside-down so you could reference them [1]. I loved the idea but didn't love the shirt (not a fan of black t-shirts), so I didn't wear it much. I would've definitely wore this watch though, I'd even wear it today except I recently got a chunky watch that fits my proportions better than the retro-Casio-style.
I can appreciate the design principle while simultaneously thinking “Oh my $deity, that looks ugly as sin”
Watches are an aesthetic accessory as much as functional devices, and beauty is in the eye of the beholder. It’s ok for different people to have different views on it.
Casio watches never looked as cheap as this watch does. Going with light grey plastic was a mistake, makes it look like a cheap prop of a metallic object.
> Casio watches never looked as cheap as this watch does.
Casio's a dedicated watch company. Even in their earliest iterations, they were less limited. From the site [1], this appears to be one person's project.
> Going with light grey plastic was a mistake, makes it look like a cheap prop of a metallic object.
I wonder if it's less the colour than the sheen of that specific type of plastic. Casio has some great looking fake-metal. In the end, cheap plastic will probably end up looking like what it is.
You could probably find more convincing metal spray pain in your nearest hardware supply store. But you also don't need to choose a metal look if you can't pull it off. Even when going for a retro computer look, those didn't usually have exposed metal on the outside anyway.
It looks fine. The readout is digital and static, you know exactly where to read what you need. I doubt passersby are able to read what the screen says anyhow.
Accutrons and tuning fork watches are amazing. They have an incredibly unique sound/hum due to the tuning fork oscillating at 360 hz and the most smooth glide you'll ever see in a watch. Recommend a ESA 9162 or ESA 9164 over a pure Accutron for beginners though, a bit more resilient and far more affordable, though they don't have the exposed dial.
I believe this is why all modern digital watches use a 32768.0Hz crystal resonator, it's a power-of-2 frequency above the 20Khz top end of the range of human audio perception, to avoid the whole 'tinnitus on your wrist' thing.
I have an Accutron 214 and I swear it sounds higher pitched than 360Hz (sounds to my ear higher than A440, which I'm very familiar with). Maybe I'm hearing an overtone?
Interesting idea, but the generic green PCB is a bit of a missed opportunity. Some manufacturers now offer transparent solder masks which emphasize the copper traces and can look really cool with a clean PCB layout.
This sounds sick, I looked for a photo and couldn't find one that seemed to be this specifically, just lots of the flexible ones, do you know if there's a photo ref somewhere?
If the idea is this: "Many quartz watches do their best to hide away any electronic components from view. The design concept for this watch was to embrace those digital components instead [...]" then I'd argue this watch that I built fulfils the requirement better: https://blog.jgc.org/2022/12/the-rogers-watch-retro-display-...
I disagree with Wikipedia's definition covering any design where the guts are visible from either side, in my experience "skeleton" always refers specifically to the dial being hollowed out or transparent. When the dial is opaque but the rear is transparent it's usually called an "exhibition caseback" instead.
Agreed, and also most skeleton watches have the actual movement routed out to remove much of the material from bridges and plates, to expose as much gearing as possible.
Very impressive. I love this kind of project (by me or anyone else) — learning whole new areas of tooling that you're unfamiliar with, following a passion to make something that you can hold in your hand. Kudos.
I’ve been wanting a larger watch than most companies make. I’d like a traditional digital watch. Since I can’t find what I want, I’ve been thinking about building my own. I want to go to about 60mm for the case (across my wrist).
I purchased a Casio G-Shock GA-010 last week but its size is smaller than I anticipated. It’s 52mm.
I’ve also been drafting a document about how I’m using a digital watch to increase my productivity while limiting distractions.
There's also the DIGIduino, an atmega128p design with segmented display. I like the variety of attempts and showing off the circuitboard like the complex movements of mechanical watches.
I do want to dig into how much a battery can be obviated here, there's one watch called the Pulse-o-matic that uses an automatic movement (that is, self-winding) to power an LCD display and associate 'tronics. I am charmed by the idea of wind up electronics now that we have microchips with deep sleep modes and ePaper displays that only need a blip to update.
I'm not a watch enthusiast, but i do like the what i'll call old school look and appeal of Casio watches. If Casio hasn't already done so, it feels like they have chances to tap into both nostalgia audiences plus geeks audiences...and this watch - if they were to acquire it - would be awesome! Casio has its decades of manufacturing, distribution and marketing experience, and they get these novel, innovative ideas from others...and if they keep tapping into these geek topics, they could really be that niche maker for geeks - like what Apple products historically have been for creative types...sort of a default purchase for such an audience. (Again, i don't follow this stuff, so its possible they already do this.)
The most hardcore timepieces I ever had to use were the $50K+ clocks used in TV production galleries back in the olden days. These sent a time signal around the facility and there was usually a backup clock in a different part of the building, with both clocks talking to each other from the comfort of their respective 1U enclosures in 19" racks.
What I particularly liked was that these clocks did not actually tell you the time unless you hooked them up to your notebook's RS232 port and telneted in. We don't even have serial ports now, particularly on laptops, but I had to telnet into them to update them when the clocks changed to/from GMT/BST.
Up the road from these expensive clocks was a college that had a horology course. People on it would spend their three years making these absurd timepieces that were all about the mechanism and it was almost a point of pride for the students to have just an hour hand rather than something actually useful.
I feel that this watch concept needs a few more iterations to make it stylishly useless. For example, if the strap was like one of those ribbon cables we used to use to connect disk drives to the motherboard in early PCs, with an adaptor so the ribbon cable is either a watch strap, plugged into the watch, or a connector to a break out box that connects to a PC via USB, with this being the sole means of adjusting the watch or setting what mode it is in.
Regarding the screen and the terminal styling, this doesn't quite work for me as 'time' is what I type into the terminal to time something and 'date' is what I type in to get the date. I therefore see the terminal styling as a bit over the top. What I would like to see is an OG font from the 8 bit days, with blinking cursor, in old school LCD, think of the one character high screens that the last of the typewriters had.
Regarding changing the mode, some dip switches could come in handy. I think that there is fun to be had and that everyone would want to critique whatever gets made, as, ultimately, a CASIO is far better for the task in hand, plus you can also get calculator watches by them that get 90% of the aesthetic for a bargain price. But that is not the point though, much like the horology students, it is all about creating a timepiece and the challenges that involves, notably keeping the time accurate.
A for effort, and A for posting your work for armchair experts like me to critique!
I loved it all, software and hardware, thanks for sharing it!
> I had never done any PCB design before and downloaded KiCAD with no idea how it worked.
I saw similar lines among many people who designed great things, take a note, companies, just because an engineer doesn’t have 10y of experience in XYZ doesn’t mean they won’t do great in the job.
The RTC doesn't seem much better than a 32k Crystal that the stm could use internally. Which is odd because there are better RTCs around. Maybe it's just for having the window to the crystal. And that's fair. Artistic choice
I don't really get a sense from the repo and the very sparse readme how and at what cost I could build one of these. There isn't a pricing page so I'm assuming this is diy, build it yourself, right?
It’s hard to achieve a good screen/case ratio in DIY projects. The screen components are bulky and it’s difficult to fit everything in small enclosures without producing custom boards, mass produced hardware has a ton of advantages there.
It would be cool if someone made a mass produced "watch" that's all the hardware but none of the firmware. So a tiny computer on your wrist that doesn't do anything out of the box, and you can make it do whatever you want. Maybe a watch, maybe something else. It just provides the housing, microcontroller, battery, screen, etc., and an SDK.
Sensor Watch. Open source replacement movement PCB for the Casio F‑91W and other similar watches. Open source firmware. ARM Cortex M0+ microcontroller that you can develop for using standard GNU toolchains. Battery lasts years. Temperature sensor makes it a temperature compensated quartz watch. They're even making custom LCDs now.
Wear mine every day. Contributed some improvements to the pulsometer and TOTP faces. Was even maintainer for a while. Really nice community. If you want something awesome to hack on, this is it.
Maybe they laser-trim the embedded crystal in situ after the chip has been fully packaged? It might be more difficult to keep it in spec if they trim it earlier and then pass it through more manufacturing steps afterwards.
Seems unlikely it would fall out of spec by that much just during manufacturing. These things drift due to temperature (or even vibrations) anyway, and when it comes to using them in an RTC you have drift adjustment registers for any major drift from the factory.
It was unclear for me at least. First I thought it's about a live folder/directory trick, then I thought a video streaming service. I didn't guess clock.
On that point, I see an awful lot of code that uses dotslash as if it was necessary for files in the current directory.
You only need to prepend dotslash to a filename in order of disambiguate invocations of executables in the the current directory (and not a subdirectory).
This is because bare commands will be looked up in $PATH, rather than among executable files in $PWD.
It strikes me as weird copycat (without understanding) programming to just have it wherever you're referring to a local file. In fact I prefer to invoke `bash foo.sh` rather than `mv foo.sh foo; chmod +x foo.sh; ./foo.sh`. (This assumes that I don't need to rely on something special in the shebang line.) This also lets you use tab-completion as normal, as well as adding flags for bash like -x.
(I know you could use it for clarity when an argument could look like a string or a file, but I don't think that's usuaully the purpose.)
One issue is when the path is not interpreted by the shell but by a program which plays by different rules.
For example in Go:
$ cd /path/to/go/repo
$ go run cmd/myapp
package cmd/myapp is not in std (/usr/local/go/src/cmd/myapp)
$ go run ./cmd/myapp
Hello, World!
And then people don't want to think about when your path is for the shell and when it's a CLI param and how the CLI treats it, and just use the version that always works.
This allows it to disambiguate between system path syntax and the language's syntax for symbolic names.
Similarly, package installers can use this to disambiguate between "install the local file with this exact name" and "look up a file on the index for the named package".
I'm pretty sure most people use it to make clear it's a relative path.
It takes mental load off the one reading the code.
That's why I pretty much always use it, not only when executing things.
Let's say you have 100 programs in your PATH that start with the letter "g", but only one program in the current folder that starts with "g". You type `./g[TAB]` so it autocompletes automatically to the local program instead of cycling through dozens of results you know you don't want.
I use it for autocomplete... e.g ./f<tab> and enter. If I don't do it the terminal literally hangs for a split second and gives me a lot useless suggestions. I rarely type full words.
It's handy when the directory might not exist, happens all the time in git checkouts. Raise your hand if you've ever moved something to tmp and created a file called tmp.
Usually it's tab-complete adding the slash though, I don't go typing it in.
> taking inspiration from command-line interfaces
IMO the take away from command-line interfaces is compact, precise and minimal design. In a transitional shell prompt like #~$, each character has its meaning. Merely copying these symbols to a watch face is the exact opposite spirit of command like interfaces.
Cool project, but I also noticed the weird choice of #:~$ as a prompt, it uses almost half the width of the clock screen. And isn't # normally used to denote root shells? I don't think I ever saw it together with $.
My favorite prompt is >: as a callback to the Swan computer in the TV show Lost (not sure if it's also used in early Apple computers).
A prompt including > can be dangerous since that character also does shell output redirection. A sloppy copy/paste could, in theory, overwrite an important file.
The usually trick here is to use a unicode character like ⟫ (U+27EB) instead, which looks basically the same, but isn't interpreted as a redirection by the shell
Good news it's an open source project so you can customise your prompt (:
Brought to you by the "it's configurable, so we don't need sane defaults" crowd.
It's a watch, not a new shell implementation. It looks enough like a shell imo.
If I remember right, > was the prompt for Integer basic, ] for Applesoft Basic and * for the monitor.
Yup.
3D0G to start basic from the Monitor
On the other hand: It‘s art. It‘s ok for art to get inspired from the command line, yet put aesthetics over replication.
Using computers since 1986, not sure where I can find such precise and minimal design, when it is impossible to use them without a manual, there is no discovery, and most commands have an endless list of options.
The manual is there usually: type `man`, or `help`, or run the command with `--help`.
Most GUIs also have "endless" pages of options. Grouping them helps quite a bit.
Having many options is usually considered the trait of the rich and powerful. Studying them for the tools you use often may actually save time, compared to googling around the bush every time.
Only on specific operating systems, not on a CLI as user interface concept across all operating systems.
GUIs have discovery by definition, users have visual references where to click and possibly see some side effect taking place.
Apparently the UNIX way that gets thrown around the Internet doesn't agree with such endless options.
Perhaps one could configure it or fork and modify https://github.com/zsteig/.watch
`date +whatever` right arg for the output would also make more sense than `./t` if there's room
Great hardware design, awful watchface design. The pseudo terminal interface looks like something I'd design right after discovering Linux at 13yo and making it my whole identify for a while.
> discovering Linux at 13yo and making it my whole identify for a while.
I did that, and got a banging career out of it. Would recommend!
God, HN has become a bunch of sourpusses.
I think sometimes if there's a project that's getting highly voted up but the initial few comments are negative, the thread can stay that way.
I agree with what you said though, when I was 13(-ish) I had an XKCD store t-shirt with a bunch of Linux commands upside-down so you could reference them [1]. I loved the idea but didn't love the shirt (not a fan of black t-shirts), so I didn't wear it much. I would've definitely wore this watch though, I'd even wear it today except I recently got a chunky watch that fits my proportions better than the retro-Casio-style.
https://web.archive.org/web/20220125185031/https://store.xkc...
> looks like something I'd design right after discovering Linux at 13yo and making it my whole identify for a while.
Was this sentence designed to make you look more mature and developed than this imagined 13 year old? It fails to do so.
I couldn't disagree more. I laughed out loud at it!
I don't understand everyone's harsh reactions. I too would've loved it at 13 during the same phase, so what?
The retro(-style) Casio community lives for retro-future kitsch. I guess it's a matter of taste.
I can appreciate the design principle while simultaneously thinking “Oh my $deity, that looks ugly as sin”
Watches are an aesthetic accessory as much as functional devices, and beauty is in the eye of the beholder. It’s ok for different people to have different views on it.
Casio watches never looked as cheap as this watch does. Going with light grey plastic was a mistake, makes it look like a cheap prop of a metallic object.
> Casio watches never looked as cheap as this watch does.
Casio's a dedicated watch company. Even in their earliest iterations, they were less limited. From the site [1], this appears to be one person's project.
> Going with light grey plastic was a mistake, makes it look like a cheap prop of a metallic object.
I wonder if it's less the colour than the sheen of that specific type of plastic. Casio has some great looking fake-metal. In the end, cheap plastic will probably end up looking like what it is.
1. https://dotslashwatch.com/hardware/
You could probably find more convincing metal spray pain in your nearest hardware supply store. But you also don't need to choose a metal look if you can't pull it off. Even when going for a retro computer look, those didn't usually have exposed metal on the outside anyway.
It looks fine. The readout is digital and static, you know exactly where to read what you need. I doubt passersby are able to read what the screen says anyhow.
> Great hardware design,
Really? It looks like it would be uncomfortable to wear with those screws on the back sitting proud of the surface. Why aren't they countersunk?
Or were you referring only to the electronics?
Hilariously accurate and appropriate username presumably also from when you were 13
If you like quartz watches that expose their circuitry, you'll definitely enjoy some of Accutron's watches: https://www.hodinkee.com/articles/introducing-accutron-314
While usually not on display, the quartz movements of Grand Seikos are beautifully finished:
* https://i.imgur.com/sJXfmg1.jpeg
* https://i.imgur.com/BucSW15.jpeg
* https://i.imgur.com/xVd04BM.jpeg
* https://i.imgur.com/wuRSif1.jpeg
Accutrons and tuning fork watches are amazing. They have an incredibly unique sound/hum due to the tuning fork oscillating at 360 hz and the most smooth glide you'll ever see in a watch. Recommend a ESA 9162 or ESA 9164 over a pure Accutron for beginners though, a bit more resilient and far more affordable, though they don't have the exposed dial.
I believe this is why all modern digital watches use a 32768.0Hz crystal resonator, it's a power-of-2 frequency above the 20Khz top end of the range of human audio perception, to avoid the whole 'tinnitus on your wrist' thing.
Also a tuning fork cut for a lower power-of-two would be a bit bulky for a compact wrist watch.
I have an Accutron 214 and I swear it sounds higher pitched than 360Hz (sounds to my ear higher than A440, which I'm very familiar with). Maybe I'm hearing an overtone?
you could measure it.
using an app with a Fast Fourier Transform (e.g. https://github.com/woheller69/audio-analyzer-for-android ), you can visually compare the sounds of your watches
I know it is at 360Hz, since it keeps time well.
what do you want?
imgur makes me sad these days :( https://help.imgur.com/hc/en-us/articles/41592665292443-Imgu...
Interesting idea, but the generic green PCB is a bit of a missed opportunity. Some manufacturers now offer transparent solder masks which emphasize the copper traces and can look really cool with a clean PCB layout.
e.g. https://hackaday.io/project/194683-plasma-toroid-sky-guided-...
It's also becoming possible to have transparent rigid PCBs as of quite recently: https://www.pcbway.com/blog/News/Transparent_Rigid_PCBs_Laun...
Naturally it does mean you can't have a ground pour, so the PCB needs to be designed to look nice with it.
This sounds sick, I looked for a photo and couldn't find one that seemed to be this specifically, just lots of the flexible ones, do you know if there's a photo ref somewhere?
This is gorgeous! I knew you could get different colo(u)red PCBs but had no idea about transparent solder masks.
Even more reason to "Melt your circuit boards"
video: https://youtu.be/euJgtLcWWyo
blog: https://mitxela.com/projects/melting_kicad
Worth noting that it's nine times the price (according to the link you posted)
Pcbs are super cheap, 9x $2 is still cheap
If the idea is this: "Many quartz watches do their best to hide away any electronic components from view. The design concept for this watch was to embrace those digital components instead [...]" then I'd argue this watch that I built fulfils the requirement better: https://blog.jgc.org/2022/12/the-rogers-watch-retro-display-...
I learned the term for such mechanical watches is https://en.wikipedia.org/wiki/Skeleton_watch
I disagree with Wikipedia's definition covering any design where the guts are visible from either side, in my experience "skeleton" always refers specifically to the dial being hollowed out or transparent. When the dial is opaque but the rear is transparent it's usually called an "exhibition caseback" instead.
Agreed, and also most skeleton watches have the actual movement routed out to remove much of the material from bridges and plates, to expose as much gearing as possible.
Very impressive. I love this kind of project (by me or anyone else) — learning whole new areas of tooling that you're unfamiliar with, following a passion to make something that you can hold in your hand. Kudos.
Yeah. Lots of respect for anyone who can make real stuff. Electronics is very challenging.
Amazing work, I have a deep respect for this type of project where the underlying theme is perseverance !
Nice design.
I’ve been wanting a larger watch than most companies make. I’d like a traditional digital watch. Since I can’t find what I want, I’ve been thinking about building my own. I want to go to about 60mm for the case (across my wrist).
I purchased a Casio G-Shock GA-010 last week but its size is smaller than I anticipated. It’s 52mm.
I’ve also been drafting a document about how I’m using a digital watch to increase my productivity while limiting distractions.
There's also the DIGIduino, an atmega128p design with segmented display. I like the variety of attempts and showing off the circuitboard like the complex movements of mechanical watches.
I do want to dig into how much a battery can be obviated here, there's one watch called the Pulse-o-matic that uses an automatic movement (that is, self-winding) to power an LCD display and associate 'tronics. I am charmed by the idea of wind up electronics now that we have microchips with deep sleep modes and ePaper displays that only need a blip to update.
https://theprintablewatch.com/collections/digital-watch-part...
https://www.hamiltonwatch.com/en-us/h52585339-pulsomatic.htm...
Very cute. If Casio bought you guys out and combined their retro design aesthetic, this would sell like hot cakes IMO.
I'm not a watch enthusiast, but i do like the what i'll call old school look and appeal of Casio watches. If Casio hasn't already done so, it feels like they have chances to tap into both nostalgia audiences plus geeks audiences...and this watch - if they were to acquire it - would be awesome! Casio has its decades of manufacturing, distribution and marketing experience, and they get these novel, innovative ideas from others...and if they keep tapping into these geek topics, they could really be that niche maker for geeks - like what Apple products historically have been for creative types...sort of a default purchase for such an audience. (Again, i don't follow this stuff, so its possible they already do this.)
Display HS096T01H13 almost fits inside F91-W (1mm too wide) but have much smaller bezel.
Reminds me of my pebble watchface created 12 years ago: https://youtube.com/shorts/Zv4h8Uyyg1Q
The most hardcore timepieces I ever had to use were the $50K+ clocks used in TV production galleries back in the olden days. These sent a time signal around the facility and there was usually a backup clock in a different part of the building, with both clocks talking to each other from the comfort of their respective 1U enclosures in 19" racks.
What I particularly liked was that these clocks did not actually tell you the time unless you hooked them up to your notebook's RS232 port and telneted in. We don't even have serial ports now, particularly on laptops, but I had to telnet into them to update them when the clocks changed to/from GMT/BST.
Up the road from these expensive clocks was a college that had a horology course. People on it would spend their three years making these absurd timepieces that were all about the mechanism and it was almost a point of pride for the students to have just an hour hand rather than something actually useful.
I feel that this watch concept needs a few more iterations to make it stylishly useless. For example, if the strap was like one of those ribbon cables we used to use to connect disk drives to the motherboard in early PCs, with an adaptor so the ribbon cable is either a watch strap, plugged into the watch, or a connector to a break out box that connects to a PC via USB, with this being the sole means of adjusting the watch or setting what mode it is in.
Regarding the screen and the terminal styling, this doesn't quite work for me as 'time' is what I type into the terminal to time something and 'date' is what I type in to get the date. I therefore see the terminal styling as a bit over the top. What I would like to see is an OG font from the 8 bit days, with blinking cursor, in old school LCD, think of the one character high screens that the last of the typewriters had.
Regarding changing the mode, some dip switches could come in handy. I think that there is fun to be had and that everyone would want to critique whatever gets made, as, ultimately, a CASIO is far better for the task in hand, plus you can also get calculator watches by them that get 90% of the aesthetic for a bargain price. But that is not the point though, much like the horology students, it is all about creating a timepiece and the challenges that involves, notably keeping the time accurate.
A for effort, and A for posting your work for armchair experts like me to critique!
.\t
seems useful on it. can you run
watch -n '.\t'
on it? /jk as that would make it a dedicated watch watch
Maybe it updates every minute via a Cron job!
I loved it all, software and hardware, thanks for sharing it!
> I had never done any PCB design before and downloaded KiCAD with no idea how it worked.
I saw similar lines among many people who designed great things, take a note, companies, just because an engineer doesn’t have 10y of experience in XYZ doesn’t mean they won’t do great in the job.
Yeah, right, the website is not accessible without JavaScript.
Someone needs to make Termux for Wear OS.
Edit: huh, someone has apparently done it! https://www.reddit.com/r/termux/comments/nl0rex/termux_on_we...
PineTime has a similar watchface,https://blog.krafting.net/wp-content/uploads/2023/09/2023071...
The RTC doesn't seem much better than a 32k Crystal that the stm could use internally. Which is odd because there are better RTCs around. Maybe it's just for having the window to the crystal. And that's fair. Artistic choice
I don't really get a sense from the repo and the very sparse readme how and at what cost I could build one of these. There isn't a pricing page so I'm assuming this is diy, build it yourself, right?
Interesting concept. Bigger screen less casing would be nice, but very good concept
It’s hard to achieve a good screen/case ratio in DIY projects. The screen components are bulky and it’s difficult to fit everything in small enclosures without producing custom boards, mass produced hardware has a ton of advantages there.
It would be cool if someone made a mass produced "watch" that's all the hardware but none of the firmware. So a tiny computer on your wrist that doesn't do anything out of the box, and you can make it do whatever you want. Maybe a watch, maybe something else. It just provides the housing, microcontroller, battery, screen, etc., and an SDK.
You can buy these from AliExpress:
https://nl.aliexpress.com/item/1005009235529767.html
https://nl.aliexpress.com/item/1005006734845748.html
Sensor Watch. Open source replacement movement PCB for the Casio F‑91W and other similar watches. Open source firmware. ARM Cortex M0+ microcontroller that you can develop for using standard GNU toolchains. Battery lasts years. Temperature sensor makes it a temperature compensated quartz watch. They're even making custom LCDs now.
https://www.sensorwatch.net/
Wear mine every day. Contributed some improvements to the pulsometer and TOTP faces. Was even maintainer for a while. Really nice community. If you want something awesome to hack on, this is it.
I believe that's the concept behind the PineTime.
https://pine64.org/devices/pinetime/
Ohh interesting! And pretty cheap too! Shipping to Canada is more expensive than the actual watch, but maybe still worth it...
Great project for this young man. Really great start to your career. Keep it up.
Under the Software section, when he clicks the side button [0], watching the live stream of text as it is generated appears like ChatGPT :)
__________________
0. https://dotslashwatch.com/images/Run_Example.webp
> appears like ChatGPT
wow, we're really lost the plot haven't we :(
Love how clever the logo is! I wonder why the RTC has the resonator exposed? I cannot find anything on the datasheet that explains its purpose
Maybe they laser-trim the embedded crystal in situ after the chip has been fully packaged? It might be more difficult to keep it in spec if they trim it earlier and then pass it through more manufacturing steps afterwards.
Seems unlikely it would fall out of spec by that much just during manufacturing. These things drift due to temperature (or even vibrations) anyway, and when it comes to using them in an RTC you have drift adjustment registers for any major drift from the factory.
> The RV-2123 is an RTC with a glass top that allows you to see the quartz crystal itself inside the component.
Very cool
What’s the emulator he used when designing the firmware?
The electronics section is a nice read but the software/firmware section is very barebones.
> #:~$
why
Looks awesome! What is the battery life? How much of the power is used by the screen?
Very cool. Keep on keepin on.
the only thing i really dont like is that you have to touch it to get the time.
imho a watch is useless if you cant just look at it and see the time.
Swatch make some delightful and affordable skeleton watches
That's dotslash, not slashdot.
Super awesome and fun project! I'm jealous
Why isn't the silicon die visible? :)
Because light would affect its function.
It's an interesting design-constraint though.
We need Ken Shirriff to build one
What is the battery life?
Yeah the watch command is pretty sweet. sudo watch sensors
[dead]
[dead]
[dead]
Change title to "STM32-based OLED digital watch"?
What's wrong with the current title? It's a title, not a summary.
It was unclear for me at least. First I thought it's about a live folder/directory trick, then I thought a video streaming service. I didn't guess clock.
On that point, I see an awful lot of code that uses dotslash as if it was necessary for files in the current directory.
You only need to prepend dotslash to a filename in order of disambiguate invocations of executables in the the current directory (and not a subdirectory).
This is because bare commands will be looked up in $PATH, rather than among executable files in $PWD.
It strikes me as weird copycat (without understanding) programming to just have it wherever you're referring to a local file. In fact I prefer to invoke `bash foo.sh` rather than `mv foo.sh foo; chmod +x foo.sh; ./foo.sh`. (This assumes that I don't need to rely on something special in the shebang line.) This also lets you use tab-completion as normal, as well as adding flags for bash like -x.
(I know you could use it for clarity when an argument could look like a string or a file, but I don't think that's usuaully the purpose.)
One issue is when the path is not interpreted by the shell but by a program which plays by different rules.
For example in Go:
And then people don't want to think about when your path is for the shell and when it's a CLI param and how the CLI treats it, and just use the version that always works.Thanks, this is the first good reason I've seen! Seems crazy to me that the go tool does that, but maybe I just lack sufficient unix-nature.
This allows it to disambiguate between system path syntax and the language's syntax for symbolic names.
Similarly, package installers can use this to disambiguate between "install the local file with this exact name" and "look up a file on the index for the named package".
This is one of the papercuts of go that I find way more annoying than is rational.
That’s because cmd/myapp is not a local path, it’s a universal path. It makes more sense when you type go run github.com/user/name/cmd/myapp
> cmd/myapp is not a local path, it’s a universal path
In `go run` the CLI interprets it as universal path, to be precise. That's exactly the point.
> go run github.com/user/name/cmd/myapp
That's not an alternative when you're working on the app's code locally. You have to use `./cmd/myapp`.
And when you do that multiple times per day/week, after a while you just start always using `./` prefix for local paths.
Would it be preferable to use a URI for go run?
For example
- go run go://cmd/foo
- go run file:///cmd/foo
For executables, it is actually necessary to prepend ./ iff . is not in $PATH. And . is usually not in $PATH for security reasons.
I'm pretty sure most people use it to make clear it's a relative path. It takes mental load off the one reading the code. That's why I pretty much always use it, not only when executing things.
./<tab> completes nicely. Ambiguity is removed. There’s no chance of accidentally running the wrong executable.
So I think you and I differ on this one, but none of this is a hill I care to die on.
It makes tab completion work.
At the start of a line? So you want to run a script or executable in the current directory. PATH doesn’t contain . and ./ is necessary.
As an argument in a line? My shell offers completion from the current directory without ./ just fine.
Let's say you have 100 programs in your PATH that start with the letter "g", but only one program in the current folder that starts with "g". You type `./g[TAB]` so it autocompletes automatically to the local program instead of cycling through dozens of results you know you don't want.
I use it for autocomplete... e.g ./f<tab> and enter. If I don't do it the terminal literally hangs for a split second and gives me a lot useless suggestions. I rarely type full words.
Similarly, many people needlessly append a slash to every directory name.
Makes it clear you're naming a directory and not a file.
I also alias 'ls' to 'ls -F' so that directories have a / appended, makes it easier to understand the output.
For me it's because of rsync.
It's handy when the directory might not exist, happens all the time in git checkouts. Raise your hand if you've ever moved something to tmp and created a file called tmp.
Usually it's tab-complete adding the slash though, I don't go typing it in.