Avatar for stephaneAG


Member since Jun 2014 • Last active Mar 2017
  • 9 conversations

'love hackety trick

Most recent activity

  • in Interfacing
    Avatar for stephaneAG

    ( 'just checked my DHL status: hardware's coming home :D )

    I'll post tests as soon as I receive & build the stuff ;)

  • in Interfacing
    Avatar for stephaneAG

    Thanks for the inputs :)

    I'll order some of the stuff I'm missing to test a build tomorrow, but in the meanwhile I did my best to translate the original code to js

    Concerning the strobe light & the electromagnet, since the original code doesn't use any waveform, I bet I can rely only on using the following, although I'm not sure how I'd use - if necessary - the 'magDuty' & 'ledDuty' vars ( 'magTime' & 'ledTime' shouldn't be needed since the freq is set thanks to analogWrite's 3rd param )

    analogWrite(magPin, 1, {freq:magFrequency}); // L98
    analogWrite(lightPin, 1, {freq:ledFrequency}); // L100

    Concerning the "water trick", I'm sure I didn't explain it well, so here it is:

    and also youtube.com/watch?v=uENITui5­_jU

    My goal 'd be to replace the camera by strobing lights ( keeping the effect we see through the camera thanks to the strobes )

    I'll post updates as they come ;)

  • in Interfacing
    Avatar for stephaneAG

    Hi there :)

    I was asked to recreate the idea demonstrated in these awesome setups:


    -> of course, Kudos to the respective original author ;)

    Now, after a quick read of the schematic involved:
    I could start a new version :)

    Now, all that is good, but looking at the code ( whatever the version .. github.com/cubic-print/timeframe­/tree/master/software) , it seems to be using some register's mambo-jambo tricks specific to the AT328P for precise timing purposes ( .. )

    I was wondering if I could achieve driving LED stripes in a "stroby manner" while simultaneously driving correctly the electromagnet using only js ( actual DACs or using PWM .. ) or if I had to look into writing a quick module that'd allow me to do so :)

    Long story short, the objects getting vibrations from the electromagnet have to oscillate at 80Hz while the LED stripes have to strobe at 79.5Hz to get a "beat freq" of 0.5hz, perceived by our eyes as a very slow motion ( etc .. ;p )

    For the fun of it, if anyone has hints/advices on the above, remember the "water + subwoofer + camera ( filming at 24 fps ) + audio waveform" trick ?
    By modulating the waveform from 23Hz to 25Hz, the water appeared to go backward or forward and also gives a really nice effect ..
    .. so another question may be how to replace the camera fps' by strobe lights while having those oscillating at a freq enough for our eyes to perceive the motion ? ..

    Looking forward to reading some answer on this,
    Happy coding !+

  • in Puck.js
    Avatar for stephaneAG

    Hi there

    For anon-going project, I need to know if some device(s) are within the range of a Puck, and, if within it, how close the device(s) is/are to the Puck.

    From what I could read in the ref, I see we can only "NRF.setRSSIHandler()" on the currently active connection, while we have an "rssi" prop in the "BluetoothDevice" objects returned by "NRF.findDevices()".

    For a single device, I presume that using "NRF.connect()" and then setting an interval to handle the RSSI 'd do the trick, but I was wondering what was the best way to achieve the same behavior for multiple devices: in other words, some sort of "NRF.findDevices()" discarding anything that not in our interest ( ex: devices whose names & stuff are not present in an array ) ?

    Anyway, I'll give both a try as soon as I can (..)
    -> any hints welcome ;)


  • in Puck.js
    Avatar for stephaneAG

    haha, glad to see it may be useful to others :)

    @Gordon From what I can remember, the last time I checked, Fritzing was moving from two ways to prepare the board's svgs ? ( namings & stuff ), but I'm no expert on that :¬ / ..

    When I got time to, I'll add the pin labels ( as svg elements IDs ) to the .svg following the same convention used on the original Espruino & Pico drawings ( so as to be able to "animated" those +/- like the quick demo on the "EspruinoMimetism" repo .. )

    Also, did any of you see this one ? seems Nordic's got plenty of customers ;p

    @Gordon btw, if not said already, I received all my Puck's & didn't have time to have fun with yet, but the sooner I got to these, the betteeeeeer => nice works on those ;)


  • in Puck.js
    Avatar for stephaneAG

    Hi there :)

    A quick Illustration for our beloved PuckJS :D

    Nb: the .ai & generated .svg has NOT yet the pins labelled ( & thus not usable "interactively" quickly by now ( .. ) )


    Enjoy :)

  • in ESP8266
    Avatar for stephaneAG

    Hi there
    sorry for the delay ( work :/ .. )

    answer from Greg Wang - Espressif Systems Customers service

    Yes, you can use flash more than 32Mbit. But the firmware is up to 32Mbit, no more. You can read and write the rest area as norma data storage.
    Currently we can support to 128Mbit max this way.

    ( confirmation of / additional info on answer by Pete Scargill - as @user67316 - who were kind enough to share it on page 6 of this topic )

    But only 1 meg for programs and possibly another meg for the OTA copy - the rest of the space could only be used for data - using for example the file system in the Arduino environment...

    During my latest tests, I had troubles flashing a NodeMCU ( ESP-12 ) board with the "latest" releases of both esptool.py & Espruino, even using dio & slower bauds didn't seems to do the trick :|
    -> I'll check again using the latest build provided here & post the results ( for: ESP-01, ESP-01 32M ( flash upgr. ), ESP-01 128M ( flash upgr. ), ESP-12 ( NodeMCU ) )

    On the crypto vs graphics topic, I'd say both are relevant ( though I'd 1st have fun with graphics than the other .. even after watching some Bruce Schneier talk ;p ) - so, additional param when building ?

    @JumJum actually don't know if this 'd help, but try using '%zu' or casting as '(unsigned long)theUint32tVar' ?