Jim Rome's Interactive Site http://jamesrome.net/drupal/ en A survey of DLNA/UPnP media servers http://jamesrome.net/drupal/UPnP <span class="field-wrapper">A survey of DLNA/UPnP media servers</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Tue, 07/21/2020 - 11:06</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/UPnP" hreflang="en">A survey of DLNA/UPnP media servers</a></h2> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><p>For many years now, I have been ripping my CDs to my computer and playing them using my Logitech Squeezebox Server (on my Linux computer) and listening to them via my Logitech Transporter players. However, time marches on, and now high-resolution audio is available on the internet via services such as Qobuz, Tidal, Spotify, etc. I highly recommend Qobuz, which offers audio streams up to 24-bit/192 kHz resolution. </p> <p>When my Cruise was canceled (due to Covid), I bought myself a DCS Bartók DAC ($13,500!) to replace the Transporters. But to play my computerized music collection, I needed a DLNA/UPnP server.  Such a server presents a list of available music and art to the player's control software. In the case of the DCS Bartók, this is an Android or IOS app called Mosaic. Mosaic searches for DLNA/UPnP servers on my network and presents the content to be selected and played.</p> <p>The issue is that it is the DLNA/UPnP server that determines how the content is arranged. For instance, DCS says "<a data-ember-action="" data-ember-action-24="24" href="https://dcs.community/t/mosaic-faq-why-is-minimserver-the-only-upnp-server-software-that-is-fully-supported-by-dcs/376">Why is MinimServer the only UPnP server software that is fully supported by dCS?</a>" Well, despite this unwarranted FUD (fear, uncertainty, doubt) there are many reasons to NOT use the minumServer. I have tried the following servers on my OpenSUSE LEAP 15.2 computer (except as indicated):</p> <table border="0" cellpadding="1" cellspacing="1" style="width: 600px;"><tbody><tr><td> <ul><li>MinumServer</li> <li>Kodi</li> <li>Subsonic</li> <li>Mezzmo (Windows 10)</li> <li>minidlna</li> </ul></td> <td><img alt="" data-entity-type="file" data-entity-uuid="5021b35a-d13a-4543-bd65-39c376165546" height="384" src="/drupal/sites/default/files/Servers%20on%20Mosaic_0.jpg" width="400" /></td> </tr></tbody></table><p>What are the qualities I require from a DLNA/UPnP server?</p> <ul><li>It needs a decent user interface on the server so I can modify its settings</li> <li>It should automatically scan for new additions to my music collection, either quasi-instantly, or, say, every hour.</li> <li>It should list new <em>albums</em>, not <em>tracks. </em>For classical music, I almost always want to hear an entire album</li> <li>It should handle my large collection quickly and make it easy to search: <ul><li>2,544 artists<br /> 10,554 albums<br /> 136,211 songs<br /> 3299.26 GB</li> </ul></li> </ul><p><strong>Spoiler alert:</strong> None of these is perfect.</p> <hr /><h3><a href="http://www.conceiva.com/products/mezzmo/">Mezzmo</a></h3> <table border="0" cellpadding="1" cellspacing="1" style="width: 600px;"><tbody><tr><td><img alt="" data-entity-type="file" data-entity-uuid="26945239-d62a-4564-b8b8-3bb26ad00f32" height="667" src="/drupal/sites/default/files/MezzmoMainPage.jpg" width="300" /></td> <td><img alt="" data-entity-type="file" data-entity-uuid="e6e5529a-d0ad-4cf7-8c2d-69cbb1a3edf6" height="667" src="/drupal/sites/default/files/MezzmoSearch.jpg" width="300" /></td> </tr></tbody></table><p>Mezzmo does not run on Linux, so I installed it on my Windows 10 machine. I really prefer servers to run on Linux since reboots are few and far between, and my Linux server is up all the time.</p> <p>If you click on the Music menu item, Mezzmo does list "Recently Added", but it is by track, not by album. Notice that the search missed Vainberg as an Artist. The Artist is tagged as "Vainberg, Moishei" and that search turns up nothing at all. There is a whole folder of albums with that title. The search came back in a few seconds.</p> <hr /><h3><a href="https://kodi.tv/">Kodi</a></h3> <p>In some ways, Kodi is an overkill. It is a complete music/video system with a large ecosystem of plugins, some of which are responsible for updating my collection when new additions occur. Kodi has a very complete, but often obscure Linux GUI. (I had to right-click the Kodi label to exit search mode!)</p> <table border="0" cellpadding="1" cellspacing="1" style="width: 600px;"><tbody><tr><td><img alt="" data-entity-type="file" data-entity-uuid="59ec428e-aea5-4429-a978-bb70c2752d5b" height="326" src="/drupal/sites/default/files/Screenshot%20from%202020-07-21%2014.44.34.png" width="600" /></td> </tr><tr><td><img alt="" data-entity-type="file" data-entity-uuid="595ecbac-02c5-4c5b-b09c-39d03c5874b5" height="326" src="/drupal/sites/default/files/Screenshot%20from%202020-07-21%2014.42.33.png" width="600" /></td> </tr></tbody></table><p>Notice that when I tried to do the search using the Linux desktop, Kodi informed me that I had to install a plugin, which I did. However, doing the search using Mosaic on my phone never got past the busy search icon. So search is non-functional. Scrolling through the list of Artists is quite slow also.</p> <p>But KODI is the ONLY DLNA/UPnP server that displays Recent Albums. </p> <p><img alt="" data-entity-type="file" data-entity-uuid="7da0d46a-5a84-4fdb-bb0c-b04ce42c0883" height="667" src="/drupal/sites/default/files/KodiAlbums.jpg" width="300" /></p> <hr /><h3><a href="http://www.subsonic.org/pages/index.jsp">Subsonic</a></h3> <p>I have been using Subsonic for years as a server to let me access my music collection remotely (yes, even from Borneo!). It has an excellent web-based interface:</p> <p><img alt="" data-entity-type="file" data-entity-uuid="37802329-4ddf-4b8d-9a22-35cb971e49c6" height="587" src="/drupal/sites/default/files/Subsonic.png" width="600" /></p> <p>It also lets you do obscure searches in the Web GUI, and returns them quickly. However, it is a lousy DLNA/UPnP server. It only lists the Artists and Playlists, and supports NO search function at all—the search icon is greyed out.</p> <hr /><h3>MiniDLNA (also known as <a href="https://sourceforge.net/projects/minidlna/">ReadyMedia)</a></h3> <p>It has several front ends that you can download and use on the Linux server.</p> <table border="0" cellpadding="1" cellspacing="1" style="width: 600px;"><tbody><tr><td><img alt="" data-entity-type="file" data-entity-uuid="5d15a34e-db6a-43a6-b39b-6c94296069bb" height="667" src="/drupal/sites/default/files/MiniDlnaMenu.jpg" width="300" /></td> <td><img alt="" data-entity-type="file" data-entity-uuid="9cae2ec4-76a4-403f-8cc6-64446fe3c2aa" height="667" src="/drupal/sites/default/files/MiniDlnaSearch.jpg" width="300" /></td> </tr></tbody></table><p>Ia seen above, it has a "Recently Added" listing, but this is a list of tracks, not albums. However, MiniDLNA DLNA/UPnP server does correctly locate the search for Vainberg as an artist. Scrolling through the artist list is also quick, although you must stop the scrollbar to see where you are. </p> <hr /><h3><a href="https://minimserver.com/">MinumServer</a></h3> <table border="0" cellpadding="1" cellspacing="1" style="width: 600px;"><tbody><tr><td><img alt="" data-entity-type="file" data-entity-uuid="69264e8f-0aa4-40c0-997c-0c8528fbec7f" height="667" src="/drupal/sites/default/files/MinimServerMainPage.jpg" width="300" /></td> <td><img alt="" data-entity-type="file" data-entity-uuid="e4ca1a9e-ab75-41b2-98ac-fc6ae570d8d5" height="667" src="/drupal/sites/default/files/MinumSearch.jpg" width="300" /></td> </tr></tbody></table><p>MinumServer does not offer a view of recently-added items, neither tracks nor albums. It did succeed in searching for Vainberg as an Artist. It also lets you view folders by date, genre, track,... Scrolling is fast too. However, MinimServer has a 65000 folder and 100000 file limit, which I am past!</p> <hr /><p>Luckily, All of these servers can run at once, so I can select the server (on Mosaic) that offers me the best version of my current need.</p> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=198&amp;2=comment_node_blog&amp;3=comment_node_blog" token="RmRGoo3DrtexuYq5dtHlGz7q7LymLf8lNIXaRSCts9M"></drupal-render-placeholder> </section> </div> </div> Tue, 21 Jul 2020 17:06:26 +0000 jarome 198 at http://jamesrome.net/drupal http://jamesrome.net/drupal/UPnP#comments Corona virus facts from a medical professional http://jamesrome.net/drupal/cv <span class="field-wrapper">Corona virus facts from a medical professional</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Wed, 04/08/2020 - 07:38</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/cv" hreflang="en">Corona virus facts from a medical professional</a></h2> </div> </div> </div> <div class="field-wrapper field field-node--field-attachment field-name-field-attachment field-type-file field-label-above"> <div class="field-label">attachment</div> <div class="field-items"> <div class="field-item"> <span class="file file--mime-application-pdf file--application-pdf"> <a href="/drupal/file/96/download?token=KRiBUeVO" type="application/pdf; length=131945">Download Coronavirus_and_pets_coughing.pdf</a> <span class="file-size">(128.85 KB)</span> </span> </div> <div class="field-item"> <span class="file file--mime-application-pdf file--application-pdf"> <a href="/drupal/file/97/download?token=YhKNImDo" type="application/pdf; length=4240251">Download Cough_&amp;amp;_Lung_Diseases_2020.pdf</a> <span class="file-size">(4.04 MB)</span> </span> </div> <div class="field-item"> <span class="file file--mime-application-pdf file--application-pdf"> <a href="/drupal/file/98/download?token=HGpMqMVe" type="application/pdf; length=15481317">Download COVID-19_Update.pdf</a> <span class="file-size">(14.76 MB)</span> </span> </div> <div class="field-item"> <span class="file file--mime-application-pdf file--application-pdf"> <a href="/drupal/file/99/download?token=sTXbE3HY" type="application/pdf; length=795751">Download Viruses-deadly_to_beneficial_2020.pdf</a> <span class="file-size">(777.1 KB)</span> </span> </div> <div class="field-item"> <span class="file file--mime-application-vndopenxmlformats-officedocumentpresentationmlpresentation file--x-office-presentation"> <a href="/drupal/file/100/download?token=twYLkY3f" type="application/vnd.openxmlformats-officedocument.presentationml.presentation; length=7757229">Download Cough_Differential_Diagnosis_2020.pptx</a> <span class="file-size">(7.4 MB)</span> </span> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><p> </p> <p>My neighbor, Dr Elaine Bunick is an Endocrinologist and Internal Medicine specialist, and she has been checking out all the facts about Covid 19. She gave me permission to post her recent talks.</p> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=196&amp;2=comment_node_blog&amp;3=comment_node_blog" token="e_amP05XjB4GzIGVwfLy3awapDHVvtsdKdh2zEZKCao"></drupal-render-placeholder> </section> </div> </div> Wed, 08 Apr 2020 13:38:05 +0000 jarome 196 at http://jamesrome.net/drupal http://jamesrome.net/drupal/cv#comments VPNs—Not needed for the average user http://jamesrome.net/drupal/vpns <span class="field-wrapper">VPNs—Not needed for the average user</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Fri, 03/27/2020 - 11:16</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/vpns" hreflang="en">VPNs—Not needed for the average user</a></h2> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><p>Now that many of us are working from home, we are being bombarded with ads and offers to be safe, and use a VPN. This is a scare tactic. VPNs are totally redundant for MOST purposes.</p> <p><strong>What is a VPN?</strong></p> <p>A  Virtual private network (VPN) is a secure tunnel that encrypts traffic between its endpoints. If traffic is already encrypted between your computer and a destination, a VPN is totally redundant.</p> <ul><li>For the past year or so, almost all Web addresses URLs) use encryption, as evidenced by http<span style="color:#c0392b;">s</span>:// in the URL, and a closed lock in the address bar:</li> </ul><p><img align="center" alt="" height="433" hspace="80" src="/drupal/sites/default/files/NYT%2Ccom.png" width="319" /></p> <ul><li>By law, all financial transactions must be encrypted, and generally require two forms of authentication.</li> <li>All reputable mail servers require at least encryption of your credentials (TLS), and usually full encryption (SSL). Check your mail settings to be sure you have taken advantage of these things. Below is my Thunderbird setting for gmail:</li> </ul><p><img alt="" height="372" hspace="80" src="/drupal/sites/default/files/gmail.png" width="500" /></p> <p> </p> <p><strong>What is the other endpoint of the VPN?</strong></p> <p>A VPN only encrypts traffic between you and the endpoint. But where is that endpoint? It is at the VPN provider! From there, the traffic goes unencrypted (by the VPN) to its destination. What good is this?</p> <p>Well, there is a good use case for a VPN—connection to your employer. A VPN provided by your employer encrypts everything between your computer and the employer's internet portal. This can serve several purposes:</p> <ol><li>All your traffic going through the tunnel can be <em>unencrypted</em>, so that the employer can snoop and see whether sensitive material is leaking into or out of the company. This is used by a local defense factory.</li> <li>The VPN software can isolate the user's computer from his local network resources to provide additional security for the company.</li> <li>The company can scan the user's computer through the VPN to detect malware.</li> </ol><p>In the above cases, the company pays for and provides the VPN software.</p> <p><strong>Do you need a VPN for public WiFi spots?</strong></p> <p>No, with a few caveats.</p> <ul><li>Nowadays, most airport (for example) WiFi systems require some sort of logon. They may or may not offer an encrypted channel between you and the WiFi provider. But if you are doing email and even banking, as explained above, your traffic is <em>automatically encrypted</em>.</li> <li>But this safety assumes that your computer is secure. This means that the operating system and all your applications are up-to-date, and that you have proper anti-malware software. (See <a href="https://jamesrome.net/drupal/patching">https://jamesrome.net/drupal/patching</a>.)</li> <li>You should NOT have to download extra software to use the WiFi. Any such software could be a source of infection. For example, it could install a key logger that would record your keystrokes before they enter your encrypted connection!</li> </ul><p><strong>Legitimate (?) uses for VPNs that terminate at the VPN provider</strong></p> <ul><li>To change your country of origin, for example to access country-restricted content.</li> <li>To hide your identity and network activity from snooping governments. </li> </ul><p>I follow computer security closely, and cannot recall a case where there was a case of hacking via encrypted internet traffic. It is much easier to hack your computer. (See <a href="https://jamesrome.net/drupal/ComputerSafety">https://jamesrome.net/drupal/ComputerSafety</a>.)</p> <p><strong>Conclusion</strong></p> <p>Buying a VPN is a waste of money. And using a VPN may hinder your ability to do things on your local network, such as accessing remote drives.</p> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=195&amp;2=comment_node_blog&amp;3=comment_node_blog" token="mQwUQHFtkAccFJBiRUmTuzdGvTPudwrqeqZJSQrdR7I"></drupal-render-placeholder> </section> </div> </div> Fri, 27 Mar 2020 17:16:02 +0000 jarome 195 at http://jamesrome.net/drupal http://jamesrome.net/drupal/vpns#comments High-end massage Chairs: Inada DreamWave vs OHCO M8 (updated) http://jamesrome.net/drupal/massage_chairs <span class="field-wrapper">High-end massage Chairs: Inada DreamWave vs OHCO M8 (updated)</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Wed, 03/25/2020 - 11:53</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/massage_chairs" hreflang="en">High-end massage Chairs: Inada DreamWave vs OHCO M8 (updated)</a></h2> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><p>I have a bad back  and neck, and a good massage chair (MC) is a necessity. But they do not come cheap! I currently own two of the top-of-the-line Japanese MCs, and here is my thorough review of both of them.</p> <table border="1" cellpadding="2" cellspacing="1" style="width: 800px;"><caption><strong>My Massage Chairs</strong></caption> <tbody><tr><td><img alt="" rotate="" transform:="" /><img alt="" height="533" src="/drupal/sites/default/files/20200325_133758_2.jpg" width="400" /></td> <td><img alt="" height="533" src="/drupal/sites/default/files/P9200011chair_0.jpg" width="400" /></td> </tr><tr><td class="text-align-center">OHCO M8</td> <td class="text-align-center">Inada DreamWave (2014 model)</td> </tr></tbody></table><p>I bought the Inada in 2014, and it actually has more features than the current model, for example a heated seat. I bought a new chair because the upholstery on the Inada has worn out, and it costs $612 to buy a new back, and it is quite non-trivial to replace the part. Mechanically, it is still perfect.</p> <table border="1" cellpadding="1" cellspacing="1" style="width: 400px;"><tbody><tr><td><img alt="" height="300" src="/drupal/sites/default/files/20200325_142007_0.jpg" width="400" /></td> </tr><tr><td class="text-align-center">Ripped upholstery on the Inada chair</td> </tr></tbody></table><h2>Overall comments and setup</h2> <p>As can be seen in the above pictures, The OHCO chair has arms that swing out to allow easy access to get settled into the chair. These arms are disassembled for shipping, and come in a separate box. The allows the OHCO to fit through a smaller door (30 inches?) than the Inada (36 inches), and is a great idea. Both chairs come with White Glove service to carry the chairs into your house, set them up, and remove the cartons. These chairs are HEAVY. Do not ruin your bad back by doing this yourself. And Negotiate to get this $450 setup as a throw-in to your cost. Also make sure you get a 5-year warranty on each chair. You will want them to put slider pads under the feet so that you can move the chairs easily.</p> <h2>Feature comparison</h2> <p>Look carefully at the side-by-side images of the two MCs, and you will see some differences:</p> <ul><li>The OHCO has no side pads that inflate to pressure your thighs. This is a part of the Inada DreamWave mechanism that moves your rear end from side-to-side by several inches.</li> <li>The OHCO has no sideways motion of the seating area.</li> <li>The OHCO has 4 dual pads that look a bit like lips that open (like a mouth) to apply sideways pressure to the shoulders and downward pressure on the shoulder tops. Instead, Inada uses U-shaped pads to squeeze the upper arms, and there are two air pads (not visible) that inflate to provide downward force on the shoulder tops.</li> <li>OCHO has rollers in the feet and thighs. Inada just uses air and static bumps in the footbeds.</li> <li>The OHCO thigh pads can move in a circular motion; Inada pads just inflate.</li> <li>The OHCO has heat everywhere, including in the rollers. It can be selectively turned on or off. The Inada 2014 has just a heated seat.</li> <li>The OHCO has many whistles and bells, which I wish were deleted to save money: Aromatherapy, USB ports to play music (My chair is in front of my HiFi system), night lights that come on when you approach the chair. There is an air ionizer and chromotherapy too! The cheaper OHCO model eliminates this froufrou, but also removes the essential (to me) foot massage. I have not tried aromatherapy or the USB ports.</li> <li>The OHCO has a far more modern controller (on a retractible cord) than Inada. It also has many more selectable programs.</li> </ul><hr /><h2>Comparing the controllers</h2> <table border="1" cellpadding="2" cellspacing="1" style="width: 600px;"><caption>Massage Chair Controllers</caption> <tbody><tr><td><img alt="" height="400" src="/drupal/sites/default/files/20200325_132629.jpg" width="300" /></td> <td><img alt="" height="400" src="/drupal/sites/default/files/20200325_132526_0.jpg" width="300" /></td> </tr><tr><td class="text-align-center">OHCO Controller</td> <td class="text-align-center">Inada Controller</td> </tr></tbody></table><p>It is obvious from the pictures that the OHCO Is by far the more modern and capable controller.</p> <p>As shown, the Inada controller opens to reveal buttons that can activate individual massage features (rolling, tapping, kneading,...). But there is no way to save any program that you create, therefore, these manual controls are not very useful. My lid stays closed. There are 8 program buttons below the display, but two (quick and child) are useless to me, so that leaves 6 different massage programs.</p> <p>On the other hand, the OHCO has 14 programmed selections, and there are 4 focused sessions (Neck &amp; shoulders, Low Back, Glutes, Feet &amp; Calves). Finally, there are also manual sessions.</p> <p>When you start a massage, the OHCO moves the chair to the zero gravity position. For most of the Inada massages, it assumes you have adjusted the chair to the desired reclination. Then both MCs scan your back for shiatsu points. As soon as the scan completes, you can press the roller switch to adjust the height of the most concentrated massage. For me this is a necessity, because the default programs (both chairs) insist on rolling sideways across my shoulder blades, which is very painful. The OHCO is smart enough to remember this preferred location until you turn the chair off; The Inada requires resetting the location for every individual massage program—it gets old soon.</p> <p>For me, the zero gravity position is a disadvantage because the raised footrest blocks the direct sound from my loudspeakers. Adjusting the back and feet position on the OHCO is a bit strange. You press the desired button, but must press it again to stop the motion.</p> <p>The OHCO manual modes (rollers &amp; air) are much more useful than the Inada ones. You seem to be able to combine any number of different manual modes, and unlike Inada, they all run simultaneously. For example, since I don't really like the calf rollers, I can select foot rollers, and foot and calf air, which leaves off the calf rollers.</p> <p><strong>Winner:</strong> OHCO</p> <hr /><h2>Massaging the back</h2> <p>For must users, massaging the back to relieve back discomfort is the main raison d'être for buying a MC. Each chair has a different approach to doing this.</p> <p>The Inada uses gentle motions—rolling, kneading, tapping, "human hands," and shiatsu. It also uses the sideways motion of the DreamWave mechanism to gently shake your spine into position. The Inada's air mechanism sighs with each new movement. And transitions are slow.</p> <p>The OHCO mechanism has a much broader range of motions, and instead of the Inada side-to-side motions, the OHCO tilts the back left and right. The motions are also much more abrupt; they remind me of the ones a chiropractor uses to readjust the spine. There can be fast side-to side motions accompanied by knocking sounds, but the air mechanism is silent. </p> <p>So which system is better? I got rather bored with the Inada motions after 7 years, they became quite predictable. The many more and varied OHCO motions are quite unpredictable, and I do not think I will be able to predict things given the large number of programs. Both MC back massages work, but they are different. I instantly fall asleep during an Inada Massage, but the OHCO's jerkier motions keep me awake.</p> <p><strong>Winner:</strong> a tie</p> <hr /><h2>Massaging the arms</h2> <p>Both chairs have a tendency to throw your arms towards you when the arm cushions squeeze. This is exacerbated in the OHCO by the upper-arm mechanism:</p> <table border="1" cellpadding="2" cellspacing="1" style="width: 800px;"><tbody><tr><td><img alt="" height="533" src="/drupal/sites/default/files/20200325_132544.jpg" width="400" /></td> <td><img alt="" height="533" src="/drupal/sites/default/files/20200325_132455.jpg" width="400" /></td> </tr><tr><td class="text-align-center">OHCO side and top shoulder pads</td> <td class="text-align-center">Inada upper shoulder pad</td> </tr></tbody></table><p> </p> <p>You will notice that on the Inada, the upper arm fits into a U-shaped holder that squeezes the arm from both sides. The OHCO pad expands and pushes your upper-arm against your body, and while doing this, pulls your lower arm out of its holder. Not only does this give an inferior massage, but it can also be uncomfortable.</p> <p><strong>Upper-arm winner:</strong> Inada</p> <p>The lower-arm massage is much better on the OHCO. Inada just has two pad inflation positions. OHCO has a much faster mechanism that locks your arm in place (after you replace it from the upper-arm mechanism ejection) before it can squirt out sideways, and it has three different motions, one of which almost feels like a hammer coming down on the top of your hand.</p> <p><strong>Lower-arm winner:</strong> OHCO</p> <hr /><h2>Massaging the feet</h2> <p>Inada has bumps in the footbed that your feet get pressed into when the air pillows inflate. OHCO has heated rollers in the footbeds. The only issue with this might be if you are very ticklish.</p> <p><strong>Winner:</strong> OHCO</p> <hr /><h2>Massaging the calves</h2> <p>Again, Inada has only air bags that have two inflation positions. OHCO has airbags that give a circular massage to the sides of the calves, and also heated rollers that move up and down the backs of the calves. Sometimes the rollers feel like a fixed bar is across the back of the calves, a  slight negative.</p> <p><strong>Winner: </strong>OHCO</p> <hr /><h2>Massaging the upper shoulders</h2> <p>Inada has a small air bag that inflates and exerts great pressure on the trapezius muscle (just where I am sore). OHCO has an expanding mouth-like airbag (see last picture). One would think that this would work, but it does not. Even with the headrest in its lowest possible position, when the bag inflates, the headrest rises (even while I push back on it with my head), and very little pressure is applied to my shoulder tops. Any pressure that is applied, is to the front of the shoulder.</p> <p><strong>Winner:</strong> Inada</p> <hr /><h2>Massaging the neck</h2> <p>Inada applies symmetric pressure to both sides of the neck, and even can squeeze the shiatsu points just below the skull on either side of the spine. OHCO has three modes, one of which is symmetric. But (so far as I can tell), they are only selectable in the manual neck massage mode. The asymmetric mode is used in the pre-programmed massages. For me, this is bad because my neck fusion is very iffy, and side-to-side motion is probably not good. OHCO also applies gentle traction to the neck. OHCO also has neck knead rollers.</p> <p><strong>Winner:</strong> a tie</p> <hr /><h2>Massaging the thighs</h2> <p>Inada has thigh and kidney pads that apply air pressure to the sides of your thighs and body, and that also move your body from side to side. This feels good. OHCO has no massage features in this area.</p> <p><strong>Winner:</strong> Inada (by default)</p> <hr /><h2>Massaging the posterior (gluteus muscles)</h2> <p>Inada provides gentle motions (up-down &amp; sideways) to the seat area. Moving the seat gently from side-to-side is what Inada calls DreamWave and it is indeed very relaxing. I think it also "shakes" the spine into position similar to the devices I have seen that do this my moving your  legs from side-to-side.</p> <p>OHCO has 4 air bags that vigorously knead the heated seat, but it feels as if there are rollers too, because it massages the central prostate area also! There is no sideways motion.</p> <p>Each MC has a different approach here, but they are about equal.</p> <p><strong>Winner:</strong> a tie. </p> <hr /><h2>Other assorted comments</h2> <ul><li>Inada programs are either 15- or 10-minutes long and cannot be cascaded in the 2014 model. OHCO programs are 17- or 18-minutes long and can be cascaded.</li> <li>The OHCO stretch program hurts too much for me to use. Inada's stretches sideways as well as along the spine.</li> <li>Two Navy midshipmen rowers loved the OHCO Sports Recovery program.</li> <li>I put a dish towel on the headrest of both MCs to make it easy to keep the headrests clean and oil-free. The OHCO head cover is removable for washing.</li> <li>The Inada chair must be reset (by turning it off and on) after any power failure. I am not sure about the OHCO, because the power has stayed on.</li> <li>I tried the OHCO air ionizer. It emits a not-pleasant smell that is vaguely vegetable-like. I won't use it again! It now smells upstairs where this computer is located.</li> <li>The springs on the OHCO foot rest are too strong. The constant high upward pressure from foot to knee aggravates the torn meniscus on my left knee. Inada's springs are much gentler.</li> </ul><hr /><h2>Long-term OHCO updates</h2> <p>I have now lived with the OHCO chair for three months and have used it for an hour each day. Definitely now prefer it to the Inada, mainly because of its extensive massage repertoire.</p> <h3>General comments</h3> <p>The OHCO is a much better chair (for sitting in) than the Inada. When the Inada completes a session, the back rollers are moved so that they give you no lower back support. You can hit the emergency stop button when the rollers are in just the right place, but this is hard, awkward, and then the controls are disabled. When the OHCO finishes a massage session the back rollers are positioned in the perfect spot for lower-back support. And, you can then adjust the chair leg and back positions, to say a comfortable reading position. However, you must go through a whole (at least 17 minute) massage first.</p> <p>I have now tried all of the massage options and combinations. All massages last a minimum or 17 minutes, and the Stretch massage lasts 21 minutes.Even the Quick massage is 17 minutes. By quick, OHCO seems to mean a little bit of every motion in the chair's repertoire. Inada's Quick massage is 5 minutes. </p> <p>If you are buying pads for under the chair's feet (so you can slide the chair on your floor), note that there are six feet.</p> <h3>Nits to pick</h3> <p>It is essential (for my back) to move the "adjusting shoulder blades" position just above my hip bone. If this is not done, the back roller goes between my shoulder blades, which is very painful. The difficulty is that <strong><em>about 20% of the time, the roller adjust buttons does not actually work</em></strong>. The OHCO system only gives you one chance (up or down) to try the adjustment. If you release the roller button (if it worked), the massage starts. Inada lets you adjust the rollers up or down and you have three sideways roller swipes intervals to keep adjusting the roller position (and with both up and down buttons). If the OHCO roller adjustment does not work, you must turn the chair off to get another chance; otherwise you may get a painful massage.</p> <p>The top shoulder pads, even with high air pressure, do not put any pressure on my trapezius muscles. The side shoulder pads indeed move my upper body from side to side, or roll it, but when they do this, my arms are thrown out of the arm pad slots. Thus there is a constant effort (on my part) to keep repositioning my arms, and this prevents relaxation. (Not all massage programs use the arm pads, so this is not a problem if using one of them.) I think this problem is exacerbated by the fact that I usually do not allow the chair to go all the way to its zero-gravity position for two reasons (mentioned in the original report):</p> <ol><li>If it is all the way back, my raised feet block a direct path to my HiFi speakers, and</li> <li>The zero-g position puts pressure upward from my feet, and causes pain down my left side.</li> </ol><h3>Program comments</h3> <ul><li>Now that I know to adjust shoulder blade position to just above my hip bones, I have found out that I love the <em>Stretch</em> mode. It initially says 18 minutes, but after I adjust the rollers, it jumps to 21. Unlike the Inada, the OHCO really does stretch you, tightly gripping upper body and feet while tilting backwards and forwards.</li> <li>I find the <em>Manual</em> roller position is very restful, and this can be combined with any of the <em>Manual Air</em> options. I like the foot air.</li> <li>Believe it or not, the list of preprogrammed massages are in fact all different, and better yet, I have not been able to predict the next motion. So it does not get boring. I usually stop the chair recline about halfway back, and set the air pressure to high. If it is not hot in the house, I turn on the heat.</li> <li>Although the for corner region lights may not all be on, most programs massage everything</li> <li>The <em>Focused</em> massages do what they say. I especially like the lower back and glute cycles.</li> </ul></div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=194&amp;2=comment_node_blog&amp;3=comment_node_blog" token="lqJXC_eJVChYOgcZgAF2kkm0AAtb3Bmu3m_eT7TVkSY"></drupal-render-placeholder> </section> </div> </div> Wed, 25 Mar 2020 17:53:51 +0000 jarome 194 at http://jamesrome.net/drupal http://jamesrome.net/drupal/massage_chairs#comments Internet ID monitoring is useless http://jamesrome.net/drupal/id_monitoring <span class="field-wrapper">Internet ID monitoring is useless</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Sun, 07/28/2019 - 08:28</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/id_monitoring" hreflang="en">Internet ID monitoring is useless</a></h2> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><p>As part of their "service," MyIDCare monitors your compromised passwords on the internet. But this is totally useless!</p> <p><img alt="" height="840" src="/drupal/sites/default/files/MyIDCare.png" width="766" /></p> <hr /><p>But, almost all of my 1000 different accounts use my e-mail address for my user ID, and this report does not identify the site in question, so there is nothing I can do about this!</p> <p>If you were compromised by Equifax, take the $125 (+ $25.hour spent) rather than credit monitoring.</p> <p> </p> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-label">Comments</h2> <article data-comment-user-id="1" id="comment-1137" class="js-comment"> <mark class="hidden" data-comment-timestamp="1588084988"></mark> <footer> <article typeof="schema:Person" about="/drupal/user/1"> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> </div> </div> </article> <p>Submitted by <span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span> on Tue, 04/28/2020 - 08:43</p> <a href="/drupal/comment/1137#comment-1137" hreflang="en">Permalink</a> </footer> <div> <h3><a href="/drupal/comment/1137#comment-1137" class="permalink" rel="bookmark" hreflang="en">I just had one of my cards…</a></h3> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-comment--comment-body field-name-comment-body field-type-text-long field-label-hidden"> <div class="field-items"> <div class="field-item"><p>I just had one of my cards used fraudulently, and MyIDCare did not notice it a day later, even though the bank suspended my card.</p></div> </div> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=1137&amp;1=default&amp;2=en&amp;3=" token="lFoAvXZcWEVaI0MjBXcLCFBNP6veGzVXdxgVJuIMvCI"></drupal-render-placeholder> </div> </div> </div> </article> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=189&amp;2=comment_node_blog&amp;3=comment_node_blog" token="Q0pNWCeWshkcv1ErWkPPmRd2p9rTZOuGhXIhcEkbuf8"></drupal-render-placeholder> </section> </div> </div> Sun, 28 Jul 2019 14:28:16 +0000 jarome 189 at http://jamesrome.net/drupal http://jamesrome.net/drupal/id_monitoring#comments Review of Evelo Aurora Mid-drive Bicycle http://jamesrome.net/drupal/Evelo_Aurora <span class="field-wrapper">Review of Evelo Aurora Mid-drive Bicycle</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Thu, 06/06/2019 - 13:18</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/Evelo_Aurora" hreflang="en">Review of Evelo Aurora Mid-drive Bicycle</a></h2> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><h3>Introduction</h3> <p>The <a href="https://www.evelo.com/electric-bicycles/aurora/">Evelo Aurora</a> is the second electronic bike I have tried. (See my <a href="https://jamesrome.net/drupal/vanmoof">review of the Vanmoof S2</a>.) Unlike the Vanmoof S2, the Evelo Aurora looks like an e-bike:</p> <p><img alt="" height="600" src="/drupal/sites/default/files/20190606_151244_0.jpg" width="800" /></p> <p>The Aurora has a step-through frame and a big obvious battery pack. Since I preordered the bike, I got a discount, and the free carrier bag (shown). However,  the Aurora I received is not quite the Aurora I saw on the Web site, and in the videos. Missing are the studs for a water bottle holder.  And the double kickstand has been replaced by a single one (barely visible). Evelo says that people had problems with the original stand, and that the new one is an upgrade. I also paid to upgrade to the Thudbuster seat post (shown), and added a bell, a rear-view mirror, and a clamp-on water bottle holder on the side of the handlebar extension. The air pump is part of their Commuter Package, and I attached it to the carrier rear riser with zip ties. </p> <h3>Assembly</h3> <p>The Web site says the Aurora comes "almost fully assembled." This was not the case for my bike, and Evelo is still investigating why this occurred. The front fork, and handlebars were attached to the rest of the bike with zip ties; there must have been 20 of them all told. Evelo has an assembly video, but it assumes that the fork and handlebars are in place. What is worse, both the fork and handlebars are entangled with cables and fluid tubes (for the brakes). It is a real rats nest.</p> <p>After the fact, Bill Cummings of Evelo mailed me some pictures of the disassembled front headset assembly, which I post here for your edification</p> <table border="1" cellpadding="1" cellspacing="1" style="width: 800px;"><tbody><tr><td><img alt="" height="520" src="/drupal/sites/default/files/EveloHeadset.png" width="353" /></td> <td> <p>PART Numbers</p> <p>​</p> <p> 1    Ball bearings in cage -- this goes in first, with the bearings facing upwards as shown</p> <p>​</p> <p> 2    Dust cover with lip.  Inner lip goes down</p> <p> </p> <p>​ 3    Solid tapered spacer.  Taper (wedge) goes down and will contact the ball bearings</p> <p> </p> <p>​ 4    Split tapered spacer. Taper (wedge) goes down</p> <p> </p> <p> 5   Decorative conical spacer.  Narrow side goes up</p> <p> </p> <p>6–9  Spacers.  You probably only have 3.  Sequence doesn't matter at all.</p> </td> </tr></tbody></table><p>Parts 1–3 were installed in the headset as shown below. The parts came in the loose cardboard box was inserted into the main carton. It had a hole in it, and I had to fish out the parts out of the main carton. Be careful—I originally ignored part 4 and had to reassemble these parts again. </p> <p><img alt="" height="600" src="/drupal/sites/default/files/20190606_105852.jpg" width="800" /></p> <p>I also originally had the cables dressed badly, and had to remove the handlebars again to fix this. Here is how I ended up dressing the cables and tubes:</p> <p><img alt="" height="800" src="/drupal/sites/default/files/frontview.png" width="600" /></p> <p>There is a trick to getting the headbolt in the handlebars tightened properly. You need to press down hard on the handlebars while tightening the top bolt as far as it will go, checking to see that there are no gaps in the head assembly, especially at the bottom. Then, adjust the handlebars to be straight, and tighten the two side bolts. What is very difficult about this process is that without the front fork in place, there is nothing to hold the bike upright and straight. If I were to do this again, I would temporarily install the front wheel so that with the fork in place, you can hold the bike up using the kickstand. The front wheel will not go in place unless you remove a plastic tab from the brake calipers. In the assembly video, it is orange I think. Mine was black. It has a handle like a pop-top ring that you can pull. You will have to remove the wheel to install the front fender. Or get a friendly assistant. </p> <h3>Riding the Aurora</h3> <p>The Aurora does solve the problems I had with the Vanmoof S2, namely a lack of power and/or gears for steep hills. But it does so at a price—about $1000 and 24 pounds of weight. Wheeling it to my front door required some "horsing" of the rear of the bike to make the sharp turns. But once on the road, this awkwardness disappeared. I have only had a chance to ride 5.5 miles today before the deluge started, so these are very preliminary observations. I will update this post as I learn more.</p> <p>The control panel is very obvious in its use, and easy to see on this cloudy day. I only tried the automatic shifting mode, but it offered seamless performance, unlike the clunky Vanmoof. When I reached 20 mph (the speed limit I set to avoid needing a license), there was a noticeable clunk as the power assist stopped. But I was able to pedal up all the hills I encountered easily enough. That is a big plus.</p> <p>The handlebar grips are painful. The diamond rubber hatching digs into your hands. Luckily I had riding gloves with gel pads.</p> <p>More when the weather clears . . .</p> <p>I have had a chance to ride a 20- and 14-mile trip in nice weather, together with some shorter trips. 20 miles is the hurt point for my hips. The 14-mile trip is shown below:</p> <table border="1" cellpadding="1" cellspacing="1" style="width: 615px;"><tbody><tr><td><img alt="" height="461" src="/drupal/sites/default/files/map%20Health_0.png" width="600" /></td> <td style="width: 200px;">The numbers show the progression of my trip</td> </tr><tr><td><img alt="" height="510" src="/drupal/sites/default/files/hill-speed_Samsung%20Health_0.png" width="600" /></td> <td style="width: 200px;">The red numbers are the assist levels I used (approximately) at different parts of my trip.</td> </tr></tbody></table><p>Along the river, I tried riding with 0 assist since it is flat. A nice feature of the Aurora is that even with the assist off, the automatic (or manual) CVT transmission is still on and usable. So you can ride the Aurora much as a regular unpowered bike that uses a derailleur. However, in manual mode, the calibration is very strange: anything above the third bar seems like an incredibly low gear. I could not pedal fast enough to apply power to the bike. Unpowered, and on flat ground, I generally rode at about 14 mph. With assist level 1, this was more like 19 mph, or even the limited 20.5 mph. But it was a very windy day, and i definitely needed an assist as noted on the map. </p> <p>The assist control is very sensitive, and I often jumped up or down by 2 levels instead of one. Practice makes perfect, I guess. If you accidentally downshift to 0, it feels like the bike has suddenly hit a patch of molasses. But in general, the CVT transmission worked flawlessly when I left it in assist level 1, and also when I goosed it up to go up a steeper hill. After I left my street, I turned up the adjacent street (Crestview) which is a steep, long uphill. As I proceeded, the hill got steeper, and I added more assist until I got up to level 4 near the top. This one street took 10% of the battery! I have not yet decided whether it is better to change the assist level, or to push down the power lever while going up hills.</p> <p>For me, if I avoided the big hill, I got about 25 miles on a battery charge. Your mileage may vary. The hills here eat battery, even when they are not too steep. My battery only seems to charge to 98%. Also, despite the warnings in the manual, don't unplug the charger from the bike once it is charged. Overnight, it lost about 10% of its charge when I unplugged it the evening before. Finally, as you ride, the battery % jumps down 2-4% rather than descending one% at a time. There is a USB charging port on the bottom of the control/display unit, a handy feature if your cell phone runs out of juice.</p> <p>A nice feature of the propulsion system is that you can press down the left lever to get up to speed very quickly when you start. However, I still have not mastered this process. If I stand with a foot on each side of the bike, I cannot sit on the saddle. If I start with the left pedal halfway up, the right pedal hits me in the right shin. I think that the best method for starting the bike at a light is to dismount on one side (left for me) of the bike, put the left foot on the pedal at its lowest point, and let the motor coast the bike while you swing the other foot through the frame to the right side. I am still perfecting this skill.</p> <p>The motor system is very quiet—a swishy sound at most. The Vanmoof made a lot of noise compared to the Evelo.</p> <p>Riding the Aurora with the power assist at level 1 makes the bike feel alive. It is a very invigorating experience. Everything becomes easier to do (except sharp turns). The bike likes to go at about 19 mph on level ground. Even if you stop pedaling, the motor is still working. You will not maintain your speed (at least at level 1), but the slowdown time is much longer than on a conventional bike.</p> <p><img alt="" height="450" src="/drupal/sites/default/files/20190617_113932_0.jpg" width="600" /></p> <p>As you can see by comparing this handlebar image to the one at the top of the page, I changed the rear-view mirror. The top one seemed like a good deal, but the mirror is flat, and gives a tiny view of the world. It also moves position when jarred by a bump. The <a href="https://smile.amazon.com/gp/product/B07QJ55K13/ref=ppx_yo_dt_b_asin_title_o05_s01">new one</a> is convex, and positions itself high enough so that I see more than just my left hand. Furthermore, my bike path is undermined by tree roots which make riding very bumpy, and this mirror did not move at all, despite a bumpy ride.</p> <table border="1" cellpadding="1" cellspacing="1" style="width: 711px;"><tbody><tr><td><img alt="" height="600" src="/drupal/sites/default/files/20190625_100438.jpg" width="450" /></td> <td style="width: 248px;"> <p>Tree roots cause the bike path to get rough and bumpy—a great reason for shocks in the fork, and the Thudbuster seat post.</p> <p>It is also imperative that the rear-view mirror does not change position due to the bump. The second mirror I bought has a rubber insert under the mount clamp and never budges.</p> </td> </tr></tbody></table><p>And note the <a href="https://smile.amazon.com/gp/product/B01DDPTJY6/ref=ppx_yo_dt_b_asin_title_o00_s00">water bottle holder</a> I mounted to the stem. There is no room left on the handlebars, and this location makes it very easy to grab and to replace the bottle. I had to use a zip tie to prevent the bottle holder from flipping over. Finally, because my neck is fused, which prevents me from looking up, I used all 3 stem extenders to get a nice upright riding position. I get a lot of air resistance, but I can see, and the motor keeps me going at a good speed.  The speed-generated wind cools me off, even when it is hot and humid out.</p> <p>I really like the fluid-assist brakes. They are easy to use, even with just one or two fingers, and stops are quite smooth.</p> <p>However, I have issues with the pedals. If the bottoms of your shoes are wet when you mount the bike, there is NO grip between the shoes and pedals at all. Several times, both feet slipped off the pedals. This is a safety issue. I may go back to using toe clips if there is a way to remove a reflector from each pedal to attach them. I replaced the pedals with a set of mountain bike ones that have metal studs, and a wider footprint.</p> <p><img alt="" height="450" src="/drupal/sites/default/files/20190906_111239.jpg" width="600" /></p> <p>In addition, these pedals have studs near the center spindle. I now have a much better grip between foot and pedal, and can now exert pressure forwards and backwards as well as just up and down.</p> <h3>Conclusion</h3> <p>I really like my Evelo Aurora, and I think you will like it too. Contact me for a discount code.</p> <hr /><h3>Updates</h3> <p>I took a really bad fall at low speed trying to turn on a thin layer of gravel sprayed out over asphalt by passing cars. Do not turn on gravel! The Aurora was undamaged, but I fell on top of a handlebar and did a number on my chest. I have recovered. It was really nice to have the bike do all the work going home.</p> <p>You can reset the gearing in the rear hub by holding down the auto/manual switch for 7 seconds while the rear wheel is moving. I tried it twice, but it made no difference. The manual speeds are all much too low except when set at the bottom 2 bars, or when going uphill.</p> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=188&amp;2=comment_node_blog&amp;3=comment_node_blog" token="2VdRs548VE63vl2RtPhAAFN3Q09xqNm47lWqIgWKiHY"></drupal-render-placeholder> </section> </div> </div> Thu, 06 Jun 2019 19:18:55 +0000 jarome 188 at http://jamesrome.net/drupal http://jamesrome.net/drupal/Evelo_Aurora#comments Review of Vanmoof Electrified S2 bicycle http://jamesrome.net/drupal/vanmoof <span class="field-wrapper">Review of Vanmoof Electrified S2 bicycle</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Tue, 05/21/2019 - 11:32</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/vanmoof" hreflang="en">Review of Vanmoof Electrified S2 bicycle</a></h2> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><p>The <a href="https://www.vanmoof.com/en_us/electrified-s2-x2">Vanmoof Electrified S2</a> bike is from Holland, with a USA store in Brooklyn.</p> <p>It is a very handsome bicycle:</p> <p><img alt="" height="600" src="/drupal/sites/default/files/20190517_112759_0.jpg" width="800" /></p> <p>In particular, just looking at it, you probably would not know this is an electric bike. Weighing about 41 pounds, it is a lot heavier than a standard high-end bike, but it is a lot lighter than many other e-bikes (~60 pounds). My neck is fused (I cannot look up), so I installed the two (included) stem risers. It still does not give me a particularly upright sitting position. </p> <p>The Vanmoof claim to fame is a very clever anti-theft system. Your bike is connected to an app on your Android or IOS device. You can lock or unlock the bike using the phone. You can also lock the S2 by pushing in the little knob you can see just in front and a bit below the rear axle nut. You can unlock it by entering a code using a button on the left handlebar. When the bike is locked, the rear wheel will not turn, and moving the bike sets off a loud alarm. Furthermore, if you report the bike stolen (via the app), and if if is locked, Vanmoof can track it down via a GPS cell connection built into the bike. It costs $240 for three years of this service. If Vanmoof cannot find the bike, they will replace it. There are also two special security nuts on the axles that can only be removed using a special tool (included). However<a href="https://ebiketips.road.cc/content/news/false-info-vanmoof-rejects-tech-website-s-claim-it-hacked-one-of-dutch-firm-s"> these security claims may be overblown</a>.</p> <p>I will come back to the phone app later in this review.</p> <p>Mechanically, the motor is in the front wheel hub, and there is a two-speed Sturmey-Archer internal shifter in the rear hub. The only thing the rider can control is the power assist level (from 0–4), which I always left on 4. This also can be done via the app or manually on the stopped bike. From my point of view, the power train is the weakest part of the S2 in hilly East Tennessee. We have many steep hills, and the power assist gets lower and lower as you pedal slower and slower. To help solve this problem, there is a button on the right side of the handlebars you can press to give a power boost. On a long, gradual hill, this works like a charm, but on a short steep hill, I could barely make it to the top of the hill. If the hill is longer, the S2 just does not have power. There are no hills in Holland! When I got the S2, the power assist button did not work properly. It stuttered and dropped out. It took a month for Vanmoof to admit that this was a problem, which they mostly fixed with a bike firmware update (version 1.6) The app tells you such an update is available—a nice touch.</p> <p>I also had difficulty with the gearing. Often, after coasting down a hill, I had trouble keeping my feet on the pedals because there was little resistance. I wish there was a way to shift manually.</p> <p>When the hills are not to steep, the S2 feels like a normal bike, but one in which you do not have to worry about gear shifts. It is easy to keep up a 15 miles-per-hour speed.</p> <p>The tires are not at all puncture resistant. Over night, my rear wheel went flat, and this was due to a thorn that barely entered the tire. And when the tire goes flat, the kickstand no longer works, and the bike keeled over into my glass table top (see above). It was also totally unobvious how to remove the rear wheel which is captured by the chain guard. I had to call Vanmoof in Holland to get a video of the process, which took a week. You will need to carry two different Allen wrenches, the special nut remover, and a wrench for that (plus a repair kit and a pump) to rescue yourself from a flat in the middle of nowhere. The front wheel is ner to take off. It is very hard to get at the screws of the cover for the cable on the front fork—it took me well over an hour. There are no welded points to attach a pump or water bottle holder.</p> <p>The biggest source of frustration with the Vanmoof system is the app. If you switch phones or update Android, the app will not start. I rebooted the phone, uninstalled/reinstalled the app, reset the bike with a paperclip, and it still crashed every time I tried to start it. Eventually, I unlocked the bike manually, and lo and behold, the Vanmoof app then started. Also, there were times that the app lost connection to the bike. It did this after the above-mentioned flat tire. I replaced the wheel, and knowing that the bike was unlocked. I took it out. I live on a hill, and when I reached the bottom and started up the next hill, I realized that the bike was off. There was no connection to the app. It required a reset using a paperclip. I did not have one with me, so had to walk the bike home. Carry a paperclip with you! The app also controls things like the lights, horn, the max top speed, and shows you where the bike is parked. I hope Vanmoof fixes the issues I had with the app.</p> <p>But I need a more powerful bike motor where I live. Vanmoof has been gracious about letting me return the S2 for a refund.</p> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-label">Comments</h2> <article data-comment-user-id="0" id="comment-873" class="js-comment"> <mark class="hidden" data-comment-timestamp="1587999871"></mark> <footer> <article typeof="schema:Person" about="/drupal/user/0"> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> </div> </div> </article> <p>Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">IraBob</span> on Sun, 09/15/2019 - 09:49</p> <a href="/drupal/comment/873#comment-873" hreflang="en">Permalink</a> </footer> <div> <h3><a href="/drupal/comment/873#comment-873" class="permalink" rel="bookmark" hreflang="en">Thanks for your review </a></h3> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-comment--comment-body field-name-comment-body field-type-text-long field-label-hidden"> <div class="field-items"> <div class="field-item">Thanks very much for your review. It’s good to hear from a rider from a hilly area, rather than just urban London or Brooklyn or etc. And thanks for pointing out that Holland doesn’t have hills!!! I hadn’t read that in any other review or comment. I think that’s significant. I live in Seattle. Lots of hills. I’m afraid my experience would be the same as yours. And if the big selling point is the anti-theft system, I’m wondering why purchasers aren’t mentioning renters’ or homeowners’ insurance, which normally covers personal property on and off your premises.</div> </div> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=873&amp;1=default&amp;2=en&amp;3=" token="q-koJOnDcyQEGTnsLT3wcdcHV93_3SWBNU2FQdm03PI"></drupal-render-placeholder> </div> </div> </div> </article> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=187&amp;2=comment_node_blog&amp;3=comment_node_blog" token="XcMmQYM7Q3mYqYC3aQG6ZfroXIoHWKIA_7gz6HJruL8"></drupal-render-placeholder> </section> </div> </div> Tue, 21 May 2019 17:32:45 +0000 jarome 187 at http://jamesrome.net/drupal http://jamesrome.net/drupal/vanmoof#comments Script for updating the Drupal 8 core http://jamesrome.net/drupal/drupal8_update <span class="field-wrapper">Script for updating the Drupal 8 core</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Thu, 04/18/2019 - 15:02</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/drupal8_update" hreflang="en">Script for updating the Drupal 8 core</a></h2> </div> </div> </div> <div class="field-wrapper field field-node--field-attachment field-name-field-attachment field-type-file field-label-above"> <div class="field-label">attachment</div> <div class="field-items"> <div class="field-item">You don't have access to download this file.</div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><hr /><p>Drupal 8 has integrated  other projects and modules into the Drupal Core. For example: Views, Symfony, and JQuery. Asz a result, whenever any of the included projects have an architecture change, or security issue, the Drupal Core must be updated, and there is not an automatic way of doing this. As a result, there have been a half-dozen Core updates in the past month, and it wastes 2–3 hours of my time whenever I must update my 6 sites. And this is if there are no bugs in the provided update, and all goes smoothly.</p> <p>It occurred to me that I essentially do the same things to each site each time I update them, so why not create a shell script? So I did, and I offer it to others with the following provisos:</p> <ul><li>There are no guarantees of correctness or application to your site. Editing the script may be needed. Although my script makes a backup of your files and database, I suggest you make your own until you have confidence in the script.</li> <li>I assume that there are links to <em>composer.phar</em> and <em>vendor/drush/drush/drush </em>in the installation directory (where vendor and this shell script are located).</li> <li>I inserted pause statements in the script to enable you to make sure things are working correctly as the script is executed. When you are confident of the script, comment them out.</li> <li>I have used this script to successfully update major (5.5 -&gt; 5.6) updates, and minor updates (5.6.14 -&gt; 5.6.15).</li> </ul><p>Save the script in your main Drupal directory. I called it <em>drupal8_update.sh</em></p> <p>Once you have confidence in the script, you can remove the diagnostics and pauses.</p> <hr /><blockquote><p>#!/bin/bash -x</p> <p># A script to upgrade a Drupal installation to the next minor version<br /> # This script uses drush to initiate database updates; Assumes there is a drush link to vendor/drush/drush/drush<br /> # and a link to composer.phar in the install directory<br /> #init<br /> function pause(){<br />    read -p "$*"<br /> }</p> <p>TMP="~/tmp"</p> <p># check for user input<br /> if [ ! $@ ]; then<br />   echo<br />   echo "  Usage:"<br />   echo "    $0 MAJOR MINOR SITE [DIRECTORY]"<br />   echo<br />   echo "    MAJOR: The new MAJOR version to install - e.g., 8.6"<br />   echo "    MINOR: The new MINOR version to install - e.g., 14 (for 8.6.14)"<br />   echo "    SITE: a nick for your site (fixes multiple sites)"<br />   echo "    DIRECTORY: The relative path to your Drupal installation; if blank the current directory is assumed"<br />   echo<br />   echo "  Example usage:"<br />   echo "    $0 6.  9 xisam public_html/"<br />   echo<br />   exit 0<br /> fi<br /> MAJOR=$1<br /> MINOR=$2<br /> VERSION="${MAJOR}.${MINOR}"<br /> OLD_VERSION="${MAJOR}.$(( ${MINOR} - 1 ))"<br /> DRUPAL_OLD="drupal-${OLD_VERSION}"<br /> echo "OLD_VERSION = $OLD_VERSION   DRUPAL_OLD =$DRUPAL_OLD"<br /> pause 'Press [Enter] key to continue...'<br /> if [ ! $4 ]; then<br />   SITEPATH="."<br /> else<br />   SITEPATH=$4<br /> fi</p> <p>SITE=$3<br /> DRUPAL_SITE="${SITE}-"<br /> DRUPAL_VERSION="drupal-${VERSION}"<br /> DRUPAL_PACKAGE="${DRUPAL_VERSION}.tar.gz"<br /> TMP_FILE="${TMP}/${DRUPAL_PACKAGE}"</p> <p>echo "Drupal_site=${DRUPAL_SITE}"<br /> echo "DRUPAL_PACKAGE=${DRUPAL_PACKAGE}"</p> <p>cd $SITEPATH</p> <p># Put the site offline<br /> echo "Putting site in offline mode..."<br /> ./drush sset system.maintenance_mode 1</p> <p>pause 'Site is offline. Press [Enter] key to continue...'</p> <p># backup core files</p> <pre> now=$(date +"%m_%d_%Y")</pre><p>echo "Backing up current Drupal non-core files... "<br /> tar --exclude=./.htaccess --exclude=./*.php --exclude=./libraries --exclude=./modules --exclude=./profiles --exclude=./themes --exclude=./core --exclude=./vendor --exclude=./*.tgz -zcvf  "${DRUPAL_SITE}drupal-${now}.backup.tgz" ./<br /> echo "Done."<br /> # (ls) | xargs echo</p> <p>#backup database; use result-file option to prevent charset corruption<br /> echo -n "Backing up current Drupal database... "<br /> ./drush sql-dump --result-file=../drupal-upgrade.backup.sql.tgz<br /> echo "Done."</p> <p># example download link <a href="http://ftp.drupal.org/files/projects/drupal-6.9.tar.gz">http://ftp.drupal.org/files/projects/drupal-6.9.tar.gz</a><br /> DOWNLOAD="<a href="http://ftp.drupal.org/files/projects/">http://ftp.drupal.org/files/projects/</a>${DRUPAL_PACKAGE}"<br /> echo "Start downloading $DRUPAL_PACKAGE... "<br /> wget -q $DOWNLOAD<br /> echo "Done."<br /> echo "Untarring new distribution"<br /> tar -zxf $DRUPAL_PACKAGE<br /> pause 'Untarred. Press [Enter] key to continue...'</p> <p>echo "Removing .old directories and old distro files if any"<br /> rm -rf *.old<br /> rm -rf ${DRUPAL_OLD}*<br /> mv core core.old<br /> mv vendor vendor.old<br /> # (ls) | xargs echo<br /> echo "Old versions removed. Core &amp; vendor moved to .old Upgrading Drupal core files... "<br /> echo $(ls)</p> <p>cd $DRUPAL_VERSION<br /> cp -R vendor ../<br /> cp -R core ../<br /> cp -f *.php ../<br /> cd ../<br /> # (ls) | xargs echo<br /> pause 'New directories copied. Press [Enter] key to continue...'</p> <p>./composer update --no-dev --with-dependencies<br /> pause 'Composer did the update. Press [Enter] key to continue...'<br /> # The .htaccess file is purposely not copied</p> <p>echo "Done."</p> <p>echo -n "Upgrading Drupal database... "<br /> yes | ./drush updb<br /> ./drush cr<br /> echo "Done."</p> <p># Put the site back online<br /> echo -n "Putting site back online... "</p> <p>./drush sset system.maintenance_mode 0<br /> echo "Done."</p> <p>echo<br /> echo -n "If something went horribly wrong type \"restore\" to restore from backup: "<br /> read RESTORE</p> <p>if [ "$RESTORE" = "restore" ]; then<br />   echo -n "Restoring database... "<br />   MYSQL_CONNECT=$(drush sql-connect)<br />   $MYSQL_CONNECT &lt; ../drupal-upgrade.backup.sql.tgz<br />   echo "Done."</p> <p>  echo -n "Restoring files... "<br /> #  tar -xzf ../drupal-core.backup.tgz -C ./<br /> rm -rf core<br /> mv core.old core<br /> rm -rf vendor<br /> mv vendor.old vendor<br />   echo "Done."</p> <p>   echo "Your upgrade failed, but the backup was restored"<br /> else<br />   echo "removing .old directories"<br />   echo "Your upgrade is complete"<br /> fi</p> <p>BACKUP_DIR=$(readlink -f ../)<br /> echo "Backup files before the upgrade where saved in the following locations:"<br /> echo "  ${BACKUP_DIR}/${DRUPAL_SITE}drupal-core.backup.tgz"<br /> echo "  ${BACKUP_DIR}/drupal-upgrade.backup.sql.tgz"<br />  </p> </blockquote> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=186&amp;2=comment_node_blog&amp;3=comment_node_blog" token="FDAKAXAEMxoDiklNGN5VjPJgsoUQrUQE6QW_Lszgu7s"></drupal-render-placeholder> </section> </div> </div> Thu, 18 Apr 2019 21:02:59 +0000 jarome 186 at http://jamesrome.net/drupal http://jamesrome.net/drupal/drupal8_update#comments How you can stream your music collection http://jamesrome.net/drupal/streaming_music <span class="field-wrapper">How you can stream your music collection</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Thu, 02/28/2019 - 13:35</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/streaming_music" hreflang="en">How you can stream your music collection</a></h2> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><p>I have run out of room for CDs and records. All available wall space is taken, and cabinets can cost more than the music media. Hence, all of my music has now been transferred to my computer systems. I have about 120,000 tracks now, which take about 2 TB of storage. All newer tracks are in lossless Flac or M4a, and many are in high-resolution (24 bits up to 96 kHz). To be safe, I have FIVE copies of everything on different disks and different machines. (I have actually managed to lose three backups once...). I also have one copy in my vault. </p> <p>But how to play the music in three venues: on a computer, at my HiFi, and when I am out and about (or sharing with friends and relatives). I have multiple solutions I use: Logitech's Media Server and their Transporter DAC; Subsonic; and BluOS streaming to my Node 2i - 3855 DAC/Streamer. I also use Audirvana on my Mac, and tried using Roon to also feed the Node 2i.</p> <h2>Playing on a HiFi System</h2> <p>Although I have an excellent wireless WiFi system, if you want to stream Hi-Res music, you should get hard-wired Ethernet connections. I have two such devices:</p> <p><img alt="" height="289" src="/drupal/sites/default/files/P2280003-1.jpg" width="800" /></p> <p>On the left is the Node 21 - 3855, and on the right (bottom) is a Logitech Transporter.</p> <h3>Logitech Media Server</h3> <p>I have been using the <a href="https://en.wikipedia.org/wiki/Logitech_Media_Server">Logitech Media Server</a> (LMS) system since forever. It used to be called Squeezebox until Logitech bought out Slimdevices and dropped the product line. I own 3 Transporters and 5 of their lesser devices. The way the system works is that you install their free LMS server software on a Mac, Windows, or Linux computer. I have mine on a Linux i7 Dell running OpenSUSE Leap 15. This machine is always on ready to serve its clients. The Transporter got <a href="http://www.hifiplus.com/articles/tested-logitech-transporter-network-music-player/">rave reviews</a> when it first came out, but it is quite old in the tooth now. It has a 24bit/96kHz limit, and no MQA. But I cannot hear the difference at higher sample rates. You can still buy a new Transporter on Ebay for $500. I have one at my HiFi, and one in my bedroom. Note that if you try to play multichannel or over 96 kHz tracks, <strong>bad things will happen</strong>!</p> <p>You access the LMS server via its Web interfaces. There are two:</p> <p>One is for setting up the system in all its gory details</p> <p><img alt="" height="355" src="/drupal/sites/default/files/LMSsettings%20.png" width="704" /></p> <p> </p> <p>The other is for selecting your music</p> <p><img alt="" height="786" src="/drupal/sites/default/files/LMSPlayer.png" width="919" /></p> <p>Now of course, I could access my LMS collection via any Web browser (say on phone) and use the phone as a controller when at my HiFi. But if you allow LMS access through the firewall, you can also listen to music ON your phone.</p> <p>Aside from things sounding really good, the LMS is very configurable, which is probably why it was discontinued. Fortunately, Logitech still has one person (Michael Herger) who is maintaining the software and adding new features. There is also a very helpful online <a href="https://forums.slimdevices.com/">forum</a> left over from the Squeezebox days. As you can see, LMS can stream media from all the major streaming services, in addition to your own music collection.</p> <p>Note that the above Web interface will not play music on your computer, but there is an app called Squeezeplay that will do so.</p> <p><img alt="" height="495" src="/drupal/sites/default/files/Squeezeplay.png" width="789" /></p> <p><img alt="" height="493" src="/drupal/sites/default/files/Squeezeplayatrist.png" width="803" /></p> <p>Generally I am very pleased with the LMS system, and sincerely hope that it keeps going. There is now an open source version of the LMS software.</p> <h3>Bluesound Node 2i</h3> <p>I got the <a href="https://www.bluesound.com/products/node-2i/">Node 2i </a>to see if it was time to replace my LMS system.  It costs $500, and supports 24-bit/ 192 kHz audio streams. It also has MQA. </p> <p><img alt="" height="201" src="/drupal/sites/default/files/Node2iback.png" width="769" /></p> <p>Notice the Ethernet connector—a sign that this is a music player, and not just a DAC. The BlueOS software is inside the Node 2i, and is accessed via the Web, or an application on your Mac, PC, or phone. Again, this will only play music via the Node 2i, so the phone interface is just a remote control.</p> <p><img alt="" height="598" src="/drupal/sites/default/files/BlueOSController.png" width="800" /></p> <p>As with the other music servers, BlueOS supports all of your networked music (a NAS server is not needed, just a Windows Samba share). It also supports your accounts with all the major streaming services as shown above. The BlueOS software makes better use of album images than the LMS system.</p> <table border="1" cellpadding="1" cellspacing="1" style="width: 800px;"><tbody><tr><td><img alt="" height="818" src="/drupal/sites/default/files/Screenshot_20181128-090950_BluOS.jpg" width="398" /></td> <td><img alt="" height="818" src="/drupal/sites/default/files/Screenshot_20190228-191302_BluOS.jpg" width="398" /></td> </tr></tbody></table><p>On the left is the Android app accessing my music library, and on the right, it is accessing Qubuz.</p> <h3>Roon</h3> <p>Many writers in audiophile publications (Stereophile, Absolute Sound) rave about Roon. I rave AT Roon. I had a free 90-day trial and installed Roon on my Linux server (very easy to do). Roon supports the node 2i and enev my Transporter. However it does not support any of the LMS plugins that make the Transporter so useful—it is my clock and weather forecaster.</p> <p>The problem with Roon is that it is totally unacceptable for a large classical music collection. I have about 5000 artists (which for me is composers). They are stored in my file system as <em>Last_name, First_name,</em> which is appropriate for classical music. Roon insists on displaying then by <em>First_name, Last_name</em>. Very few people know the first name of obscure Classical composers (Currier, Philador, Shebalin,....). According to Roon</p> <blockquote><p>this practice runs contrary to how Roon behaves. This quote is from the Roon KB for Best File Tagging Practices:</p> <p>One thing worth noting is that Roon will attempt to match up names that you have put into your file tags with Roon database versions of the <em>same individuals</em> who are associated with <em>identified</em> content in your library. You’ll get much better results if you stick with the likes of the following:</p> <ul><li>Wolfgang Amadeus Mozart</li> <li>Pyotr Il’yich Tchaikovsky</li> <li>Paul McCartney</li> <li>Richard Rodgers; Oscar Hammerstein II</li> </ul><p>than if you use:</p> <ul><li>Mozart, Wolfgang Amadeus</li> <li>Ludwig van Beethoven (1770-1827)</li> <li>Rodgers and Hammerstein</li> </ul></blockquote> <p>There is also an issue with how one transliterates Russian names. I decided upon <em>Peter Ilyich Tchaikovsky</em>. </p> <p>Even worse, unlike in LMS, there is no way to limit the tags used by Roon in making its list. This there are a huge number of entries, many of which are doubled, even tripled (Artist, Album Artist, Composer). And each one is displayed in a large image.</p> <p><img alt="" height="500" src="/drupal/sites/default/files/RoonArtists.jpeg" width="312" /></p> <p>And scrolling on a phone through over 5000 such images is a non-starter. There is supposedly an alphabetical index, but it was hidden on my devices. Roon also lists each act or Swan Lake as a separate album, adding to the plethora of listings. The advice from Roon is to use WORK and PART tags, to correctly identify compositions. But I have 115,000 tracks, and am NOT going to retag them.</p> <p>Thus, it is impossible to find things to play. Roon is a case where more is worse. On the Roon forum, I got this message:</p> <blockquote><p>I guess for a start most users aren’t mainly classical devotees and don’t have such large libraries. You are already a double edge case as a user.<br /> If you have a set way of working and tagging that is at odds with the roon default then this will also be difficult.<br /> Roon are re-doing the classical experience after a lot of feedback such as yours. You might be better off by skipping a few months until whenever the next major release surfaces and see if it is a better fit.</p> </blockquote> <h2>Streaming to phones and your own externally accessible music server</h2> <h3>Subsonic</h3> <p>I am a big fan of <a href="http://www.subsonic.org/pages/index.jsp">Subsonic</a>, and use it to access my music outside of my house, or to share it with friends. If you want Subsonic to work on mobile device apps (as opposed to using a Web page), it costs $1 a month. I bought a perpetual license many years ago. </p> <p><img alt="" height="1220" src="/drupal/sites/default/files/subsonic.png" width="1110" />I really like Subsonic's interface. Unlike with Roon, you can rapidly find the composer via the left-hand pane. The right-hand pane shows all users online and what they are listening to. It also has a rudimentary chat capability there. Because this is a software-based system, it actually plays the music you choose from the Web page, or from a mobile app. On Android, I recommend <a href="https://play.google.com/store/apps/details?id=github.daneren2005.dsub"><em>Dsub</em></a>; In IOS I use <a href="https://itunes.apple.com/us/app/play-sub-music-streamer/id955329386?mt=8"><em>play:Sub</em></a>.</p> <p>By default, Subsonic runs as root, so you must create a subsonic user and run it as this user to be secure. Also, it is easy to encrypt your sessions with a self-signed certificate, but your users will have to accept this certificate after a security warning.</p> <p>Subsonic also gives you a detailed listing of network usage by user</p> <p><img alt="" height="884" src="/drupal/sites/default/files/SubsinicNetwork.png" width="800" /></p> <p>As you see, you can configure users to be able to upload or download music. Access is password protected.</p> <h3>LMS</h3> <p>You can also configure the Logitech media server to serve music to the Internet, but I much prefer the Subsonic interface. There are Android apps that will play the LMS music on your phone, or that will control your HiFi system.</p> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-label">Comments</h2> <article data-comment-user-id="0" id="comment-904" class="js-comment"> <mark class="hidden" data-comment-timestamp="1579791782"></mark> <footer> <article typeof="schema:Person" about="/drupal/user/0"> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> </div> </div> </article> <p>Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">alex</span> on Mon, 01/06/2020 - 23:01</p> <a href="/drupal/comment/904#comment-904" hreflang="en">Permalink</a> </footer> <div> <h3><a href="/drupal/comment/904#comment-904" class="permalink" rel="bookmark" hreflang="en">great list and details</a></h3> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-comment--comment-body field-name-comment-body field-type-text-long field-label-hidden"> <div class="field-items"> <div class="field-item">felt like i wrote this! i used my squeezebox system for years before finally forgoing for easier (echos) for the other members of my family! i now just got a blueos capable system, nad 658 and it is a blast from the lms past! i also use subsonic! with a perpetual license i got years ago. thinking about roon but will keep thinking. thanks for the details and insights into your listening habits! alex</div> </div> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=904&amp;1=default&amp;2=en&amp;3=" token="22R3kpTi2ViULH6_sJ4lCNntN1YlQGyXXt95AdjOjAk"></drupal-render-placeholder> </div> </div> </div> </article> <article data-comment-user-id="0" id="comment-1112" class="js-comment"> <mark class="hidden" data-comment-timestamp="1587999735"></mark> <footer> <article typeof="schema:Person" about="/drupal/user/0"> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> </div> </div> </article> <p>Submitted by <span lang="" typeof="schema:Person" property="schema:name" datatype="">ZJ</span> on Sun, 04/12/2020 - 08:37</p> <a href="/drupal/comment/1112#comment-1112" hreflang="en">Permalink</a> </footer> <div> <h3><a href="/drupal/comment/1112#comment-1112" class="permalink" rel="bookmark" hreflang="en">Node 2i seems like what i&#039;m looking for.</a></h3> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-comment--comment-body field-name-comment-body field-type-text-long field-label-hidden"> <div class="field-items"> <div class="field-item">Great article on the more popular streamers. Just wanted stream FLAC/DSD from PC to the stereo which are at opposite ends of the living room. Was going to go the &#039;expensive&#039; route of Roon, but guess Node 2i will do equally fine. I literally laughed out loud at &quot;I decided upon Peter Ilyich Tchaikovsky&quot;. XD</div> </div> </div> <drupal-render-placeholder callback="comment.lazy_builders:renderLinks" arguments="0=1112&amp;1=default&amp;2=en&amp;3=" token="GwNjX1-6W8uZfthS-FsIzg-RGXOJYYIkoFUdbnKsgtU"></drupal-render-placeholder> </div> </div> </div> </article> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=185&amp;2=comment_node_blog&amp;3=comment_node_blog" token="X6CQ9qEDJ2_jx__e-ZOBkzi-AY1ygHMBkLuqQQKUbkU"></drupal-render-placeholder> </section> </div> </div> Thu, 28 Feb 2019 20:35:56 +0000 jarome 185 at http://jamesrome.net/drupal http://jamesrome.net/drupal/streaming_music#comments A comparison of lossless music streaming services http://jamesrome.net/drupal/streaming_services <span class="field-wrapper">A comparison of lossless music streaming services</span> <span class="field-wrapper"><span lang="" about="/drupal/user/1" typeof="schema:Person" property="schema:name" datatype="">jarome</span></span> <span class="field-wrapper">Mon, 02/25/2019 - 13:30</span> <div class="layout layout--onecol"> <div class="layout__region layout__region--content"> <div class="field-wrapper field field-node--field-display-title field-name-field-display-title field-type-string field-label-hidden"> <div class="field-items"> <div class="field-item"><h2><a href="/drupal/streaming_services" hreflang="en">A comparison of lossless music streaming services</a></h2> </div> </div> </div> <div class="body field field-node--body field-name-body field-type-text-with-summary field-label-hidden"> <div class="field-items"> <div class="field-item"><p>As an audiophile, I only want to listen to lossless audio, and high-resolution audio is even better. I also refuse to subscribe to streams with copy protection. This leaves out iTunes, Amazon Music, Spotify, and their ilk. I also listen almost entirely to Classical music, so if that is not your thing, some of my comments may net apply.</p> <p>A few general comments are appropriate for classical music fans. Unlike most other genres where the artist name and the song title are needed, for a classical fan, much more information is needed so that you know what you are listening to. You need the</p> <ul><li>composer</li> <li>name of the composition</li> <li>name of the movement or section (which can be quite long)</li> <li>performers (conductor, soloists, symphony,...)</li> <li>performance date (not the same as the release date) </li> <li>the release date (so you can tell if it has been remastered)</li> </ul><p>None of the streaming services do this properly, although Qubuz is the closest to what is required. Thus, I always must look up the thing I am listening to on the Web. I have found that <a href="https://www.allmusic.com/">Allmusic</a> usually has the most complete information.</p> <p>Another issue all the services are guilty of is sometimes streaming tracks in an album out of order. Why, I wonder?</p> <p>I have extensively tried Deezer, Tidal, and Qobuz, but Deezer never turned on their Hi-Res music stream while I was subscribed.</p> <h2>Tidal</h2> <p>Tidal must be having financial problems because they ripped me off several times. They have a policy of no refunds, no matter what. In particular, I had two accounts at Tidal, and there is no way to log out of their Android app to switch accounts. This caused me to accidentally subscribe twice while trying to get it to work. Even 1 minute after activating the wrong account, they refused a refund.</p> <p>Tidal uses MQA for its high-resolution tracks, which is technically not lossless, and I do have Audirvana Plus to decode them on my computer, and also have a BlueSound Node 2i to decode MQA on my HiFi system. However, it is quite unclear how to record these MQA tracks so that they can unfold at a later time. And my old ears cannot hear any better reproduction from MQA vis-a-vis a 24-bit 96-kHz stream (Qobuz). The advantage to MQA is that it takes less bandwidth, which may be important when listening on a mobile device.</p> <p>There are several issues with Tidal that made me drop it.</p> <ul><li>Its Mac application keeps stopping with red error messages. Weekly-ish upgrades do not seem to make things better.<br /><img alt="" height="435" src="/drupal/sites/default/files/TidalError.png" width="701" /></li> <li>It is really aimed at non-Classical customers. <ul><li>They do not have that many Classical tracks, and even fewer in MQA.</li> <li>It is often impossible to tell what you are listening to because Classical tracks need much more information than pop/rock tracks (see above). For example, in a collection album, the composers are often not listed. (Which composer wrote which quartet?) <p> <img alt="" height="579" src="/drupal/sites/default/files/TidalComposer.png" width="800" /></p></li> </ul></li> <li>Because of this, I always have to open a browser to look up the album so I can label it properly when I rip. This is made much harder by the fact that NONE of the writing on the application is selectable so that I can easily copy it into the browser search bar. This is a royal pain.</li> <li>Most (in my opinion) new albums are NOT listed in the new album section. I have to read <em>BBC Music Magazine</em> or <em>American Record Guide</em> and mark new albums. Then I search for them, and even though they were never listed in New Albums, they are there about half of the time.</li> <li>Many of the tracks are overloaded (clipped at 0 dB), ven after I reduce the recording volume. What is the point of a Hi-Res or lossless track when the loud parts are distorted? (Lord of the Rings recording) <p> <img alt="" height="597" src="/drupal/sites/default/files/LOTRClipped.png" width="807" /></p></li> <li>Tidal plays other music after my desired selection. There seems no way to turn this off!</li> </ul><h2>Deezer</h2> <p>Deezer is based in France, and has many of the same issues as Tidal. But their application does not crash. </p> <ul><li>It is impossible to copy text out of the application.</li> <li>Again, not all new albums are listed.</li> <li>They never got the promised high-resolution tracks.</li> <li>Another issue arises if you listen to operas where there are track divisions, but no natural pause in the content. MP3 requires a gap in the music at these points, but FLAC should allow a gapless stream. Deezer has gaps in the "lossless" stream. This does make it easy to find track label locations, but interrupts your listening enjoyment.</li> </ul><h2>Qobuz</h2> <p>Qobuz just turned on in the USA two weeks ago. Its Hi-Res (24-bit) stream costs $25 a month, but it is worth it. There are still a few teething pains in that not all the albums that say they are Hi-Res, are actually in Hi-Res, but Qobuz says they are working on it. Qobuz is by far the best of these three services.</p> <ul><li>Note how many albums are available in High-Resolution: <p> <img alt="" height="846" src="/drupal/sites/default/files/qobuz.png" width="800" /></p></li> <li>The Album title information is selectable and copyable, so it is easy to find information about the albums.</li> <li>While the track labels are not selectable, and also do not list the composer, if you double click a playing track, you get full information that IS selectable and copyable. However, the full track name is still cut off, so you must still use a Web browser to get the movement tempo. <p> <img alt="" height="597" src="/drupal/sites/default/files/QobuzQuartets.png" width="800" /></p></li> <li>Note that the track has its bit rate displayed.</li> <li>Generally, things are not clipped. Compare the same Lord of the Rings recording:<br /><img alt="" height="290" src="/drupal/sites/default/files/LOTRQuobuz.png" width="800" /></li> <li>Qobuz has program notes for many of the albums, and informative articles: <p> <img alt="" height="573" src="/drupal/sites/default/files/QobuzInfo.png" width="800" /></p></li> <li>I have just discovered that if you click the album cover in the bm playing section, you will unlock the following screen, which lets you read and download the whole album booklet! I try to put the pdf of the booklet in each of my ripped albums, hoping that some player will soon let you view them.<br /><img alt="" height="440" src="/drupal/sites/default/files/qobuz4.png" width="800" /></li> <li>Their Mac application has not crashed, but lately I have had annoying problems with their cache being corrupted. The playback gets to a certain point in the music and just stops. The play button shows a circular waiting gif. Restarting the album will not work—it will stop again at the same point. You must clear the cache by clicking on the top-right user icon, selecting <em>Music Playing,</em> scrolling to the bottom, and clearing the cache. I restart Qobuz for good measure too.</li> <li>If you adjust the volume properly, there are no overloads.</li> </ul><p> </p> </div> </div> </div> <div class="extra-field extra-field--node-author extra-field--type-token"> <div class="extra-field--content"> Another great blog by Jim Rome </div> </div> <section class="field-wrapper"> <h2 class="field-items">Add new comment</h2> <drupal-render-placeholder callback="comment.lazy_builders:renderForm" arguments="0=node&amp;1=184&amp;2=comment_node_blog&amp;3=comment_node_blog" token="vj77P6xK5_a-o8LGq2U45hUQ-475PUdfXisUzMdSe8s"></drupal-render-placeholder> </section> </div> </div> Mon, 25 Feb 2019 20:30:50 +0000 jarome 184 at http://jamesrome.net/drupal http://jamesrome.net/drupal/streaming_services#comments