4 ms·
I got one of these for my birthday in 2003, and I'm still using it. The Data Link USB "only" has a battery life of about a year. The 3-year life Data Link would
by TapamN 3y ago
I got one of these for my birthday in 2003, and I'm still using it. The Data Link USB "only" has a battery life of about a year. The 3-year life Data Link would be the older model, that optically received data from a PC by watching light pulses from a CRT.
I don't know why he's complaining about the Windows 98/XP PIM software. It worked fine, and it's open source <https://sourceforge.net/p/datalinkusb/code/HEAD/tree/USBPIM/ https://sourceforge.net/p/datalinkusb/code/HEAD/tree/USBPIM/>. It does not work on Windows 10 and later, however. I looked into it years ago, and it seemed related to the GUI code (I think it used MFC?) and not anything involving watch access. Probably fairly easy for someone familiar with Windows dev to fix, especially with the source. Edit: Wait, I misread. He was complaining about the SDK wizard, not the PIM. Yeah, the wizard wasn't great. Also, it was slow since every file assembled had several megabytes of headers included.
Having C code running on the watch is nuts. The builtin ROM software was written in a high-level assembler (probably for size/CPU/power consumption reasons), and the user SDK was a regular assembler (I got the impression that back then Epson wasn't giving away the better development software, so the best that could be included for free with the SDK was the regular assembler.) The OS's overlay system and semi-adhoc calling convention isn't C friendly. Often, values were passed in whatever registers were convenient for the callee, with macros to help hide this when possible. EEPROM access functions took parameters from global RAM variables.
The SDK documentation was great. 10/10. You could not reasonably ask for more. It had many examples, every single header file used by Timex, which documented every single function and variable (even ones internal to the builtin software), and PDFs describing every bit of data going in and out of the watch, from the communication protocol to the file formats used by every builtin app. The OS used by the watch is impressively clean and easy to use for a one-off 8-bit system.
Most development for the watch was shared on a Yahoo Group, which is down now, but there are backups somewhere. I manually saved a bunch, and I know that people there backed up the messages and uploaded them to... I don't remember exactly where, I'd have to look it up. I remember running across a post there from the EEVBlog guy when looking through old posts. He was asking about making a fitness tracking app.
It took me a long time to get around to writing anything for it, but I wrote several programs for it around 2013-2015ish. A timer, calender, expense tracker, and a viewer for the user tracking data (stuff like how many times you've pressed a button, entered an app, or had an alarm go off). The SDK had a single DOS program as part of the build process (it was something to feed the linker some addresses), so I had to rewrite a 32-bit version to get the SDK to work on 64-bit Windows 7. I think I later found someone else already did that on the Yahoo Group.
- xattt 3y agoShort of full-blown prototype boards (ESP32 ecosystem) and dev environments (Apple ecosystem), are there any modern day consumer-facing devices running on an obscure platform that also come with a hidden layer of an SDK? I am thinking of the Cybiko, but that’s also contemporary to the Timex watch.
- TapamN 3y agoRuputer/OnHand PC? Another smartwatch from late 90's/early 2000s. The specs were on part with the original Mac, 128KB RAM, with 102x64 pixel display and 2MB of flash, but VERY sluggish OS and poor battery life (but still better than modern smartwatches). Maybe Palm and Psion devices count? I would exclude WinCE...
- noAnswer 3y agoAh yes http://pconhand.com http://pconhand.com I drooled over it as a teen. But the price was to high for me.
- OhMeadhbh 3y agoi could never get used to the psion 5mx keyboard. it was just a little too small. the treo thumb-board wasn't ideal, but it worked well enough. FWIW, PalmOS was HEAVILY influenced by MacOS classic. I mean, at least they changed the variable names in the debug images.
- saagarjha 3y agoNot first-party, but calculators?
- bri3d 3y agoGarmin watches have an SDK with their own entire goofy "Monkey C" language and an entire bytecode VM to run it. It's not "hidden" I guess (there's an app store), but neither was this Timex one. https://www.atredis.com/blog/2020/11/4/garmin-forerunner-235-dion-blazakis https://www.atredis.com/blog/2020/11/4/garmin-forerunner-235...