Tag: open source

  • OpenNura for macOS

    OpenNura for macOS

    The Background

    A long time ago I bought a set of Nuraphones – these unique, over-ear headphones that promised immersive sound and incredible bass.

    The results were good, and to this day I haven’t ever tried any other headphones like them. They weren’t without their flaws though: bulky, uncomfortable, and with proprietary cables – all factors which meant I haven’t really used them much over the last few years.

    Recently, I dug them out to have another go, and discovered a couple of things:

    1. A simple mod had been discovered that made the inner-ear tips a bit less fatiguing on the ol’ lugs.
    2. The manufacturer had been bought out, and the nuraphones discontinued in 2023.

    While it was great news that I could now enjoy the impressive sound of these things without wanting to rip my ears out from the pain, the fact they were no longer going to be supported by the manufacturer was a real issue, because certain key settings of the headphones can only be modified with the use of a mobile app. It was just a matter of time before that was no longer supported.

    Thankfully, after a bit of Googling, I found that the community had created a few different desktop applications to allow access to these settings.

    The projects that already existed

    The star of the show is opennura by James Young: an open-source Mac app that already spoke the nuraphone’s control protocol (Qualcomm GAIA) and had the encryption handshake figured out. There was just one catch. Every nuraphone has a unique encryption key baked into it, and without that key an app can connect to the headphones but not actually control them. The official mobile app fetched the key from Nura’s servers when you first set the headphones up, and there was no way to do that on a Mac.

    That piece of the puzzle had been solved by Nura-Windows, an impressively thorough bit of reverse engineering by Callum Carmicheal. His project worked out the entire ‘provisioning’ dance: sign in with your Nura account, and the app lets the headphones communicate with the Nura servers to get your key. Brilliant. Also: Windows only.

    So the situation was a Mac app that couldn’t get the key, and a Windows app that could. Huge thanks to both James and Callum, because without their work none of what follows would exist.

    The Application

    I got in touch with James to ask if he would be open to releasing his work under the GPL, and me forking it – to which he kindly agreed (the Nura Windows project was already released under an Apache 2 License).

    With a lot of help from Claude, I ported the key recovery flow from the Windows project over to macOS. Along the way I ran into a number of issues, including the discovery that the headphones wouldn’t play nicely for me over bluetooth LE – only classic Bluetooth.

    Anyway, the result of my experimentation is an evolution of OpenNura for Mac: a native macOS app that can recover your headphone’s key with nothing but your Nura account and a Mac, and then gives you full control of the important settings. Noise cancelling and social mode, personalised sound, immersion, switching and renaming profiles, remapping the touch buttons, and even a wee visualisation of your hearing profiles so you can compare them.

    The initial screen
    Main screen controls

    As a bonus, there’s also a menu bar app and global, user-definable hotkeys too, so you can quickly switch things mid-song.

    The menu bar

    Final Words

    There’s a signed and notarised build of the Mac app on the releases page if you just want to download it, and I am chuffed to see that the PR has already been merged into the official project.

    It might be worth doing this even if you don’t plan to use the app day-to-day, as it means you can retrieve your key and ensure that your headphones remain controllable in the years to come, even if Nura’s servers eventually go offline. On the key retrieval specifically: it signs in with your own Nura account, talks only to Nura’s official servers, and stores the key locally in your Mac’s Keychain. Nothing goes anywhere else, and it’s all open source so you can check for yourself (or build from source if you’d rather not run a binary).

    I am really pleased that nearly a decade after I first got these headphones, with manufacturer support disappearing, I can now use these more seamlessly with my laptop, and hopefully ensure that’s the case even when the official mobile app stops working. All thanks to the community. Open source at its best.

    Exciting Disclaimer Notes

    A word of warning if you try this yourself: these are reverse-engineered protocols talking to hardware strapped to your ears. At one point during development the headphones let out a genuinely deafening tone, which prompted a whole layer of safety guards in the app. It’s all in the README, but the short version is: first time you connect, keep the tips out of your ears. Use at your own risk.

    Nura and Nuraphone are trademarks of their respective owners. This non-commercial project is not affiliated with or endorsed by them in any way; the names are used only to identify compatible hardware.

  • Groupon: Trademark Bullies

    Groupon: Trademark Bullies

    Groupon: The wealthy business empire that has made its fortune from selling weekend trips and products like the ‘Purple Tickler Dildo’ directly to your e-mail inbox.

    They’ve had their troubles in the past, with people apparently no longer feeling the magic of the often bizarre choices made by the virtual coupon giant.

    groupon dildo
    One of the fine products on offer through Groupon

     

    However, today saw them coming under fire again. This time for not playing nicely with trademarks.

    In a posting on their website, the open source software Foundation GNOME has issued a cry for financial help to oppose a list of trademark registrations that Groupon have filed with the US Patent and Trademark Office, which conflict with those that the Foundation have held since 2006.

    It appears that Groupon wish to use these trademarks for the name of a new product that will be used as part of an electronic point of sale application. The scope of the usage described is pretty wide:

    Providing use of cloud-based non-downloadable software for processing point of sale transactions, payment transactions, voucher redemption, appointment scheduling, customer relationship management, customer location detection and awareness, inventory management, analyzing merchant transactions, and for evaluating and managing information on business performance and customers; providing temporary use of non-downloadable software that enables users to send and receive pricing, financial transaction, customer information, and payment processing information directly to and from a mobile device and a cloud-based server; software as a service (SAAS) services featuring software that enables users to send and receive pricing, financial transaction, customer information, and payment processing information directly to and from a mobile device and a cloud-based server; providing use of cloud-based non-downloadable software for payment services, merchant analytics, and for evaluating and managing information on business performance and customers; technical support services, namely, troubleshooting in the nature of diagnosing computer hardware problems and troubleshooting of computer software problems; installation and maintenance services for computer software for processing point of sale transactions, payment transactions, voucher redemption, appointment scheduling, customer relationship management, customer location detection and awareness, inventory management, analyzing merchant transactions, and for evaluating and managing information on business performance and customers

    (source)

    As you can see, that’s pretty similar to the description of activities covered in the trademark held by the Foundation:

    Downloadable computer software tools and libraries used for the development of other software applications; downloadable computer software development tools; downloadable computer software for creating and managing a computer desktop; downloadable computer software for use as a graphical user interface; downloadable computer software for word processing, database management, and use as a spreadsheet

    The Internet were none too pleased about this, especially as Groupon has waxed lyrical about their admiration of open source software in the past. In an attempt to calm the waters, they gave the following statement:

    Groupon is a strong and consistent supporter of the open source community, and our developers are active contributors to a number of open source projects. We’ve been communicating with the Foundation for months to try to come to a mutually satisfactory resolution, including alternative branding options, and we’re happy to continue those conversations. Our relationship with the open source community is more important to us than a product name. And if we can’t come up with a mutually acceptable solution, we’ll be glad to look for another name.

    (source)
    (second source with slightly different wording on Groupon’s Engineering blog)

    On the face of it, this largely looks like it might have had the desired effect, with people considering the matter to be closed. However, it seems like nothing better than PR spin. Here’s why:

    • It is inconceivable that Groupon would not know about the prior existence of the GNOME Foundation’s trademark. If they didn’t, it should have come up in the course of proper due diligence.
    • Applying for identical trademark registrations in such a similar area is an aggressive move
    • If Groupon really was in talks with the Foundation, why did they go ahead and submit trademark applications anyway?
    • If the recent statement from Groupon really was serious, they should have announced an intention to retract the pending applications

    Open source communities do not have the same resources to defend their intellectual property as large businesses do, which can make them seem like an easy target for organisations who wish to trade off of their established goodwill. Any defensive legal action would be hugely costly to pursue, and if the GNOME Foundation are forced to go down that route it will be a loss to the open source community as a whole. Thousands of Dollars that could be spent on further development and innovation will be used up fighting a needless battle with a company that can afford it.

    Groupon should stand by its words, respect the GNOME Foundation’s intellectual property rights, and withdraw their outstanding applications. Otherwise they will be confirmed as nothing more than trademark bullies.

    Update: Groupon have just posted the following statement:

    UPDATE: After additional conversations with the open source community and the Gnome Foundation, we have decided to abandon our pending trademark applications for “Gnome.” We will choose a new name for our product going forward.

    Those were some pretty quick ‘additional conversations’.