Avatar for Jean-Philippe_Rey

Jean-Philippe_Rey

Member since Apr 2015 • Last active Apr 2024
  • 49 conversations
  • 356 comments

What I like:

  • Espruino
  • IoT
  • More Espruino

What I do:
80% Hardware
15% Firmware
5%Software

Linkedin: linkedin.com/in/jprey
Twitter: https://twitter.com/yerpj

Most recent activity

  • in Puck.js, Pixl.js and MDBT42
    Avatar for Jean-Philippe_Rey

    Unfortunately I already restricted myself to using passive scan only, and the 47% RX rate is therefore for passive scan as well.

  • in Puck.js, Pixl.js and MDBT42
    Avatar for Jean-Philippe_Rey

    Thank you @fanoush for your help. I will definitely try to play with interval and window settings to see if I can increase the packet RX rate, however for my application, trying to synchronize with beacons's advertising interval will probably be too complicated for now.

    For those who are interested, after some endurance tests (1 week) with continuous scan, the packet RX rate was around 47%, with a beacon advertising sequentially in all 3 channels every 2 seconds.
    If I can increase this number thanks to interval and window settings, I will post result here.

    What I don't understand is that the raspberry Pi I am using for Home Assistant, achieves nearly 100% RX rate for Espruino devices advertising with BTHome. I guess the BLE advertising mechanism should be reliable enough to achieve 80%+ RX rate at least, maybe something is wrong with the way I am using setScan.

  • in ESP32
    Avatar for Jean-Philippe_Rey

    I am quite sure ESP32-C3 has USB built-in, where did you get this comparison chart from?

  • in Puck.js, Pixl.js and MDBT42
    Avatar for Jean-Philippe_Rey

    I actually managed to compile 2v21.84 for NRF52840DK, however I don't really know how to benefit from window/interval in NRF.setScan. Is there any way of consulting Espruino API reference (in a human readable manner) for a specific commit? As far as I understand, most of it is generated from comments in source code.

  • in Pico / Wifi / Original Espruino
    Avatar for Jean-Philippe_Rey

    I'm in the process of getting the first 1500 of https://www.espruino.com/Jolt.js ready

    Is there any "TAKE MY MONEY" waiting list in which I can buy a seat?

  • in ESP32
    Avatar for Jean-Philippe_Rey

    I would love to see a firmware for this platform as well, however it seems that it is a bit different than the other ESP32. Native USB (instead of a USB to serial chip on the board) and RISC-V processor...

  • Avatar for Jean-Philippe_Rey

    Yes - you should be able to use cutting edge builds for now though?

    I should be able, however I am running the application on a NRF21540 dev board (including PA+LNA chip) and it seems that cutting edge builds do not cover NRF52 dev boards anymore.

  • in Puck.js, Pixl.js and MDBT42
    Avatar for Jean-Philippe_Rey

    but recently at least the scan window and interval became configurable if that helps a bit

    Seems at least promising, I will have a try once available as a feature. As far as I understand it will be pushed in 2v22...

    Well those three channels is how BLE Advertising works, there is a reason for advertising on multiple channels. You risk missing some packets when your selected channel becomes temporarily unusable due to noise.

    Well that's for sure, it is generally not a good idea to limit advertising on a single channel only, however in our application we will use specific beacons in outdoor, countryside context, therefore 2.4GHz interference will probably be very limited.

    Thank you for your response and also for the work you did at providing scan window and interval to Espruino (not mentioning coded phy, BTW)

  • in Puck.js, Pixl.js and MDBT42
    Avatar for Jean-Philippe_Rey

    For a beacon ranging application, we use function NRF.setScan() to scan for beacons (TX every 1 second), with some appropriate filtering.
    We experienced some particular behaviour: Scanned packets are not equally spread over time. For some couple of seconds, every beacon advertising packet is beeing received, then nothing for the next few seconds, then again almost every packet received and so on. It seems like a stroboscopic effect, due to scanning window (https://academy.nordicsemi.com/wp-contenĀ­t/uploads/2023/03/blefund_less2_adv_procĀ­ess-1024x576.png).
    We want to try scanning on only 1 channel, thus avoiding dead time switching between channels 37, 38 and 39, but it seems that setScan method doesn't allow for such parameter.
    How complex would it be to modify setScan method to force receiving channel(s)? Would it make sense to add it as a feature to the official Espruino build?

Actions