New Puck.js production run

Posted on
of 2
/ 2
  • Hi,

    There's been a great response to Puck.js since it was released and it's about time for me to start another production run so I don't run out of them!

    However, can anyone think of anything that could be improved in the next revision?

    Don't say 'add an accelerometer' :) I may do a more expensive device with a full 9DOF sensor in it at some point in the future, but not for the standard Puck.js.

    I can't promise anything though... I haven't come across anything big - and if I can get away without changing anything it'll definitely be faster/cheaper/safer to stick with the current design.

  • How about audio related stuff?
    Speaker, beep, etc.

  • Sounds great.
    Maybe a "barebone" version without the case for guys who'd integrate it into something anyway?
    Don't know how much of the production costs get into the case.

    On the other hand side: More case colours (even if that would have impact on the RGB LED colours).

  • I was thinking more of small tweaks to the PCB, rather than extra stuff - but I had considered a speaker previously, it's just hard to do nicely as part of the production.

    I will do a video soon showing how to add one though - it's really easy, especially if you have one of those musical christmas cards you can pull apart :)

    As I've now paid for the molds, there's actually not that much cost involved in the case itself. I'm pretty sure I'll be releasing something very barebones soon though - probably just a bare PCB with the module on, maybe with some extra pre-programmed modules alongside.

    I'd love to do something that wasn't pre-soldered at all, but the pitch of the pins on the module is so fine I don't think most people would be willing to solder them.

    I did have a post up about different silicone cases... The minimum order is 2000 of each colour, which makes it kind of difficult to invest in a whole load of shades. I think clear tinted black could work well though.

  • Solder pads would be something.
    Maybe move them to the edge (like on a stamp) with a wider pitch so you can solder on things more easily?

  • Yes, the pads themselves are annoying. Unfortunately I can't get them right to the edge because that's where the NFC aerial is (and it runs on both sides of the board).

    Looking at the board itself it's hard to see how I could make it much better within what I have (I'm very limited with where I can put holes because of the battery on the back).

  • If one removed the battery, because one has another power source coming up from the board, then thru holes could be nice...
    Then I add my own accelerator :)

  • Cover:
    I remember something about a ping pong ball being used to disperse/blend the light more.
    It could be neat with "something" there such that the RGB can in some way be mixed better.
    My daughter and I are playing with the lights: but I have to go into figure it out to get a better mixing.
    She is delighted with her puck.js

  • The longer I think about it: sound would be really interesting.
    The more senses it affects, the better... :)

    And a tiny thing: If the PCB had a notch or two and a nose as counterpart in the case - that would make it easier / safer for newbies to put everything together in the right order...
    Probably this will also have issues with the antenna...

    Regarding solder pads: I was not aware of the antenna.
    Could the pads without hole maybe have a wider spacing and get holes?
    There is one side with a double row with two different pitches - why? Could save some space if sacrificed...

    By the way: How many layers does the PCB have?

  • Puck.js hardware v1.0e is awesome. I'd suggest deferring any revision at all, if demand is increasing.

    That said, here's a small list of tweaks to consider:

    1. Preload with fun program: When BBC Micro:bit turns on, it runs through a set of interactive demos. Perhaps Puck.js could do something colorful for 10 seconds, and go to sleep. Pressing the button would stop, if it hasn't finished. Pressing the button while stopped would restart. Perhaps it's already also loaded with NFC, iBeacon, and Eddystone advertisements. Tapping the device with an Android phone could redirect to Similarly, Eddystone (and maybe iBeacon) would be ready to test. I could take a shot at writing this.

    2. Improve LED color blending: Replace 3 discrete R, G, B LEDs with a composite RGB LED. Probably save board space, too.

    3. Keyed insertion: Add asymmetrical notches to PCB and ridges to case to orient board, and ensure right-side-up. HT @ChristianW

    4. More visible battery insulator: Replace transparent battery insulator (for storage/shipping) with colored one, possibly with printed icon/message.

  • Hi,

    Sound: it would be good - but not an option for this one. Maybe a super-puck :)

    Pads: as I said above, I've put holes where I can. I can't put any where the battery is as they'd short out. It's a 2 layer board, so it's much tighter fitting stuff in,

    Double row with two different pitches: it's to fit a Seeed Grove connector, so once you add a connector you can easily plug a bunch of extra stuff in.

    Why do you want the extra pins? Just because they're there? So far I've hardly seen anyone soldering anything on - and besides, there are always IO expanders you can add. It's not like you're going to want a huge bundle of 15 wires poking out of the Puck anyway... If you need that much IO then a different board sounds in order.

    Light mixing: right now I'm using some special high-efficiency LEDs which I don't believe I can get in a mixed package, but I could potentially drop those. The light would be better mixed, but I bet the output would be even less dispersed from an all-in-one package :(

    A really quick fix would be for me to change the resistor values to make sure that when all LEDs were turned on full the colour was a lot more white. Also I'd found that putting a little blob of something like hot glue over the LEDs diffuses and mixes everything a lot - so I could get that done.

    Preloading: it seems like a nice idea. I'm not so sure about the advertisements - anything that could potentially cause problems connecting seems like a bad idea - but LED lights on startup and maybe making it a BLE HID device that presses 'Enter' when pressed could be good.

    Tapping the device with an Android phone could redirect to

    It does that already :)

    Keyed insertion: Yes, I really wish I'd added that. It's too late to change the moldings now, but 'this side down' text around the edge at the bottom, and maybe something to show where the ledge should be would really help.

    Battery insulator: Yes, I've already asked Seeed about that - the original one was stupid :)

  • Pins for external battery

  • Don't say 'add an accelerometer' :) I may do a more expensive device
    with a full 9DOF sensor in it at some point in the future, but not for
    the standard Puck.js.

    Well, I don't say 9DOF, but I say 'add an accelerometer to the magnetometer'. An LSM303C or something similar to replace the MAG3110. We wold get proper compass and freefall/motion detection functionality.
    Shouldnt't cost that much. Could LGA-12 be a problem?

  • I think for this one - if I actually want to get more Pucks produced before I run out - I need to stick with the MAG3110. The LSM303C looks interesting - although it's not so good on power consumption. The magnetometer does provide readings more quickly, but in its low power mode it draws 5x more power than the MAG3110.

  • @Adam79 you know you can just wire a battery to the 3v and GND pins already? It just has to be within the correct voltage range (2 - 3.6v)

  • I didn't :-)

  • Actually - like @oesterle said it's quite perfect as it is.

    I was not aware of the many restrictions in design. I just had a closer look - much is covered with the white paint, so it seems even simpler than it is.

    Regarding pads:
    maybe I'm biased from my gamecontroller/joystick project, but also doable with the current version. Actually it's better to keep it simple - you are right.

  • And I have soldered one of my puck.js's :)
    LED's sound like I will try what Gordon has tried.One thing is getting the "hight" of the led's output a bit higher to clear the nRF module WIP.
    In general, there are many pins available: so I am good for a thing to put on a things network.

  • Improve LED color blending: Replace 3 discrete R, G, B LEDs with a composite RGB LED. Probably save board space, too.

    I am using Rohm SMLP34RGB2W3 for a long time. very bright, very small, a few cents in quantity.

  • My only wish is to have the area on the other side of the switch clear... which means relocate the resistor in the red ellipse... Operating the switch in open case with, for example, a tooth pick, or something similar, the resistor is in the direction of force and pushing any where else than in the direct line make the puck jumpy ;-)

    1 Attachment

    • componentFreeSwitchPuck.png
  • :) you can actually unsolder that if you want - it's a diode across the power supply to protect against someone putting the battery in back to front

    If I do respin the PCB I'll look at moving that down a little though :)

  • @oesterle has suggested 3 things I'd like to 'plus 1'

    1) Fun program onboard when you receive it - might defer "my puck is not working" type support
    2) Yes, my thoughts too. It's clearly 3 LEDs - the light doesn't diffuse well.
    4) The battery insulator tab. I've raised this too. Clear or not, add a bit more on it - so it can be pulled out using fingers, not pincers.

    A couple of other minor annoyances

    • The fingernail lift on battery trick is fantastic to reset - once you know about it. Access to battery could be easier - or a reset button.

    • Top cover material. It's hard to keep clean. I'm not sure if this is static or what, but it attracts dust. No big deal, but are there other options, that might not?

  • Light mixing: right now I'm using some special high-efficiency LEDs…

    @Gordon: Can I ask which LEDs you're using? (Or what their levels of efficiency are?) I love hunting down components.

    Also I'd found that putting a little blob of something like hot glue over the LEDs diffuses and mixes everything a lot

    I thought about that. Now I'll def try that with one of my Pucks!

  • Tapping the device with an Android phone could redirect to

    It does that already :)

    Oh. I guess I could have tried that with an Android phone before posting. :-D

  • LEDs

    They're all Kingbright - APT1608LSECKJ3RV, APT1608LZGCK and APT1608LVBCD. The idea is they're better at low currents like ~2mA - since you shouldn't be drawing loads of power out of the CR2032

    My worry with an RGB chip is that it'll be taller, so while giving better mixed light will actually give an even less diffuse spread of light. I'm wondering now whether a thin disc of perspex with one side roughed up would solve both problems?

    I think if I had a reset button it'd get accidentally pressed? My hope is as the software gets more mature, there will be less and less need for a reset. I think even now, often it's done as more of a troubleshooting measure?

    I've noticed the silicone picks up dust too - I'm not sure there's much that can be done about that. At least if I were to sell tinted black covers then it would be less obvious :)

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

New Puck.js production run

Posted by Avatar for Gordon @Gordon