Avatar for stewartg

stewartg

Member since Jun 2020 • Last active Sep 2020
  • 2 conversations
  • 8 comments

Most recent activity

    • 17 comments
    • 3,844 views
  • in Bangle.js
    Avatar for stewartg

    OK, looks like its easy to do an App remove like this:

    Storage = require("Storage");
    Storage.list("myAppName").forEach(StoragĀ­e.erase)
    
  • in Bangle.js
    Avatar for stewartg

    Thanks @Gordon, that works well.

    Is there away to remove an app via the App Loader? Seems that "install" will overwrite an existing install, so if files are renamed or removed from the app, there will be orphaned files in the device Storage that are not in the app's ".info" file. Would be good the old files could be removed first.

  • in Bangle.js
    Avatar for stewartg

    Hi,

    I have a bunch of binary files that I need to transfer to bangle.js Storage. There are about 30 small sound files, roughly 2-3K bytes each.

    Is there a way to copy arbitrary files to Storage, say through a command-line tool? I managed to do the job through the Web IDE, but it was pretty time consuming, and now I'd like to tweak my data I'm looking for a better way. Can "espruino --storage" be used to do this? Its unclear from the documentation exactly what this does.

  • in Bangle.js
    Avatar for stewartg

    Yes, if you're careful not to crack the ceramic or distort the disk you can drill piezos without any problems. It would be easier with a drill press than using a handheld drill as shown. The aim should be to maximise the area of the ceramic. I suspect that a large disk with a hole will yield more ceramic, and thus more piezo electric force than two or more small disks. Looking at the disassembley video, there is also an area that would have to be cut away from the disk for the charging pins to pass through.

  • in Bangle.js
    Avatar for stewartg

    Yes, but I think heart rate measurement will be very useful in this application. Unless of course its wildly inaccurate, in which case I could afford to lose the window. Another option is a big piezo with a small hole in the middle. Not sure how well that would work.

  • in Bangle.js
    Avatar for stewartg

    Great, thanks! This is very helpful. :-)

    I wasn't sure if I would have to implement my own PWM, but this looks easy.

    I'm fairly confident that a piezo stuck to the back will be better. This is how talking watches are constructed, and they can be very loud. It might not be optimal because of the need to use a smaller piezo, positioned away from the center of the plate. Looking forward to trying it out when my devices arrive.

  • in Bangle.js
    Avatar for stewartg

    OK, thanks for the information. I had a look at the disassembly video, and a few ideas come to mind. Part of the reason the speaker is not loud may be that it is not well coupled to the case of the watch. In its normal position, the heart rate sensor and a layer of plastic film is between the speaker and the case. One solution might be to stick the speaker directly to the back of the case. It would have to avoid the existing sensor window and connector pins. Piezos come as small as 12mm, so a couple of these might fit, or alternatively could be cut down to size. Adding an air hole might also increase the loudness, at the expense of some water resistance. Another solution might be to stick the speaker inside the front of the watch. A blind user can't see the LCD anyway so there is no great loss in sacrificing all or part of the front display area.

    I will go ahead and order a couple of watches to experiment with. Is it possible to buy extra cases? This could be useful in case I break something while tinkering.

  • in Bangle.js
    Avatar for stewartg

    Hi,

    Is it possible to do speech output on the bangle.js watch? How loud is the speaker?

    I'm interested in developing an assistive device for a blind runner. It would basically be a glorified talking clock, with the ability to speak the time, with stopwatch functions, maybe also heart rate and distance travelled. So I don't need generalised text-to-speech, just a limited vocabulary of numbers and a few extra phrases.

    It looks like the speaker is wired to a digital pin, so I could presumably read some pre-recorded data from a file, and then write it out using Waveform API. Is this the best approach? Is it possible to mix javascript code on the bangle.js with standard Arduino libaries or C code? A quick search reveals the Talkie arduino speech library (https://github.com/going-digital/Talkie). Would this be usable on the bangle.js platform?

    I have tried to implement something like this before using an Android smart watch. While these devices are very capable, the UI is quite inflexible and is usually hopelessly dependent on the touchscreen display. From this standpoint, having a bunch of chunky buttons on the bangle.js is a huge plus, and it should be possible to develop a simple UI that does not require sight.

    Cheers,
    Stewart

Actions