Next BLE

Posted on
of 3
/ 3
Last Next
  • @Gordon just watched your new silk screen video (­J6k
    ), was that a sneak preview of you next hardware release ? tiny board + nRF52832 + espruino ?

  • Well spotted! It's a prototype I've been experimenting with - sans penguin.

    Is there interest in that kind of thing? nRF52 with a voltage regulator on a 0.1" board.

    There were a few requests when Puck.js was released, but nothing recently.

    At the moment the thing that's stopping me diving ahead with it is I'm in two minds about the manufacturing. I keep trying to make the boards easier to manufacture but Seeed have been getting progressively more expensive.

    This board in particular is ridiculously simple, and I'm considering just trying to make small batches up myself - and if the sales do well enough, hire someone for it. It'd be nice to offer a wider range of Espruino devices (for instance one with an LCD/OLED), but I just can't afford to order 1500 each of all of them, which is what I often need to make something viable with a contract manufacturer. It feels like the solution is to make the boards locally in smaller quantities.

    Otherwise another option is for me to sell all the parts in an unsoldered kit - but the pitch on the nRF52 module is fine enough that I think it could be tricky for a lot of people... You really need a temperature controlled hot air gun to do it nicely.

  • A very small javascript BLE board with only the basics is exactly what I've been looking for.

    I'd agree self soldering something that small would be a put off for some, including me. I've already tried with a RN4020 had 75% success rate.

    Surprised a third party couldn't create these at a competitive price, have you tried ? Not used them myself, but seem to be all about open hardware and in the same country.

  • I'll have a bit more of a look at it... The nRF52 looks to be about the same pitch as that RN4020 so you're in for similar levels of pain :)

    I did use Ragworm for some prototype PCBs in the past and found them to be a bit on the pricey side, but the assembly is new to me - it might be different. I'll have a bit more of a look around.

    My issue really is the volumes - to make it cost effective for a CM to set up their machines I have to get 1000 or so boards made, which is a big investment each time I need to restock.

    As an example I'm getting some Espruino-powered badges made for a JS conference at the moment (in the UK) - it's costing me at least £4 a badge to make 250 badges - just for (partial) assembly... I'm still putting through-hole bits on myself! It means it's very hard to justify doing smaller production runs (like badges or custom sensors) which might otherwise be quite a good way to grow the business.

    If I was selling more expensive things then it wouldn't be such an issue outsourcing the manufacture - but at least it seems to me that there's a lot of price pressure on the kind of things I'm selling at the moment. I've just been looking around at a lot of the smaller Open Hardware companies that seem to have done well - Adafruit, Sparkfun, Olimex, Pimoroni, Pololu, Seeed, etc and they all seem to be doing the same thing - basically being very vertically integrated - manufacturing and selling the devices themselves.

  • How do companies like Adafruit and Sparkfun buy from you ? To they commit to 100, 200 ? Is it sale or return ?

  • They actually buy up front. If you look at the bottom of there are some rates for purchases in larger quantities, and they just work off those.

    I started off doing sale or return, but quite quickly it got popular enough that I didn't have to.

    Adafruit are particularly good at keeping their markup low, and I think they make more money off extra stuff sold along with the boards.

    However some other companies put large markups on the sale price - to the point where some might be making maybe 3x more money off each device sold than I am!

  • Can you get a commitment from these companies before getting the new boards made ?

    Selling a cheaper board bundling with other stuff they provide might be appealing.

  • That's a good idea actually - Adafruit have tended not to go for initial orders of my stuff much past 50 boards if I recall, but I might be able to get a few more companies to do something similar. It could be a good way of getting started without all the stress of a KickStarter.

    It still brings up the stock issue - even if I get enough for an initial batch, at some point I'll still have to fork out for another 1000 or so, but at least it gets me started.

    I guess another option is to rebrand someone else's board. If one of the sellers on Alibaba/similar did a decent 0.1" pitch nRF52 board then I could just buy those and flash them with the Espruino bootloader and firmware.

    I'd considered this with the nRF5x based smartwatches, but I believe the minimum order they gave me for custom firmware was 5000, which is a bit past what I could manage!

  • I could be interested in a nRF52 board with Espruino preloaded.

    Our current wireless logging solution is made up of two devices. The first is a battery powered Arduino that broadcasts two temperatures regularly, using a nrf24L01. The second device has a Pico/SIM800/nrf24L01/LCD/EEPROM.

    I am thinking that it could be a nicer solution to have both devices nrf52 based as the BLE comms would be useful for some additional features we wish to add. My main unknown is whether all the software will fit/run in the nrf52 ? The current software runs with 800 blocks free mem on the Pico, using standard Save and no Pretokenise.

    Does Espruino support using the nrf52 flash for writing general logging data ? I know that its endurance is only 10000 writes but there is lots of it so that should not be an issue for me.

  • current software runs with 800 blocks free mem on the Pico

    @jonreid, did y0u consider to put your software into modules, minified, and store them as functions with the option to run from flash?

    What is the amount of data in the log until it is downloaded and cleared?

  • Yes run from flash would save a bunch of RAM so definitely an option.

    My application currently writes 8bytes every 2 mins, (5760 bytes per day). Normally data is uploaded every 30 mins, but I need to be able to keep up to around 10 days worth for backup purposes.

  • @jonreid Great! So you'd be interested in something on a 0.1" pitch (rather than just a pre-programmed MDBT42Q module).

    I think you'd be fine on code-size. Not having nRF24 or EEPROM code will save some space, and there's still some space free to increase the variable count on nRF52 substantially as both it and the Pico have 64k RAM. Hopefully 1v95 will have that increased.

    Does Espruino support using the nrf52 flash for writing general logging data ? I know that its endurance is only 10000 writes but there is lots of it

    It does, yes - using the standard Espruino Flash module. There's about 60k free by the look of it.

    Actually the Pico has an undocumented 128kB (!) page right at the end of memory that you could look at using instead of EEPROM if you needed?

  • A 0.1 pitch board could be useful, depends how we end up making it. What is involved in getting Espruino onto a MDBT42Q module? If we go that way we could always become a Patreon to get ongoing support?

    I did not use the extra flash page on the Pico as I was saving for saving remote code updates. If it was broken into several pages it would have been ideal.

  • What is involved in getting Espruino onto a MDBT42Q module?

    You have to connect to it with an SWD debugger/flasher like the NRF52832DK board (it's just 2 wires + power). Just last week I got a programming harness made so I can actually send you pre-programmed MDBT42Q modules now.

    If it was broken into several pages it would have been ideal.

    Yes, tell me about it. I don't know why ST did that :)

  • Photos of your programming harness @gordon ? Its seems you're further down the line getting something released ?

  • Sure - see below. It looks a bit basic, but it seems to work well (although I ought to do a new one with a more shallow angle on the pins as it requires a tiny bit of fiddling to get the module in).

    I tried making one with a proper frame where the pogo pins pressed down onto the back of the board, but it's too hard to get them to align reliably. By having the pins come in from the side the castellations help to locate them properly.

    1 Attachment

    • nRF52programmer.png
  • I should add - I ordered 300 MDBT42 modules, but I'm using the majority for some BLE conference badges and then some Patreon badges for the $20 supporters. When those are made in a few weeks time I should know how many I have left to sell programmed.

    If there's a decent amount of demand I'll place another order for modules :)

  • @Gordon, I hope this is not for the masses... What about a template with slots on a 3D printer 'table' with pogos on the print carriage?

  • You mean for programming multiple devices? The issue is really when trying to do it from the top or the bottom - the side is much easier.

    To be honest this (or something like it) will do me for < 10 a day, and for more I can order the devices pre-flashed from Raytac. The issue is just that Raytac won't do that for less than 1000, and I don't want to have 1000 devices with out of date firmware sitting around forever. This is a good middle ground until I sell enough to make it worth getting it done elsewhere :)

  • What sort of price do you think you could supply programmed devices ? Your >20/50/100 breakdown would be interesting also !

    Re Pico RAM - from spec I thought it was 96kb ? So more than the nrf52 64kb ? Or is that not the case.

  • Re Pico RAM - from spec I thought it was 96kb ?

    You're right, sorry about that. I'm not thinking straight. Pico is 96k, nRf52 is 64k. I should be able to get a few more variables than 2000 it, but not as many more as I'd thought originally.

    There's also the nRF52840 coming out, which looks crazy - 1MB flash, 256kB RAM! I'm not 100% sure if I'll be able to get that in a package that's as approachable as the MDBT42Q though.

    These aren't 100% final, but I should be able to do something like:

    • 1 - $16
    • 5 - $14
    • 10 - $12
    • 50 - $10
    • 100 - $8
  • A board with the nRF52840 would be amazing! I am waiting for the first boards to be available for quite a while now.

  • @Frida, was thinking about a similar jig, but with the proper spacing for the castellations. The contacts/probes have to be spring loadable and guided by a grooves or slits with proper pitch.

  • @Frida that could work - the problem is the spacing (0.7mm I think?) makes it quite hard to separate the pins - but then I guess I only need a few to be connected, not all of them.

    Does anyone know of any common edge connectors with a (roughly) 0.7mm spacing? If there was something like PCIe then it'd be trivial to cut the connector in half. I guess 1mm PCIe might even be close enough.

    Even so, it looks like for small quantities the current jig (or a variant on it) works well enough, and for bigger quantities I can order them pre-programmed. If I could get enough preorders I could place a big order directly and could definitely hit a lower price-point - it's just trying to avoid having hundreds of modules with old firmware kicking around :)

    @PaddeK it looks like the production nRF52840s will appear around February, but then if I'm going to use a module again it'll be a bit after that since the module makers take a while. I'm quite excited about the USB and internal voltage regulator though - it means there's very little on the board apart from the chip itself.

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

Next BLE

Posted by Avatar for Adam79 @Adam79