Shop OBEX P1 Docs P2 Docs Learn Events
Puck.js - the ground-breaking bluetooth beacon - Page 2 — Parallax Forums

Puck.js - the ground-breaking bluetooth beacon

2»

Comments

  • David Betz wrote: »
    I got mine today. I have no idea what I'm going to do with it but it sounded cool. :-)

    I got one for the same reason.

    That and Heater thought they were cool. I'm still trying to figure out how to talk to it. Here's a tutorial video I just started watching.



  • Heater.Heater. Posts: 21,230
    Yep, got five of them here.

    Managed to make a compass out of one of them. After figuring out one had to null out the huge magnetic field from the metal parts on board.

    Just now they are flashing their RGB LEDS according to the JKISS32 PRNG. Just sitting as Christmas table decorations!

    At some point I have to make a Prop to Puck serial connection.
  • Got a pair.
    Not sure why.
    Sure are cute.
    Maybe try something over Christmas break!
    Ho! Ho! Ho!
  • I had to pair with the Puck.js using Windows 10 settings and I also had to download "espruino_ide_win64_0v65.9.exe". The in browser app wouldn't connect.

    I just successfully loaded the LED blinking program. Yeah!
  • This is pretty cool. I just typed:
    >LED2.write(true);
    

    Into the terminal and the green light turned on.

    Since I already had the red LED flashing now the Puck.js switches between green and yellow/red.

    So far this is a fun gizmo. Thanks for the suggestion Heater.
  • Heater.Heater. Posts: 21,230
    Yeah, Windows does not support the Bluetooth API yet. May be later this year.

    The browser did pair from my colleagues Mac though.

    I wonder if we can program a Propeller via the Puck? Is it fast enough?
  • Am I missing something here? Or is this thing a solution looking for a problem? Just to be sure, I've been suckered by stuff like this before, but I think -- I hope -- I'm getting smarter with age. :)

    -Phil
  • Heater.Heater. Posts: 21,230
    "suckered"? Maybe.

    I'm definitely not getting smarter with age. For me the Puck.js is a fun toy. And I can't resist such techie toys.

    As toys go it's beautifully made in all ways. The circuit board, the enclosure, the software. Gordon Williams certainly does deliver.

    Will it ever be a serious solution for any problem around here? Probably not. Like my collection of Propellers, Raspies, and all the other stuff in my toy box.



  • Heater. wrote: »
    Yeah, Windows does not support the Bluetooth API yet. May be later this year.

    The browser did pair from my colleagues Mac though.

    I wonder if we can program a Propeller via the Puck? Is it fast enough?
    Even if it isn't fast enough for the Propeller ROM protocol we could use the same two-stage loader approach that we use with the Parallax WX module since we can load code into the Puck. Have the Puck itself load the second-stage loader and then have the PC use a more delay-tolerant protocol to load the user's program over Bluetooth.

  • Am I missing something here? Or is this thing a solution looking for a problem? Just to be sure, I've been suckered by stuff like this before, but I think -- I hope -- I'm getting smarter with age. :)

    -Phil

    Problems? Solutions? Those all stay at work, this is play time!!

    Problem: I don't have a programmable white silicon disk that sits on my desk and blinks LEDs and opens up more doors to explore microcontrolled things.

    Solution: Get a PuckJS!!

    Results: I now have a programmable white silicon disk that sits on my desk and blinks LEDs and opens up more doors to explore microcontrolled things!

    Yay Gordon, ANOTHER success!!

    I think Gordon Williams is tied for best at delivering KickStarter projects that I have had experience with. He's tied with Damien George and the MicroPython guys! (at least they chose a more palatable language than this JS stuff!) ...of course, since the other Espruinos can run MicroPython...hmmm...

    (I'm bracing myself for another bout with semi-colons)

    Christmas Puck (alternates Reg/Green)
    var  on = false;
    setInterval(function() {
      on = !on;
      LED1.write(on);
      LED2.write(!on);
    }, 500);
    

    Now what??

  • Here's the PDF for the module that drives the stupid little white silicon thing that is sitting on your desk, blinking, taunting, distracting you until you sit down and play with it...



    AHHHHHHHHHH!!!!! The MADNESS!!

  • Heater.Heater. Posts: 21,230
    edited 2016-12-22 15:28
    mindrobots,
    I think Gordon Williams is tied for best at delivering KickStarter projects that I have had experience with.
    Absolutely. Gordon does an amazing job.
    He's tied with Damien George and the MicroPython guys!
    I find it amazing that Gordon and Damien had the same idea at the same time. Their kickstarters overlapped if I remember correctly. They produced similar boards. All be it using different languages. They both lived in the same town I believe. They had never heard of each other.
    (at least they chose a more palatable language than this JS stuff!)
    Take cover everybody. Language war commencing!

    One of the reasons many of us here like the Propeller is that it does not have interrupts and it provides a far simpler way to do what interrupts do.

    Meanwhile on the MicroPython I find this regarding interrupts:
    import pyb, micropython
    micropython.alloc_emergency_exception_buf(100)
    class Foo(object):
        def __init__(self, timer, led):
            self.led = led
            timer.callback(self.cb)
        def cb(self, tim):
            self.led.toggle()
    
    red = Foo(pyb.Timer(4, freq=1), pyb.LED(1))
    greeen = Foo(pyb.Timer(2, freq=0.8), pyb.LED(2))
    
    Which is far more complicated and ugly that the same in JS (See below). It has a class you don't need. It has that ugly "self" all over the place. It has a redundant ":" for no reason anyone has ever explained to me.

    To be fair MicroPython simplifes things by providing callbacks on many things, pins, timers, whatever, but they are still interrupt handlers. Subject to all the limitations laid down in the huge page: http://docs.micropython.org/en/latest/pyboard/reference/isr_rules.html#isr-rules

    Meanwhile in JS land we reduce all that noise down this:
    (Note the absence of semicolons! :) )
    function Foo (led, state) {
        return () => digitalWrite(led, state = !state)
    }
    
    setInterval (foo(LED1, true), 1000)
    setInterval (foo(LED2, false), 800)
    





  • banjobanjo Posts: 438
    edited 2016-12-22 16:21
    Duane Degn wrote: »
    I had to pair with the Puck.js using Windows 10 settings and I also had to download "espruino_ide_win64_0v65.9.exe". The in browser app wouldn't connect.

    I just successfully loaded the LED blinking program. Yeah!

    I also got three of this the other day. Unfortunately not been able to connect to them from a Win-32 Win-10 or from another 64-bit Win 8.1 computer. Was finally able to pair them from the Win-32 computer, but the separate Ide is not able to find them... Gordon tried to help but we did not get it to work before he left for his well deserved break. Oh well, what should I play with during Christmas then...
  • No language wars, just a friendly poke.

    I have no issues with JS, it's more with me and my brain. It's really a fine language (except for the parts where everyone knows it is broken). I just get easily lost with anonymous functions and keeping the nesting levels of nested nestiness straight when looking at code. I probably just need to practice more, read more well structured JS and embrace it fully.

    I love the fact that you can take the same language from browser, through all the application code, into the database and then out again to a small attached device.

    Maybe I'll make JS a 2017 resolution. Maybe I need to find an editor that highlights, emboldens, increase the font size and blinks matching braces (or in the case of the forums, a font where a brace doesn't look so much like a paren as it does in a code block here:
    {()}
    

    (I can't refer to it as ECMAScript. it makes me feel like there's something stuck in my throat!)
  • Heater.Heater. Posts: 21,230
    That's odd. The IDE application works for me on Windows 10 (On a Surface Pro) however sometimes it takes a few goes to get connected properly.

    Also odd is that my friends iPhone does not see them at all.

  • Yeah, but my Win 10-computer is 32-bit and there's no 32-bit native application...
  • @banjo

    re: Oh well, what should I play with during Christmas then...

    Just play your Banjo Banjo LOL

  • Heater.Heater. Posts: 21,230
    Three Pucks here. Flashing their RGB LEDs at random as table decorations.

    I have no idea where this all leads...
  • Is there some trick to getting puck.js to connect? I'm running Chrome under Linux and it sees the puck but I get "connection failed" every time I try to connect to it.
  • Heater.Heater. Posts: 21,230
    None that I'm aware of. Once you have recent Chrome build and tweaked the bluetooth flag. Worked immediately on my colleagues Mac. Sadly I don't have any bluetooth enabled Linux machines around here to check it out with.

    However using the Windows application I have noticed the Pucks may not always connect immediately. It can take a few goes to get connected. No idea why that may be.
  • ercoerco Posts: 20,254
    Am I missing something here? Or is this thing a solution looking for a problem? Just to be sure, I've been suckered by stuff like this before, but I think -- I hope -- I'm getting smarter with age. :)

    -Phil

    Hahahahahaha. You didn't mention me by name, but we all know who you meant! :)
  • banjo wrote: »
    Yeah, but my Win 10-computer is 32-bit and there's no 32-bit native application...

    Ok, now I'm at least able to use the espruino command window, so can program the 3 pucks I have. Have a project in mind to wirelessly send the state of our garage door (open or closed) from one puck in the garage to another in our house. If it's -20 C outside, the garage door better be closed... Am already communicating between 2 pucks so that part is at least working now
  • Heater.Heater. Posts: 21,230
    Well done.

    My five pucks have been sitting on the table flashing their RGB LEDs at random as a Christmas decoration.

    Now is time to stop that and move on.

    I need a puck to Propeller connection....
Sign In or Register to comment.