• I have a 32-bit version of Windows 10 (Home) which is not supporting Web Bluetooth.
    As it's 32-bit I can't use the Native Web IDE which is 64-bit. I already bought a new Bluetooth 4.0-dongle to use with my Pucks as my old Bluetooth-dongle is too old.

    How can I now connect and program the Pucks from my PC using Bluetooth?

  • At the moment, there is no app that you can just install and run.

    Do you have a Raspberry Pi? That probably be the easiest way to connect and program the Pucks if you do: http://www.espruino.com/Raspberry+Pi+Web­+IDE

    Or are you a node.js developer? If so you might find it easy to install the Web IDE directly from NPM. As you're using an external dongle you could just follow the quick start directions for Windows 7, and could then use noble - which should 'just work'.

    Otherwise early next year Google should be producing Web Bluetooth for Chrome for Windows, and then everything will 'just work' perfectly for you

  • Sorry, no Raspberry Pi, neither node.js developer. I have a Win 8.1 64-bit work computer, I'll try to install the BT dongle there and try. The built-in Bluetooth did find the Pucks but was not able to pair with them.

  • Not able to get the CSR 4.0 to work on my Win 8.1 64-bit computer, perhaps because it has built-in BT (that I don't want to disable as this is my work computer). And the built-in BT does find the Pucks, but is not successful in pairing with them...
    I've been able to connect to the Pucks from my iPhone/Bluefruit, is there any similar app as the Espruino IDE that I can use to program the Pucks with from iOs (iPhone/iPad)?

  • FWIW I tried a Win 10 64-bit laptop with a built in Bluetooth radio (Intel) and it didn't see the Puck. So I disabled the built in Bluetooth radio and tried a CSR 4.0 dongle. The CSR saw the Puck but would not work past that point ("wrong code received").
    I then removed the CSR drivers and re-enabled the built in Bluetooth radio and the Puck still could not be found but it now it does show up in Device Manager and the standalone web IDE just works fine.

  • Hmm - where did the '"wrong code received"' error come from?

    @user71352 there isn't an IDE for iOS yet - but I am working on it, and it should be there in the new year sometime.

    I'll see what I can do about a 32 bit compile of everything today - but unfortunately I have no way to test it so I can't promise anything.

  • @Gordon "wrong code received" came from the CSR software off the CD that the dongle came with. I have removed all that and it now works very well using the built in Bluetooth.

  • Finally I was able to get the CSR-dongle on my 32-bit Win10-computer to pair with a Puck. @Gordon, I'd appreciate very much a 32-bit compile, I'd test it and give feedback to you

  • Thanks! I'm out of time today, but I will give it a go tomorrow.

  • Ok, I haven't been able to get the Web IDE compiled for 32 bit - for some reason I'm just not able to compile working 32 bit binaries for node.js here. However I have uploaded a few extra files, so if you follow the instructions at: http://www.espruino.com/Puck.js+Quick+St­art#command-line

    Then it may work for you... When installing Node, choose the LTS version.

    It is possible that it will still fail (because it won't be able to compile the native node.js modules), but perhaps someone on the forum who either knows a lot about Node.js, or who has a 32 bit PC and Node.js set up with Visual Studio will be able to install the espruino tools and then zip them up and send them to you.

    If that works, you could also try npm install -g espruino-web-ide and then running espruino-server and connecting to localhost:8080 - that would get everything working perfectly for you.

    Sorry I can't be more help at the moment...

  • Thanks @Gordon for trying!
    Node (LTS) installed successfully
    Unfortunately it seems that the npm-installation part is not successful, is Python needed as there's an error message related to that?

    Here's the result of the installation:

    C:\Users\Admin>npm install -g espruino
    C:\Users\Admin\AppData\Roaming\npm\espru­ino -> C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\bin\espruino-cli.js
    
    > usb@1.2.0 install C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\usb
    > node-pre-gyp install --fallback-to-build
    
    [usb] Success: "C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino\node_modules\usb\src\b­inding\usb_bindings.node" is installed via remote
    
    > bluetooth-hci-socket@0.5.1 install C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\bluetooth-­hci-socket
    > node-gyp rebuild
    
    
    C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\bluetooth-­hci-socket>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-g­yp-bin\\..\..\node_modules\node-gyp\bin\­node-gyp.js" rebuild )  else (node "" rebuild )
    gyp ERR! configure error
    gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
    gyp ERR! stack     at failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modul­es\node-gyp\lib\configure.js:449:14)
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modul­es\node-gyp\lib\configure.js:404:11
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modul­es\graceful-fs\polyfills.js:264:29
    gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:123:15)
    gyp ERR! System Windows_NT 10.0.14393
    gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_m­odules\\node-gyp\\bin\\node-gyp.js" "rebuild"
    gyp ERR! cwd C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\bluetooth-­hci-socket
    gyp ERR! node -v v6.9.2
    gyp ERR! node-gyp -v v3.4.0
    gyp ERR! not ok
    
    > serialport@4.0.7 install C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\serialport­
    > node-pre-gyp install --fallback-to-build
    
    [serialport] Success: "C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino\node_modules\serialpor­t\build\Release\serialport.node" is installed via remote
    
    > winnus@0.0.2 install C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\winnus
    > node-gyp rebuild
    
    
    C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\winnus>if not defined npm_config_node_gyp (node "C:\Program Files\nodejs\node_modules\npm\bin\node-g­yp-bin\\..\..\node_modules\node-gyp\bin\­node-gyp.js" rebuild )  else (node "" rebuild )
    gyp ERR! configure error
    gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
    gyp ERR! stack     at failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modul­es\node-gyp\lib\configure.js:449:14)
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modul­es\node-gyp\lib\configure.js:404:11
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modul­es\graceful-fs\polyfills.js:264:29
    gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:123:15)
    gyp ERR! System Windows_NT 10.0.14393
    gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_m­odules\\node-gyp\\bin\\node-gyp.js" "rebuild"
    gyp ERR! cwd C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\winnus
    gyp ERR! node -v v6.9.2
    gyp ERR! node-gyp -v v3.4.0
    gyp ERR! not ok
    C:\Users\Admin\AppData\Roaming\npm
    `-- espruino@0.0.30
      +-- acorn@4.0.4
      +-- es6-shim@0.35.2
      +-- escodegen@1.8.1
      | +-- esprima@2.7.3
      | +-- estraverse@1.9.3
      | +-- esutils@2.0.2
      | +-- optionator@0.8.2
      | | +-- deep-is@0.1.3
      | | +-- fast-levenshtein@2.0.5
      | | +-- levn@0.3.0
      | | +-- prelude-ls@1.1.2
      | | +-- type-check@0.3.2
      | | `-- wordwrap@1.0.0
      | `-- source-map@0.2.0
      |   `-- amdefine@1.0.1
      +-- esmangle@1.0.1
      | +-- escodegen@1.3.3
      | +-- escope@1.0.3
      | | `-- estraverse@2.0.0
      | +-- esprima@1.1.1
      | +-- esshorten@1.1.1
      | | `-- estraverse@4.1.1
      | +-- estraverse@1.5.1
      | +-- esutils@1.0.0
      | +-- optionator@0.3.0
      | | +-- fast-levenshtein@1.0.7
      | | +-- levn@0.2.5
      | | `-- wordwrap@0.0.3
      | `-- source-map@0.1.43
      +-- esprima@3.1.2
      +-- noble@1.7.0
      | +-- bplist-parser@0.0.6
      | `-- debug@2.2.0
      |   `-- ms@0.7.1
      +-- request@2.79.0
      | +-- aws-sign2@0.6.0
      | +-- aws4@1.5.0
      | +-- caseless@0.11.0
      | +-- combined-stream@1.0.5
      | | `-- delayed-stream@1.0.0
      | +-- extend@3.0.0
      | +-- forever-agent@0.6.1
      | +-- form-data@2.1.2
      | | `-- asynckit@0.4.0
      | +-- har-validator@2.0.6
      | | +-- chalk@1.1.3
      | | | +-- ansi-styles@2.2.1
      | | | +-- escape-string-regexp@1.0.5
      | | | +-- has-ansi@2.0.0
      | | | | `-- ansi-regex@2.0.0
      | | | +-- strip-ansi@3.0.1
      | | | `-- supports-color@2.0.0
      | | +-- is-my-json-valid@2.15.0
      | | | +-- generate-function@2.0.0
      | | | +-- generate-object-property@1.2.0
      | | | | `-- is-property@1.0.2
      | | | +-- jsonpointer@4.0.1
      | | | `-- xtend@4.0.1
      | | `-- pinkie-promise@2.0.1
      | |   `-- pinkie@2.0.4
      | +-- hawk@3.1.3
      | | +-- boom@2.10.1
      | | +-- cryptiles@2.0.5
      | | +-- hoek@2.16.3
      | | `-- sntp@1.0.9
      | +-- http-signature@1.1.1
      | | +-- assert-plus@0.2.0
      | | +-- jsprim@1.3.1
      | | | +-- extsprintf@1.0.2
      | | | +-- json-schema@0.2.3
      | | | `-- verror@1.3.6
      | | `-- sshpk@1.10.1
      | |   +-- asn1@0.2.3
      | |   +-- assert-plus@1.0.0
      | |   +-- bcrypt-pbkdf@1.0.0
      | |   +-- dashdash@1.14.1
      | |   | `-- assert-plus@1.0.0
      | |   +-- ecc-jsbn@0.1.1
      | |   +-- getpass@0.1.6
      | |   | `-- assert-plus@1.0.0
      | |   +-- jodid25519@1.0.2
      | |   +-- jsbn@0.1.0
      | |   `-- tweetnacl@0.14.5
      | +-- is-typedarray@1.0.0
      | +-- isstream@0.1.2
      | +-- json-stringify-safe@5.0.1
      | +-- mime-types@2.1.13
      | | `-- mime-db@1.25.0
      | +-- oauth-sign@0.8.2
      | +-- qs@6.3.0
      | +-- stringstream@0.0.5
      | +-- tough-cookie@2.3.2
      | | `-- punycode@1.4.1
      | +-- tunnel-agent@0.4.3
      | `-- uuid@3.0.1
      +-- serialport@4.0.7
      | +-- bindings@1.2.1
      | +-- commander@2.9.0
      | | `-- graceful-readlink@1.0.1
      | +-- debug@2.5.1
      | | `-- ms@0.7.2
      | +-- lie@3.1.0
      | | `-- immediate@3.0.6
      | +-- nan@2.4.0
      | +-- node-pre-gyp@0.6.32
      | | +-- mkdirp@0.5.1
      | | | `-- minimist@0.0.8
      | | +-- nopt@3.0.6
      | | | `-- abbrev@1.0.9
      | | +-- npmlog@4.0.1
      | | | +-- are-we-there-yet@1.1.2
      | | | | +-- delegates@1.0.0
      | | | | `-- readable-stream@2.2.2
      | | | |   +-- buffer-shims@1.0.0
      | | | |   +-- core-util-is@1.0.2
      | | | |   +-- inherits@2.0.3
      | | | |   +-- isarray@1.0.0
      | | | |   +-- process-nextick-args@1.0.7
      | | | |   +-- string_decoder@0.10.31
      | | | |   `-- util-deprecate@1.0.2
      | | | +-- console-control-strings@1.1.0
      | | | +-- gauge@2.7.2
      | | | | +-- aproba@1.0.4
      | | | | +-- has-unicode@2.0.1
      | | | | +-- object-assign@4.1.0
      | | | | +-- signal-exit@3.0.2
      | | | | +-- string-width@1.0.2
      | | | | | +-- code-point-at@1.1.0
      | | | | | `-- is-fullwidth-code-point@1.0.0
      | | | | |   `-- number-is-nan@1.0.1
      | | | | +-- strip-ansi@3.0.1
      | | | | | `-- ansi-regex@2.0.0
      | | | | +-- supports-color@0.2.0
      | | | | `-- wide-align@1.1.0
      | | | `-- set-blocking@2.0.0
      | | +-- rc@1.1.6
      | | | +-- deep-extend@0.4.1
      | | | +-- ini@1.3.4
      | | | +-- minimist@1.2.0
      | | | `-- strip-json-comments@1.0.4
      | | +-- request@2.79.0
      | | | +-- aws-sign2@0.6.0
      | | | +-- aws4@1.5.0
      | | | +-- caseless@0.11.0
      | | | +-- combined-stream@1.0.5
      | | | | `-- delayed-stream@1.0.0
      | | | +-- extend@3.0.0
      | | | +-- forever-agent@0.6.1
      | | | +-- form-data@2.1.2
      | | | | `-- asynckit@0.4.0
      | | | +-- har-validator@2.0.6
      | | | | +-- chalk@1.1.3
      | | | | | +-- ansi-styles@2.2.1
      | | | | | +-- escape-string-regexp@1.0.5
      | | | | | +-- has-ansi@2.0.0
      | | | | | | `-- ansi-regex@2.0.0
      | | | | | +-- strip-ansi@3.0.1
      | | | | | | `-- ansi-regex@2.0.0
      | | | | | `-- supports-color@2.0.0
      | | | | +-- is-my-json-valid@2.15.0
      | | | | | +-- generate-function@2.0.0
      | | | | | +-- generate-object-property@1.2.0
      | | | | | | `-- is-property@1.0.2
      | | | | | +-- jsonpointer@4.0.0
      | | | | | `-- xtend@4.0.1
      | | | | `-- pinkie-promise@2.0.1
      | | | |   `-- pinkie@2.0.4
      | | | +-- hawk@3.1.3
      | | | | +-- boom@2.10.1
      | | | | +-- cryptiles@2.0.5
      | | | | +-- hoek@2.16.3
      | | | | `-- sntp@1.0.9
      | | | +-- http-signature@1.1.1
      | | | | +-- assert-plus@0.2.0
      | | | | +-- jsprim@1.3.1
      | | | | | +-- extsprintf@1.0.2
      | | | | | +-- json-schema@0.2.3
      | | | | | `-- verror@1.3.6
      | | | | `-- sshpk@1.10.1
      | | | |   +-- asn1@0.2.3
      | | | |   +-- assert-plus@1.0.0
      | | | |   +-- bcrypt-pbkdf@1.0.0
      | | | |   +-- dashdash@1.14.1
      | | | |   +-- ecc-jsbn@0.1.1
      | | | |   +-- getpass@0.1.6
      | | | |   +-- jodid25519@1.0.2
      | | | |   +-- jsbn@0.1.0
      | | | |   `-- tweetnacl@0.14.4
      | | | +-- is-typedarray@1.0.0
      | | | +-- isstream@0.1.2
      | | | +-- json-stringify-safe@5.0.1
      | | | +-- mime-types@2.1.13
      | | | | `-- mime-db@1.25.0
      | | | +-- oauth-sign@0.8.2
      | | | +-- qs@6.3.0
      | | | +-- stringstream@0.0.5
      | | | +-- tough-cookie@2.3.2
      | | | | `-- punycode@1.4.1
      | | | +-- tunnel-agent@0.4.3
      | | | `-- uuid@3.0.1
      | | +-- rimraf@2.5.4
      | | | `-- glob@7.1.1
      | | |   +-- fs.realpath@1.0.0
      | | |   +-- inflight@1.0.6
      | | |   | `-- wrappy@1.0.2
      | | |   +-- inherits@2.0.3
      | | |   +-- minimatch@3.0.3
      | | |   | `-- brace-expansion@1.1.6
      | | |   |   +-- balanced-match@0.4.2
      | | |   |   `-- concat-map@0.0.1
      | | |   +-- once@1.4.0
      | | |   | `-- wrappy@1.0.2
      | | |   `-- path-is-absolute@1.0.1
      | | +-- semver@5.3.0
      | | +-- tar@2.2.1
      | | | +-- block-stream@0.0.9
      | | | +-- fstream@1.0.10
      | | | | `-- graceful-fs@4.1.11
      | | | `-- inherits@2.0.3
      | | `-- tar-pack@3.3.0
      | |   +-- debug@2.2.0
      | |   | `-- ms@0.7.1
      | |   +-- fstream@1.0.10
      | |   | +-- graceful-fs@4.1.11
      | |   | `-- inherits@2.0.3
      | |   +-- fstream-ignore@1.0.5
      | |   | +-- inherits@2.0.3
      | |   | `-- minimatch@3.0.3
      | |   |   `-- brace-expansion@1.1.6
      | |   |     +-- balanced-match@0.4.2
      | |   |     `-- concat-map@0.0.1
      | |   +-- once@1.3.3
      | |   | `-- wrappy@1.0.2
      | |   +-- readable-stream@2.1.5
      | |   | +-- buffer-shims@1.0.0
      | |   | +-- core-util-is@1.0.2
      | |   | +-- inherits@2.0.3
      | |   | +-- isarray@1.0.0
      | |   | +-- process-nextick-args@1.0.7
      | |   | +-- string_decoder@0.10.31
      | |   | `-- util-deprecate@1.0.2
      | |   `-- uid-number@0.0.6
      | `-- object.assign@4.0.4
      |   +-- define-properties@1.1.2
      |   | `-- foreach@2.0.5
      |   +-- function-bind@1.1.0
      |   `-- object-keys@1.0.11
      +-- tar.gz@1.0.5
      | +-- bluebird@2.11.0
      | +-- fstream@1.0.10
      | | +-- graceful-fs@4.1.11
      | | +-- inherits@2.0.3
      | | +-- mkdirp@0.5.1
      | | | `-- minimist@0.0.8
      | | `-- rimraf@2.5.4
      | |   `-- glob@7.1.1
      | |     +-- fs.realpath@1.0.0
      | |     +-- inflight@1.0.6
      | |     | `-- wrappy@1.0.2
      | |     +-- minimatch@3.0.3
      | |     | `-- brace-expansion@1.1.6
      | |     |   +-- balanced-match@0.4.2
      | |     |   `-- concat-map@0.0.1
      | |     +-- once@1.4.0
      | |     `-- path-is-absolute@1.0.1
      | +-- mout@0.11.1
      | `-- tar@2.2.1
      |   `-- block-stream@0.0.9
      `-- utf8@2.1.2
    
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@~0.1.4 (node_modules\espruino\node_modules\nobl­e\node_modules\xpc-connection):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for xpc-connection@0.1.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"ia32"})
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@0.5.1 (node_modules\espruino\node_modules\blue­tooth-hci-socket):
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@0.5.1 install: `node-gyp rebuild`
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: winnus@0.0.2 (node_modules\espruino\node_modules\winn­us):
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: winnus@0.0.2 install: `node-gyp rebuild`
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
    
    C:\Users\Admin>npm install -g espruino >esprinst.txt
    gyp ERR! configure error
    gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
    gyp ERR! stack     at failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modul­es\node-gyp\lib\configure.js:449:14)
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modul­es\node-gyp\lib\configure.js:404:11
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modul­es\graceful-fs\polyfills.js:264:29
    gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:123:15)
    gyp ERR! System Windows_NT 10.0.14393
    gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_m­odules\\node-gyp\\bin\\node-gyp.js" "rebuild"
    gyp ERR! cwd C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\bluetooth-­hci-socket
    gyp ERR! node -v v6.9.2
    gyp ERR! node-gyp -v v3.4.0
    gyp ERR! not ok
    gyp ERR! configure error
    gyp ERR! stack Error: Can't find Python executable "python", you can set the PYTHON env variable.
    gyp ERR! stack     at failNoPython (C:\Program Files\nodejs\node_modules\npm\node_modul­es\node-gyp\lib\configure.js:449:14)
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modul­es\node-gyp\lib\configure.js:404:11
    gyp ERR! stack     at C:\Program Files\nodejs\node_modules\npm\node_modul­es\graceful-fs\polyfills.js:264:29
    gyp ERR! stack     at FSReqWrap.oncomplete (fs.js:123:15)
    gyp ERR! System Windows_NT 10.0.14393
    gyp ERR! command "C:\\Program Files\\nodejs\\node.exe" "C:\\Program Files\\nodejs\\node_modules\\npm\\node_m­odules\\node-gyp\\bin\\node-gyp.js" "rebuild"
    gyp ERR! cwd C:\Users\Admin\AppData\Roaming\npm\node_­modules\espruino\node_modules\winnus
    gyp ERR! node -v v6.9.2
    gyp ERR! node-gyp -v v3.4.0
    gyp ERR! not ok
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: xpc-connection@~0.1.4 (node_modules\espruino\node_modules\nobl­e\node_modules\xpc-connection):
    npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for xpc-connection@0.1.4: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"ia32"})
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@0.5.1 (node_modules\espruino\node_modules\blue­tooth-hci-socket):
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: bluetooth-hci-socket@0.5.1 install: `node-gyp rebuild`
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: winnus@0.0.2 (node_modules\espruino\node_modules\winn­us):
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: winnus@0.0.2 install: `node-gyp rebuild`
    npm WARN optional SKIPPING OPTIONAL DEPENDENCY: Exit status 1
    
    
  • Thanks for posting it up - sadly that's as I thought... the node-gyp rebuild bit near the start means that it hasn't been able to download a pre-built version of the files for you to use - so it's trying to compile them (to do that it needs Python and Visual Studio).

    Python is a relatively small download, but Visual Studio is around 15GB! You can do that (there are tutorials online) but if someone else on the forum already has their PC set up (a lot of Node.js developers will - why I asked before) then they'll be able to get this going for you pretty quickly (especially if they are on 32 bit windows).

  • Ok, hopefully someone chimes in with some help. I can create another post, but to be honest I'm not sure what I really would ask for... there are so many new bits and pieces for me to understand.

  • I know - it's just bad timing. When I did the KickStarter it seemed like Web Bluetooth in Chrome for Windows would be done well before I shipped the Pucks.

    Unfortunately it's not there yet - but hopefully early next year it'll be done, and then Puck.js will be really easy to use on 32 and 64 bit windows

    • I installed Python and VisualStudio to the Win-32 machine
    • Run 'npm install -g espruino-web-ide' which now was successful.
    • Paired from within Win-10 to one of the pucks.
    • Run 'espruino-server' which gives the message further below about 'noble' module and no node.js
    • Tried in another command window 'espruino --list', but it didn't find any ports to connect to.

    ==> Still stuck but perhaps this helps in troubleshooting

    C:\Users\Admin>"C:\Program Files\nodejs\node.exe" "C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino-web-ide\server.js" 
    'noble' module couldn't be loaded, no node.js Bluetooth Low Energy
     { Error: LIBUSB_ERROR_NOT_SUPPORTED
        at Error (native)
        at Device.usb.Device.open (C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino-web-ide\node_modules\u­sb\usb.js:33:7)
        at BluetoothHciSocket.bindUser (C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino-web-ide\node_modules\b­luetooth-hci-socket\lib\usb.js:73:19)
        at BluetoothHciSocket.bindRaw (C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino-web-ide\node_modules\b­luetooth-hci-socket\lib\usb.js:28:8)
        at Hci.init (C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino-web-ide\node_modules\n­oble\lib\hci-socket\hci.js:99:35)
        at NobleBindings.init (C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino-web-ide\node_modules\n­oble\lib\hci-socket\bindings.js:83:13)
        at new Noble (C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino-web-ide\node_modules\n­oble\lib\noble.js:50:18)
        at Object.<anonymous> (C:\Users\Admin\AppData\Roaming\npm\node­_modules\espruino-web-ide\node_modules\n­oble\index.js:4:18)
        at Module._compile (module.js:570:32)
        at Object.Module._extensions..js (module.js:579:10) errno: -12 }
    Fri Dec 23 2016 18:41:38 GMT+0200 (FLE Standard Time) Server is listening on port 8080
    
  • Thanks - that looks promising! I just checked and it looks like espruino-server doesn't support using winnus at the moment - which is what I'm using for the Windows 10 Bluetooth LE (sorry about that)

    Since you have noble working there is one option which is to use zadig to swap your Bluetooth LE adaptor over from the windows driver to WinUSB. It'd disable Bluetooth LE support for Windows but might let the Web IDE use Bluetooth.

    Or, try npm install -g espruino now you have everything set up.

    You should then be able to run espruino to get the command-line app, and that should be able to communicate with the Puck. It's not the IDE, but is a start, and shows everything is working.

  • Thx @Gordon, finally I was able to communicate through Win10 (32-bit) with the command-line app! I'll try the Zadig option later to check the Web IDE.

  • Great! When I get a moment I'll try and add the Window 10 functionality into the espruino-web-ide module

  • Just to add, there is now a proper 32 bit IDE installer: http://www.espruino.com/Web+IDE

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

Win10 32-bit = not able to connect to Puck through Bluetooth?

Posted by Avatar for ThomasVikström @ThomasVikström

Actions