-
• #77
Not working on this but would love to see
a puck.js watch with https://www.adafruit.com/products/1643
one color each for the hour minute hands with a puck.js in the middlemy 8 yr old daughter keeps steeling my puck.js to play with, and if I ever got time, I would make a watch for her for "play and learn"
Edit
puck.js
Dimensions of plastic case: 36mm dia, 12.5mm thick
Dimensions of bare PCB: 29mm dia, 9mm thickneopixel 12
Dimensions:
Outer diameter: 36.8mm / 1.5"
Inner diameter: 23.3mm / 1" // Tight fit ... coin battery container is the acid test
Thickness: 6.7mm / 0.3"http://www.thingiverse.com/thing:424381
https://www.espruino.com/Digital+Dice
A version with the neo and nrf ...
1 Attachment
-
• #78
Hi @OwenBrotherwood,
Yes, working with neopixel is much fun.
Check issue #1023, for now Pucks can not handle them.
-
• #79
thanks MaBe
my daughter and I both want a puck.js watch: so looks like something to be done.a puck.js watch allows for a constant advertisement for the great puck.js for people who ask what it is, and also a means to control the telly when the kids have it on too loud.
a method to put the puck-on-wrist to different modes using mag and button to control mode
I watch https://github.com/espruino/Espruino/issues/1023 and put it on a list of great things to come
-
• #80
...just think about the power... a neo pixel white full power draws about 60mA... so three hands with one color each full bright is 60+mA... since this is way over the expected draw of 20mA where the capacity is calculated for an average cell, it lasts for about 10..15 minutes, if at all, because the voltage drop with such a current may brown out puck and more so the neo pixel logic. Light power consumption got much better over its life cycle from incandescent to FL to LED, it is still behaves power hungry... Last but not least this was the reason early (red) LED watches where you had to press a button to show the time changed to LCD, and LCD is still better than e-ink / e-pager for displays that update 'constantly'.
-
• #81
yes: power is gonna be an issue.
Current day apple watches do not show the time all the time and apple only have one button on their iPads/iPhones, so the interface to the watch, with one button and display that is only on when necessary will be ... interestingEdit
The human interface is central RGB and ring RGB. A button and the mag. -
• #82
Oh yes, power is important ....
You can use a USB powerbank, if mobile, or a USB power supply.
USB 5V to NP 5V DC Power and USB GND to NP GND
USB GND to Puck.JS GND
Puck.JS PinXX to NP Data Inputlike in this example by Gordon http://www.espruino.com/WS2811
-
• #83
Hmmm, with all the power needs, may have to go for a puck-pendant-watch: which actually could make things a lot easier as the button may present interesting problems if as a wrist watch
https://learn.adafruit.com/sound-reactive-neopixel-peace-pendant
-
• #84
In general, if one can make some "trinket" videos of the puck.js, one can give some meaning for micro controllers in wearables and funny things for female gender which is a focus at the moment in the organisation for coding for children I teach in my spare time.
There is a 10% 90% split in gender where the females are the lesser part.
-
• #85
inspired by @catmapper wearable watch light meter
-
• #86
inspired by @catmapper wearable watch light meter.
Combined PuckJS_stapholder.stl and bottom.stl with a slicer tool to create a Puck.Js watch case for 18mm nato watch straps
1 Attachment
-
• #87
Puck.JS on nato watch straps
1 Attachment
-
• #90
Puck.js watch is now on thingiverse for 18mm and 22mm straps
-
• #91
I think the user interface needs work.... I can't tell if that mean sunset or sunrise ;-)
-
• #93
Hi!
I am currenly developing an app where a Puck.js is acting as a host for receiving data from nearby ruuvitags.
-
• #94
Nice! Thanks for posting up!
Just so you know, you can now link directly so it auto-loads in the Web IDE: https://www.espruino.com/ide/#https://raw.githubusercontent.com/pleft/puckjs_ruuvitag_scanner/master/PuckjsRuuvitagScanner.js
-
• #95
Just so you know, you can now link directly so it auto-loads in the Web IDE
Wow cool feature! Thanks!
-
• #96
Just a little project I did to get familiar with the Puck, but maybe it's interesting to someone nonetheless. A self-calibrating volume control knob using the magnetometer and bluetooth hid.
To use it, upload the script, lay the Puck flat on the table, spin it slowly one or two times to calibrate the magnetometer readings. Then press the Puck once and spin it to control the volume of the devices it is connected to via bluetooth (if it is supported). There are some problems with detecting overflow, but it works ok.
Beware, this is polling the magnetometer with 10 Hz, so it might drain the battery if you keep it running.
-
• #97
Im trying to connect to a MI FlowerCare sensor. Im having a issue thoe.
function getData() { var gatt; NRF.connect("C4:7C:8D:61:FB:E0").then(function(g) { gatt = g; return gatt.getPrimaryService("00001204-0000-1000-8000-00805f9b34fb"); }).then(function(service) { return service.getCharacteristic("00001a01-0000-1000-8000-00805f9b34fb"); }).then(function(characteristic) { return characteristic.readValue(); }).then(function(value) { console.log(value); gatt.disconnect(); console.log("Done!"); }).catch(function(error){ console.log("error", error); }); } setWatch(function() { getData(); }, BTN, { repeat:true, edge:"rising", debounce:50 });
I get error disconnected it seems that the flower sensor gets disconnected (I get error disconnected) :) in order to save battery there is a automatic disconnect after like 2 secs. Is there something I can do? Is my code correct ? I got the values using the gatttool on a raspberry Pi. I also found some clues here: https://github.com/open-homeautomation/miflora/blob/master/miflora/miflora_poller.py, Any sudgestions?
(Update)
function getDevices() { var devices; NRF.findDevices(function(d) { devices = d; console.log(devices); }, 1000); } setWatch(function() { getDevices(); }, BTN, { repeat:true, edge:"rising", debounce:50 });
Outputs :::::::
Before watering
BluetoothDevice { "id": "c4:7c:8d:61:fb:e0 public", "rssi": -50, "services": [ "fe95" ], "data": new ArrayBuffer([2, 1, 6, 3, 2, 149, 254, 21, 22, 149, 254, 113, 2, 152, 0, 183, 224, 251, 97, 141, 124, 196, 13, 7, 16, 3, 0, 0, 0]) }
After watering
BluetoothDevice { "id": "c4:7c:8d:61:fb:e0 public", "rssi": -52, "services": [ "fe95" ], "data": new ArrayBuffer([2, 1, 6, 3, 2, 149, 254, 19, 22, 149, 254, 113, 2, 152, 0, 129, 224, 251, 97, 141, 124, 196, 13, 8, 16, 1, 67]) }
So now I'm wondering if I can get the moister value from the data ArrayBuffer?
-
• #98
@cryptobias thanks! That's really cool! I had always wanted to try something like that. Thanks for using the IDE link too :)
@furuskog odd about the disconnect. I'll try and release 1v92 some time this week, and it may fix those. Maybe just see if the value from
data
changes with different moisture levels, as you might be able to notice if one or two array elements keep changing?If you have other problems, please could you post in a new thread though? It makes it easier to help you out properly without also responding to everyone else in this conversation :)
Yes, the STP file looks to be good. I'll send over a PR with another STL