<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[MMM-Fitbit2 Install Process]]></title><description><![CDATA[<p dir="auto">I’m new to Magic Mirror and module installs therefore, I am stumped on next step to install dependencies for MMM-Fitbit2.   I’m in the directory <strong>MagicMirror/modules/MMM-Fitbit2</strong> and ran the command <strong>./init.sh</strong>, however, I received this error: npm ERR! must provide string spec</p>
]]></description><link>https://forum.magicmirror.builders/topic/17997/mmm-fitbit2-install-process</link><generator>RSS for Node</generator><lastBuildDate>Thu, 11 Jun 2026 00:32:00 GMT</lastBuildDate><atom:link href="https://forum.magicmirror.builders/topic/17997.rss" rel="self" type="application/rss+xml"/><pubDate>Wed, 13 Sep 2023 01:33:20 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 20:41:04 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> Check that you have the correct client ID, client secret, and the redirect URI.</p>
]]></description><link>https://forum.magicmirror.builders/post/110918</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110918</guid><dc:creator><![CDATA[Vizulize]]></dc:creator><pubDate>Thu, 14 Sep 2023 20:41:04 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Sat, 16 Sep 2023 23:25:56 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/vizulize" aria-label="Profile: Vizulize">@<bdi>Vizulize</bdi></a> this module is working on my mirror, thank you!</p>
]]></description><link>https://forum.magicmirror.builders/post/110938</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110938</guid><dc:creator><![CDATA[En-TACT]]></dc:creator><pubDate>Sat, 16 Sep 2023 23:25:56 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 20:41:04 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> Check that you have the correct client ID, client secret, and the redirect URI.</p>
]]></description><link>https://forum.magicmirror.builders/post/110918</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110918</guid><dc:creator><![CDATA[Vizulize]]></dc:creator><pubDate>Thu, 14 Sep 2023 20:41:04 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 20:01:21 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> I do not know this part of the app process. sorry… the author will have to help here</p>
]]></description><link>https://forum.magicmirror.builders/post/110916</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110916</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Thu, 14 Sep 2023 20:01:21 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 20:04:04 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a> I got a bit further than before after entering my authorization credentials … the Chrome browser eventually opened, logon Fitbit site, and selected all options.  However, after I clicked accept, received this browser error message:</p>
<p dir="auto">500 Internal Server Error<br />
The server encountered an unexpected condition which prevented it from fulfilling the request.</p>
<p dir="auto">Traceback (most recent call last):<br />
File “/home/pi/.local/lib/python3.9/site-packages/cherrypy/_cprequest.py”, line 638, in respond<br />
self._do_respond(path_info)<br />
File “/home/pi/.local/lib/python3.9/site-packages/cherrypy/_cprequest.py”, line 697, in _do_respond<br />
response.body = self.handler()<br />
File “/home/pi/.local/lib/python3.9/site-packages/cherrypy/lib/encoding.py”, line 223, in <strong>call</strong><br />
self.body = self.oldhandler(*args, **kwargs)<br />
File “/home/pi/.local/lib/python3.9/site-packages/cherrypy/_cpdispatch.py”, line 54, in <strong>call</strong><br />
return self.callable(*self.args, **self.kwargs)<br />
File “/home/pi/MagicMirror/modules/MMM-Fitbit2/python/setup_access.py”, line 58, in index<br />
self.oauth.fetch_access_token(code, self.redirect_uri)<br />
File “/home/pi/.local/lib/python3.9/site-packages/fitbit/api.py”, line 142, in fetch_access_token<br />
return self.session.fetch_token(<br />
File “/usr/lib/python3/dist-packages/requests_oauthlib/oauth2_session.py”, line 244, in fetch_token<br />
self._client.parse_request_body_response(r.text, scope=self.scope)<br />
File “/usr/lib/python3/dist-packages/oauthlib/oauth2/rfc6749/clients/base.py”, line 421, in parse_request_body_response<br />
self.token = parse_token_response(body, scope=scope)<br />
File “/usr/lib/python3/dist-packages/oauthlib/oauth2/rfc6749/parameters.py”, line 431, in parse_token_response<br />
validate_token_parameters(params)<br />
File “/usr/lib/python3/dist-packages/oauthlib/oauth2/rfc6749/parameters.py”, line 438, in validate_token_parameters<br />
raise_from_error(params.get(‘error’), params)<br />
File “/usr/lib/python3/dist-packages/oauthlib/oauth2/rfc6749/errors.py”, line 405, in raise_from_error<br />
raise cls(**kwargs)<br />
oauthlib.oauth2.rfc6749.errors.InvalidClientError: (invalid_client)</p>
]]></description><link>https://forum.magicmirror.builders/post/110915</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110915</guid><dc:creator><![CDATA[En-TACT]]></dc:creator><pubDate>Thu, 14 Sep 2023 20:04:04 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 18:25:22 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> The script runs python3 not python</p>
]]></description><link>https://forum.magicmirror.builders/post/110913</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110913</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Thu, 14 Sep 2023 18:25:22 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 17:17:39 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a> I ran the command, python --version.  Returned Python 3.9.2.</p>
<p dir="auto">Does that suffice, or is there something I can run to check python is properly installed?</p>
]]></description><link>https://forum.magicmirror.builders/post/110909</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110909</guid><dc:creator><![CDATA[En-TACT]]></dc:creator><pubDate>Thu, 14 Sep 2023 17:17:39 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 16:56:37 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> The first step is done No need to fix that.</p>
<p dir="auto">you should not do the NPM init at all<br />
as it will overwrite the package.json the author provided</p>
<p dir="auto">The other two steps depend on Python3 and I don’t know if the system you’re using has Python3 installed properly yet. The raspberry pi does not come with python3 installed by default</p>
]]></description><link>https://forum.magicmirror.builders/post/110908</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110908</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Thu, 14 Sep 2023 16:56:37 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 16:35:18 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/sdetweil" aria-label="Profile: sdetweil">@<bdi>sdetweil</bdi></a>, should I repeat those steps again with first line sudo?  Or, should I remove MMM-Fitbit module and start anew?</p>
<p dir="auto">Just to be thorough to repeat the steps, I would run:</p>
<p dir="auto">sudo npm i -g npm-check-updates<br />
npm init<br />
npm install<br />
./init.sh</p>
]]></description><link>https://forum.magicmirror.builders/post/110907</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110907</guid><dc:creator><![CDATA[En-TACT]]></dc:creator><pubDate>Thu, 14 Sep 2023 16:35:18 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 16:31:10 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/vizulize" aria-label="Profile: Vizulize">@<bdi>Vizulize</bdi></a> ,  I’m on authorization step.   After I enter ./auth.sh via terminal, it prompts me for clientID and clientSecret.  I can see the alpha-numeric characters I typed for clientID, but not for clientSecret.  The cursor just sits there … is this intended?  After I press enter, it does not open a browser.<br />
Also, no python/tokens-.json file was creadted.  Therefore my Fitbit module is only showing “Loading”.</p>
<p dir="auto">My setup:</p>
<ul>
<li>Raspberry Pi 3 B+ v1.2</li>
<li>USB Keyboard</li>
<li>Wireless Mouse</li>
<li>Raspbian Linux 11 (bullseye)</li>
</ul>
<p dir="auto">Thanks!</p>
]]></description><link>https://forum.magicmirror.builders/post/110910</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110910</guid><dc:creator><![CDATA[En-TACT]]></dc:creator><pubDate>Thu, 14 Sep 2023 16:31:10 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 16:24:23 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> you should not use sudo except for the first line where you were updating the global NPM version everything else should have been without sudo.</p>
<p dir="auto">using sudo marks all the files as owned by root not by the user and that causes execution problems, has magic mirror runs under the users permission not root.</p>
]]></description><link>https://forum.magicmirror.builders/post/110906</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110906</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Thu, 14 Sep 2023 16:24:23 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 15:47:08 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> I am the author. What is your setup? Are you trying to run it headlessly?</p>
]]></description><link>https://forum.magicmirror.builders/post/110905</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110905</guid><dc:creator><![CDATA[Vizulize]]></dc:creator><pubDate>Thu, 14 Sep 2023 15:47:08 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Thu, 14 Sep 2023 11:10:41 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/vizulize" aria-label="Profile: Vizulize">@<bdi>Vizulize</bdi></a>, thank you for that support page!  The following commands worked for me to install dependencies:</p>
<p dir="auto">sudo npm i -g npm-check-updates<br />
sudo npm init<br />
sudo npm install<br />
sudo ./init.sh</p>
<p dir="auto">Now, I’m stuck on the authorization step.  After entering ./auth.sh, it idles after I enter my client ID and clientSecret  -supposed to open a browser and create the python/tokens-.json file.</p>
<p dir="auto">Would love to have this running, but I think this module needs attention.  I’ll reach out again to the author.</p>
]]></description><link>https://forum.magicmirror.builders/post/110903</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110903</guid><dc:creator><![CDATA[En-TACT]]></dc:creator><pubDate>Thu, 14 Sep 2023 11:10:41 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Wed, 13 Sep 2023 22:23:33 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> <code>init.sh</code> just runs <code>npm install</code> (<a href="https://github.com/m-roberts/MMM-Fitbit2/blob/master/init.sh#L8" target="_blank" rel="noopener noreferrer nofollow ugc">ref</a>), so you can try <a href="https://stackoverflow.com/questions/70645510/npm-install-gets-the-error-must-provide-string-spec" target="_blank" rel="noopener noreferrer nofollow ugc">the various StackOverflow suggestions</a> to see if they help.</p>
]]></description><link>https://forum.magicmirror.builders/post/110902</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110902</guid><dc:creator><![CDATA[Vizulize]]></dc:creator><pubDate>Wed, 13 Sep 2023 22:23:33 GMT</pubDate></item><item><title><![CDATA[Reply to MMM-Fitbit2 Install Process on Wed, 13 Sep 2023 10:24:08 GMT]]></title><description><![CDATA[<p dir="auto"><a class="plugin-mentions-user plugin-mentions-a" href="/user/en-tact" aria-label="Profile: En-TACT">@<bdi>En-TACT</bdi></a> I think you will have to open an issue on the module GitHub page to engage the author to help fix this</p>
]]></description><link>https://forum.magicmirror.builders/post/110898</link><guid isPermaLink="true">https://forum.magicmirror.builders/post/110898</guid><dc:creator><![CDATA[sdetweil]]></dc:creator><pubDate>Wed, 13 Sep 2023 10:24:08 GMT</pubDate></item></channel></rss>