Acceptable Clones? Perhaps passed through Gordon?

Posted on
Page
of 3
Prev
/ 3
Next
  • I think you also mentioned before that it is not DaFit despite the listing so needs to be taken apart? @enaon just FYI

    Thanks, I am ok with the p8, I still use the one you gave me back then, the first gen was indestructible, amazing front glass quality. But if a 52840 had a nice screen, and the 816 touch controller with auto sleep, I would be happy to use my new UI version, I have it finished since forever, but neither the rock nor the magic3 were truly nice as a watch I think. This one is green and seems a bit huge, so I am not really interested, curiosity mostly :)

  • Not Magic/Rock board, it's totally different, different pins all around. (https://github.com/yngv27/EWatches/tree/­­main/TK87G).

    very nice repo, thank you for the info.

    can you tell if the touch controller is rock like, or magic3 like? Are you reading it using polling or interrupts?Not important, just curiosity.

  • they can simply be drop shipped direct (without any prep) or have a 'flash for me' where it would ship to Gordon (or someone else) to flash, and then on to the end user. This means that Gordon would get a cut at least, and have option for a 'flash for me' to get the user experience nailed. Also, the web store could then have a lot more things to buy. Going to @jeffmer's app loader, I was greeted by exactly what I was talking about, 7 watches to choose from. If the webstore could have those listed too, where it's simply drop shipped, we could support the project.

    Nice fantasy but for many reasons it will not work. Things like warranty, returns, double shipping and mainly the effort needed to get software support for such watches into shape. And by the time you have something the watch is discontinued. Which is one of many things you probably missed. You don't have 7 watches to choose from jeffmer's app loader as you can't buy any of them except Magic 3 (which can be sold out anytime). If you would think more about the problem you would realize that after going into details you end with something that is already here - carefully selected watch with good set of features, good support in Espruino, manufacturer that can deliver more or less the same hardware over time - that's Bangle.js 2.

    Also look at PineTime, they are still milking the first old nrf52832 design while the people behind it are based in China and have good contact with the manufacturers. Pinetime is Moyoung/DaFit watch just like old P8.

  • And by the time you have something the watch is discontinued.

    and before they discontinued them, they were playing with our brains a bit, for the laughs of it. I remember the p22 changed some 5 revisions, different touch type, different acc, there was a time that 3 or 4 of them were out at the same time, one had reversed colors on the lcd, one had the btn1 on a different pin, one did not support the 12bit color mode at all, it was super fun trying to keep up, but a bit crazy in reality. :)

  • nm. @fanoush, good job popping the enthusiasm. Super cool. Ideas are bad.

    No, even bad ideas are good, if one can learn from it. The first step is recognizing that the idea is not good so one can improve it or move along quickly to the next one. Also the opportunity to learn how to accept negative feedback is good. Looks like it did not work well this time.

  • TK78G looks really promising - it's good to see there are still some Nordic-based watches being produced, and the body temperature monitoring looks really interesting.

    @yngv126399 @eanon - thank you, I really appreciate the support (@eanon thanks for the donation - I was pretty sure I sent you an email at the time?). Please feel free to post your progress with the watches on the forums though (and if we can pull changes back into the main Espruino repo without overcomplicating things I'm all for it - the increased MTU for @eanon was great) - increasingly I feel like any publicity is good publicity. It feels like there's a pretty clear case for Bangle.js alongside the others - if you can run the code on a bunch of watches it may work for some people or just be a bit of fun, but for an 'every day' watch in most cases right now Bangle.js wins out.

    there were over one thousand installations of the eucwatch when I stopped the project

    That's super impressive!

    I remember the p22 changed some 5 revisions

    Yes, that may have been Covid - but (and folks don't generally see/notice this luckily) Bangle.js 2 has changed slightly over time too (for instance the HRM and pressure sensors) so even when I'm in contact with the manufacturer and pushing them to keep things the same, they still sometimes have to make changes.

    @andiohn I'm sorry this (and the Gadgetbridge post) seemed to turn into a bit of a negative discussion. Re-reading over the comments I don't feel like @fanoush is being rude or mean, but it can be hard to judge the intended tone of posts.

    The drop shipping is a nice idea, and it is something I have approached companies about several times in the past, but it's been quite hard to convince companies as I don't really have huge sales. I really do want to hear new ideas, but I'm juggling a lot of different things and I don't think I can take on new stuff unless I feel confident in it. Sometimes it does happen though - I think Bangle.js came out of seeing folks on the forum talking about and playing with smart bands.

    On the custom watch front, if you or anyone else fancies taking this on yourselves - sourcing watches or some other device, flashing them with Espruino, selling and donating some of the profit back - then please get in touch. I'm all for it and as long as buyers know what they're getting I can't really see a downside.

  • Yes, that may have been Covid ... so even when I'm in contact with the manufacturer and pushing them to keep things the same, they still sometimes have to make changes.

    Well they do it quite regularly to optimize costs or parts availability. The P8 had several variants of displays, touch, accel, basically everything except nrf52 and SPI flash - the flash pinout was the only stable thing across a lot of DaFit devices. In the end they removed 32kHz crystal from nrf52 version of P8 and then replaced CPU by GR5515 while still keeping the name and form factor exactly the same.

    Those IDOO guys making various ID1xx fitness trackers and ID205 were similar. The ID130 Color
    https://github.com/fanoush/ds-d6/tree/ma­ster/espruino/DFU/ID130Color had at least 5 revisions, I got a pack of like 10-20 them for very cheap from one seller and got 3 revisions mixed in it.
    DaFit has a big device database in JSON via web API and it is normal to have many revisions for watches that are sold for longer time each with different firmware download. And BTW it can be seen from it that they basically stopped using nrf52 platform completely and moved to other (better/cheaper?) stuff.

    sourcing watches or some other device

    that is the hardest part IMO, as for nrf52 they are basically gone, we would need to move to something else or design custom nrf5x watch

  • DaFit has a big device database in JSON via web API

    attached is a bit older example in zip

    $ cat config-31-07-2024.json | jq '.list[] | select(.mcu==5)' | grep '"name":' | wc -l
    28
    

    this was nrf52840 - 28 revisions of watches with it.

    $ cat config-31-07-2024.json | jq '.list[] | select(.mcu==5)' | grep '"name":' | sort | uniq
      "name": "A1",
      "name": "BIP PRO",
      "name": "BYS5",
      "name": "Bebinca-79",
      "name": "Bip",
      "name": "C16",
      "name": "C17",
      "name": "GW27",
      "name": "M1",
      "name": "MOFIT840",
      "name": "MOFIT840_30",
      "name": "MW-W3",
      "name": "Magic 3",
      "name": "P16",
      "name": "QY03",
      "name": "Rock",
      "name": "SC16",
      "name": "SN80 Pro",
      "name": "W16",
      "name": "W79",
      "name": "W79A",
      "name": "W88M",
      "name": "ZADEZ SP2",
    

    Here is just JL7012/JL701N chip by JLI

    cat config-31-07-2024.json | jq '.list[] | select(.mcu==339)' | grep '"name":' | wc -l
    926
    

    EDIT: and sadly no (freely available) SDK for it https://github.com/Jieli-Tech/fw-AC63_BT­_SDK/issues/207


    1 Attachment

  • The drop shipping is a nice idea, and it is something I have approached companies about several times in the past, but it's been quite hard to convince companies as I don't really have huge sales.

    I think it can work well when the product is generic and you basically don't need to care about the details or outsource also the development. But yes that's how it probably works with bigger volumes, e.g. Colmi sells branded watches https://www.colmi.info/collections/p-ser­ies-colmi-smart-watch like e.g. the P81 with JL7012F6 and both the firmware and android app is done by Moyoung and you outsource everything. You can order customized hardware firmware and possibly also customized android app = generic stuff with your images/logos/name or just keep default DaFit app and brand just the box and posibly bluetooth name. And they possibly also offer same watch hardware to other brands too like e.g. Zeblaze - the GTS3 https://zeblaze.info/gts3.html is also DaFit watch with JL7012. And when they change hardware they will change the firmware for you too and you as Colmi/Zeblaze just don't need to care. You just pay for the whole thing including hosting the firmware on their servers. And when you stop paying for older devices they will delete the stuff from servers/app.

    I am not sure how this could work with Espruino as it is now. You would probably not have the hardware/software under control?

  • Yes, I'm not sure how that'd work for me. And Espruino is Open Source so if they did take on some maintenance and it did do well they could just start putting it on watches and selling them themselves!

  • That's right. Co-fit according to the manual. I tried getting a firmware update for reversing, but it's "up to date". I also contacted seller to see if I could get a firmware update sent to me. Nope.
    As it is, it's quite usable. The GPS, temperature and HRS is a matter of time and effort. I could use help ;-)

  • It is a nasty green, but it doesn't have to stay green!

  • And Espruino is Open Source so if they did take on some maintenance and it did do well they could just start putting it on watches and selling them themselves!

    This is also true, it happened in my case, it was one of the reasons I stopped the project.

    I will tell you the short story now that some time has passed, maybe it has some usable info. Sorry for the long post.

    One thousand is an undervaluation to be on the safe side, it may be over 3 thousand, I know of some people that bought 100 p8's and resold them. There was a time that on every sale of an p8/p22 on alliexpress, you could see comments verifying the watch is eucwatch compatible or not. In Australia, Korea, Argentina and the UK it was sold from from legit physical stores that sold electric unicycles , flashed and ready, e-riders from the UK had them for 75 pounds.

    I did not mind at all someone making a profit, my problem was that all this was not my work to offer as I pleased, fanoush atc1441 and you were the core, I was just putting pieces together. I tried talking to some of the resellers, asked hem to at least make a note on the sale site that this is an espruino device, put a link to the espruino site, and declare that the money goes to the store for flashing, not me in any way, but the UK dude was pulling my leg, he even changed the eucwatch name to e-riderswatch or something like that. The store from Australia was very nice, he even came to the atc1441 board to learn, but I had this nighmare that you or fanoush will someday see it on the internet, and I would have to explain that I am not an elephant.

    This was my first time ever with javascript, I am no programmer, I am a engineer, I just wanted a watch to use with my EUC. It was super fun, I learned a lot, Fanoush and atc1441 were amazing the way I see it, they helped me in all the ways one could help someone, and I was happy feeling that they do it because they understand that I am in for the fun of it. When the volume of watches got out of hand I was afraid that it may look like I broke the trust.

    Then came a comment by fanoush on the atc441 board, after I again asked his help on something , he said somethiing like "now you are ready to make a business out of it", something like that, the way Fanoush says things, that you are not sure if he pats your back or waiving his finger, and I thought ok, I am one of the good guys for sure, I will prove it, this is the end. A death in the family also helped a lot :)

    the moral of the story is that you are right, some ideas may worth some of your time. The first time I wrote in this board, it was to ask you to consider supporting EUC's. You did not know what an EUC was, so it was not a surprise you dismissed it, but there is still time. Eucwatch is not a toy watch, it is a tool, it helped a lot of people not get hurt, it is monitoring the system and alerting the rider before face planting.

    there was not and still there is not another solution that is expendable, safety needs a watch that costs less than 50 euros, so that if you fall, you wont try to save your 500euros applewatch and brake yous wrists in the process.

    If you care, I can upload some videos from the community, they fused then into helmets as a head up display, they made wrist-guards with holders for the p8, a lot of ideas, the point is that if someone like you that is a programmer takes some time, I am now sure that a cheap dedicated watch for the EUC can surpass generic banglejs sales.

    ps, right before stoping I was asked to support onewheels too, unofficially I mean, but I was already on the doorway, I am just mentioning it because they are the same market.

  • It is a nasty green, but it doesn't have to stay green!

    super :)

  • he said somethiing like "now you are ready to make a business out of it", something like that, the way Fanoush says things, that you are not sure if he pats your back or waiving his finger

    Don't remember what I said exactly but I was very impressed by the UI of eucwatch, the speed, the design simplicity (it can't be complicated when you are driving unicycle) and it looked great too, professional. And I think that if you earned some money you deserve it and what you do with it is your choice. Checked the FAQ https://www.espruino.com/FAQ#can-i-sell-­boards-containing-the-espruino-software-­ and it does not say you cannot do it. If someone took your eucwatch and made a profit without contributing back well that sucks.

  • And I think that if you earned some money you deserve it and what you do with it is your choice

    The story was in no way a complain or something, I just do not like mixing hobby and business, at no point I wanted to make money or cared if one makes some, maybe I was happy it was possible if one wanted to do so. It is difficult to explain, language barrier and I will have to end with nohomo, I really enjoyed talking to you and atc1441, you are my best technical friend I never met :) On a more serious note, both of you are excellent engineers, state of mind I mean, you both rock.

    I thank you for you kind comments of the UI, my ver 2 is a better I think, it now has UI elements for the buttons, a nice slider for changing values etc, I had it supporting "dual boot" in the bangle.js2 so I could have both the official and mine at the same time, but is looks better on the magic3. I will make a video of the toilet using it, just to have your comment :)

  • Wow, thanks for sharing that! That's really interesting - I think your work on eucwatch was awesome, and it's a real shame others tried to cash in on it. It's 100% not your fault.

    And of course someone selling a eucwatch for £75 -basically the same as we sell Bangle.js 2 for!

    The first time I wrote in this board, it was to ask you to consider supporting EUC's ... it was not a surprise you dismissed it

    I'm sorry my response seemed negative to you - I've tried to look back and the earliest mention I could find was in this thread where I seemed pretty positive about it?

    From my point of view Bangle.js was meant for exactly this kind of thing - a platform where someone with a slightly niche use could develop something cool and useful and share it with like-minded people, so what you were doing seemed great, and could have been installable via https://banglejs.com/apps

    But I think you felt that the Bangle.js was too expensive a watch to use for it? And so for me the question wasn't whether I want to support EUCs (I do/did!) but did I want to sell a smartwatch for half the price, which is something I can't really do because handling support/returns/etc just costs too much money for it to be worthwhile.

    it now has UI elements for the buttons, a nice slider for changing values etc, I had it supporting "dual boot" in the bangle.js2

    That sounds great - is it public at the moment?

    If this is something that runs on Bangle.js, would you consider adding it to banglejs.com/apps ? I'm happy to help.

    If there's really demand for Bangle.js 2 running the eucwatch software, I'd be very happy to offer a version in the shop where we preinstall eucwatch on the Bangle, sell it and then give you some of the profit? Although obviously if eucwatch is on the app store it's not going to be hard for others to do that (but we can always do referral fees).

    I know you say it's not about the money, but at least for me, knowing that people use and value my software is a big motivation to keep me wanting to maintain and improve it.

  • Thanks @Gordon, I maybe expressed my self in a wrong way, it was not a problem for me that some people tried to cash in. I meant that you were correct, those things will happen. I just didn't want to deal with it.

    When I started I did not know espruino existed, and the bangle.js2 was not out yet, it was the secret "perfect watch" of atc1441. :)

    The first bangle may have been a better choice than the p8 for an euc watch, it had a lot of buttons, but the BT range was bad. The banlejs.2 has fair BT range, an excellent screen for outdoors, and the euc is an outdoors sport, but the screen is a bit small, the vibration a bit weak, and the watch a bit expensive and fragile, there is no comparison on the front glass quality of first gen p8 and the bangle.js2.

    I tried making the euc dash an app for bangle.js2, but my code was huge because I am a newbie, and I needed changes to the system function too, just the dash is not enough.

    For example I have two routines for wake on wrist raise, one for normal use, selectable, and one that is called automatically when the euc is connected, that uses the plane as a trigger, one of the strongest points of eucwatch is that the auto wake screen works as should while riding the euc, if you can see the watch the screen is on.

    I also needed the button for connecting/disconnecting/using the horn function, you were using the long press for reboot, I never reboot.

    So I ended up having the eucwatch as a clock that overtakes your system when loaded, but I did not released it, I was planning to but is was a new chapter that needed a better effort to be on par with your work.

    And it is more than just the dash, for example it assigns a tmps valve to the garage slot and monitors tire pressure (that actually saved me once, I had a flat and the watch warned me right before the turn, I managed to stop) and a BT brake light because the brake lights on eucs are a joke. I needed to be much better than I am to successfully fit this to your work, so I went with the takeover solution, the quick and dirty one :).

    You can have a look at the UI code here, ( the repo is bad state, I was in the process of merging all the watches to the same ver2, but left it at a working but hard to follow state) it is a bit old and unfinished, I will upload the current version on the toilet topic soon.

    But my code is kindergarten level, the usability is what I think may deserve a second look.

    For example, I have the system bar appearing for a couple of seconds on swipe up (to minimize accidental taps) , three options, left is global system settings, middle is apps, right is context aware settings, it has the settings that are relevant to the face that was active when the system bar was called.

    The bottom of the screen is reserved for notifications, optional information on actions, and the slider to change values.

    It has options like settable timer for each face timeout, global gesture for full/saved brightness level, the fonts are system wide settable in size.

    I will upload a demo on the toilet, so you can see it working if you care. Even better, I will make the bangle.js2 version usable so you can test it yourself and get the feeling, if you can find a usefull idea in it, I would be happy:)

  • I placed my Bangle.js2 on the charger after some time, it is working :)

    I will update it next and try to make eucWatch run nice on it, but till then I uploaded 3 videos. The first is the bangle at the state I left at, the next is the magic3 running the updated code now, and last is my first app, a calculator, 5-6 years ago I think, I am embarrassed to look at the code, yet I still use it sometimes, I am uploading the video for the usability aspect, having a simple history that can be easily reused makes it not a complete gimmick.

    https://www.youtube.com/watch?v=oBsDP2fh­K_o

    https://www.youtube.com/watch?v=DSm_Wloh­HwI

    https://www.youtube.com/watch?v=XPZmKZ4w­lHs

  • That looks really cool, thanks!

    I had a quick glance at your code, and it looks great to me! At the end of the day it's not about how it looks anyway, it's whether it works and is reliable, and I get the impression yours does just that.

    I don't see there's a big problem with 'taking over' the Bangle. I think as a normal app you should have pretty much free reign over what happens - I guess maybe some boot code could interfere but I think on the whole we can just limit what other boot code apps we allow people to install.

    If there are firmware mods needed we can look at that - things like the packet length and max connections were useful to everyone when they went in.

    Unfortunately I don't have an EUC to test with here, but I guess anyone can check the UI is working ok...

  • I don't see there's a big problem with 'taking over' the Bangle. I think as a normal app you should have pretty much free reign over what happens - I guess maybe some boot code could interfere but I think on the whole we can just limit what other boot code apps we allow people to install.

    nice, if this does not sound like a bad idea, then it works fine as far as I have tested, I will make it working good. Taking over I meant like using my scripts to read the touch controler instead of bangle functions, I am using is my init (.bootrst) file as a bangle clock.

    One of the problems I was planning to solve, was the loaders. There are 39 apps in mine, a lot more files that this, lets say I manage to find a way so that there are no conflicts on variable names or file names, do you have a hint as how it could be done so that my loader ignores all the official bangle apps, and the official loader ignores my apps? It looks bad having all those question marks when changing loaders :)

  • Gordon, the bangle.js2 software could literally power 10s or 100s of watches [...]

    Espruino was originally created as a way to bring together a bunch of third party hardware that was otherwise hard to program, but I had to swap to selling hardware

    In my opinion, for consumer hardware like this smartwatches selling the hardware is the only option for having good support. Consumer hardware manufacturers don't care about third party software. The model names doesn't mean anything, except the same external design and similar features. This happens with things like routers, you end looking for specific revisions of what is supposed to be the same model, probably looking for old revisions as you don't know if newer ones would work (or you know that don't). You don't know the specific revision of the device sold over the Internet, not even the seller cares which revision it is.

    I no doubt prefer Gordon selling the watch. In addition to funding the development, he, buying way higher number than we could, can get the correct revisions. If only a new revision is available he can port the code for the exact revision he starts to sell. I'm tired of running free software on half working devices. If I need a new watch I would buy Bangle.js 2 again until Gordon moves to a new device.

  • Yes, I think you're right there @fanoush - it's a shame but it seems to be the way things are, with it being almost impossible to know what hardware you're getting. Even devboards like the CYD appear to have changes that are hard to keep track of.

    @enaon wow - I didn't realise you had a whole app loader full of apps! I guess it's gone far enough now that it wouldn't be possible to integrate the apps as normal Bangle.js apps?

    The app loader uses *.info files to determine what's installed, and effectively ignores any other file. So if you there wasn't another way you could modify your app loader to use .euci or something for the file extension of the info files, and then they would be separate.

  • I didn't realise you had a whole app loader full of apps! I guess it's gone far enough now that it wouldn't be possible to integrate the apps as normal Bangle.js apps?

    Not really apps, some 20 of them are the modules for different models /makers support , some 10 are system apps, and some true apps like the calc, alarm, HiD music, TPMS, Led stripes, things like that.

    It is just that using two loaders means I can have the same version for p8/rock/bangle.js2 on most files, and slowly integrating to bangle.js apps could be easier for me if I was really using the bangle.js2, as a motivation I mean. For anyone I think, someone else may do it if he likes it, the code would be inside the watch already.

    you could modify your app loader to use .euci or something for the file extension of the info files

    very nice, thank you.

  • Post a reply
    • Bold
    • Italics
    • Link
    • Image
    • List
    • Quote
    • code
    • Preview
About

Acceptable Clones? Perhaps passed through Gordon?

Posted by Avatar for fanoushs-punching-bag @fanoushs-punching-bag

Actions