Desktop remote interface for Exogal Comet Plus DAC

Discussion in 'Computer Audiophile: Software, Configs, Tools' started by MichRT, Feb 22, 2023.

  1. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Hi!

    After trying a handful of DACs, I found love with the Exogal Comet Plus. However, it's user interface.... barely exists. It has a small silver LCD screen that can be a bit difficult to read and is primarily controlled via a BT remote or a depreciated app (Android 9 or lower only). Either remote option can be unreliable at times, so I set out to create a better solution.

    My idea was to use an Arduino to directly send the remote commands, removing the need for wireless shenanigans, or to use a Raspberry Pi to operate the DAC from a web portal. I probed the DAC Bluetooth chip output but hit a dead end. Thanks to Bob (from Exogal) backing up some dealer info, there is enough documentation to use the TTL serial port on the back for firmware updates. Huge help and starting point. I reached out to Jeff (also from Exogal) who was immensely helpful as well, and helped me get the ball rolling.

    Turns out you can control the DAC via the serial port! Using a USB-to-serial adapter cable, I wrote an app that interfaces with Comet! Written in Python since it’s what I’m familiar with. It’s a simple button-based GUI app that currently allows you to select which COM port to use, power on/off, select input and output, mute/half-mute/unmute, increase/decrease volume, or enter a specific volume value. All through the desktop app!

    [​IMG]

    I’m currently working on adding a rotary encoder and an IR receiver to a Raspberry Pi Pico to handle desktop volume adjustment and living room IR remote use. In the future, I would like to run it all off a full Raspberry Pi to add streaming capabilities. There are a lot of hidden functions on comet that I’m excited to see implemented, but right now this is where I am.

    Huge thanks to Jeff, Bob, and others for helping keep this DAC alive and well. Not sure how many people care about this, but I'd like to share it with those that do. Been waiting on solutions like this for a long while - long enough to try to do it myself haha. Thanks!
     
    • Epic Epic x 4
    • Like Like x 3
    • List
  2. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    3/26/2023

    Update! Got most of the code sorted! Adding buttons and a display. Put it in a hifi case for fun :) More work to be done but progress feels good. I plan to use 2x of those displays since I have a few already: 1x for big font Input/Output/Power, the other for Volume/Mute.



     
  3. Armaegis

    Armaegis Friend

    Pyrate BWC
    Joined:
    Sep 27, 2015
    Likes Received:
    7,537
    Trophy Points:
    113
    Location:
    Winnipeg
  4. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Thank you! Let me try to fix that.

    I haven't tried the Ion amp yet but 2x sets of ears I trust were not fans :( For them, Ion came off a bit muffled and over-warm on both speakers and headphones. The Ion amp does let you update the Comet DAC firmware over USB instead of serial, so that's a plus at least! I'd still like to try it someday.

    Comet was originally designed to have IR remote functionality - remnants of the code are still in firmware. The display was the only 'window' out of the device, and it was pretty effective at blocking the IR receiver :confused: so it was cut from production. Pulsar was another product of theirs - it adds back IR remote functionality to Comet.

    I was sad to hear about the shutdown. Their next product was supposed to be an AIO DAC/amp/streamer/CDT. Wish I could've seen it. Maybe it'll show up someday haha
     
  5. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    This is the image from the first post: the desktop app I wrote to control the DAC over serial

    Edit: Hmm. I can't get the Imgur link to embed
    https://imgur.com/a/MPMkWlG
     
  6. Biodegraded

    Biodegraded Friend

    Pyrate Contributor
    Joined:
    May 28, 2017
    Likes Received:
    8,089
    Trophy Points:
    113
    Location:
    Vancouver BC
    Copy the imgur 'Direct Link' into the 'Image URL' box that appears when you click the 'Image' icon at the top of the SBAF text-entry window.
     
  7. Gazny

    Gazny MOT: ETA Audio

    Pyrate Contributor
    Joined:
    May 11, 2020
    Likes Received:
    2,224
    Trophy Points:
    93
    Location:
    open sky
    I believe the status dictates who can share images for spam prevention reasons
     
  8. Vansen

    Vansen Gear Master (retiring)

    Staff Member Pyrate
    Joined:
    Nov 19, 2016
    Likes Received:
    3,897
    Trophy Points:
    93
    Location:
    Seattle
  9. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Thanks y'all! :)

    IR receivers inbound. For some, just having IR support is enough so I'm hoping to knock it out quickly. Since Comet has a USB charge port on the back, using it to power a RasPi Pico that outputs to the serial input jack could be an all-in-one solution. Keep It Simple.
     
  10. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Update: 3/9/2023

    It's not perfect since it's not accepting repeat inputs yet, but I did it. IR remote support is back!



    Progress so far:
    1. Rotary Encoder Vol
    2. IR Remote
    3. Buttons
    4. Screen

    After I clean up the IR code, I'll tackle the screen again
     
  11. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Update: 3/19/2023

    IR remote code is COMPLETE! There are some oddities:

    1. The 'Mute' functionality isn't controllable over serial, only Bluetooth. There's a note about it in the technical documentation suggesting it be added in a future firmware revision :( I have found a consistent workaround however! While you can't mute from the IR remote (could set Vol = 0 I guess), you *can* unmute!

    2. The NEC protocol (common for 'universal' IR remotes) specifies 'repeat' functions silly - if a button is held, regardless of the button, the 'repeat' command sent is identical. I have not ironed out logic to allow holding Vol +/- yet for this reason :confused:



    Just about any IR remote can be coded in. A friend found some awesome OEM aluminum remotes, went ahead and ordered a few to test :) Happy with the progress so far! I don't have a lot of time to devote to it, but I am excited to have it done haha.
     
    • Epic Epic x 2
    • Like Like x 1
    • List
  12. vinaymoturi

    vinaymoturi New

    Joined:
    Mar 22, 2023
    Likes Received:
    0
    Trophy Points:
    1
    Location:
    India
    Hi,
    I am Vinay from India. I have exogal dac and Raspberrypi 4 with linux as Streamer. i want to implement the above mod for my dac , can you please provide step by step process and parts needed.
     
  13. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Hi Vinay!

    I don't have a step by step process or parts list just yet, it's still very much in the design phase and keeps changing. There are things I still plan to work on and implement - when I'm closer to the finish line, I would like to post some sort of guide. Good to hear from another fellow Comet enjoyer :)
     
  14. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Update: 3/23/23

    Finished the desktop app :D It is feature complete depending on the DAC firmware version (some don't have 'Mute' control available: to unmute, simply press one of the volume buttons). More about this tomorrow, sleep is beneficial :)
     
  15. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Update: 3/23/23, part 2

    As mentioned earlier, I finished the desktop app :D

    [​IMG]

    It is written in python and made stand-alone with 'pyinstaller'. No need to install anything, simply unzip the folder and open the 'CometCampground.exe' (I thought the name was fun). It should automatically choose the right COM port: If not, it can be clicked to show a list. To use it, you'll need this cable (non-affiliate link): https://www.amazon.com/dp/B07J3XS7DQ?psc=1&ref=ppx_yo2ov_dt_b_product_details

    I take no responsibility for anything at all: not for damages, the apocalypse, your DAC and life spontaneously combusting to smithereens, etc. Use it at your own risk :) With that out of the way, the goods - Dropbox link to the app: https://www.dropbox.com/s/52uewv1uzqe24gu/CometCampground.zip?dl=0
     
  16. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Update: 3/24/2023

    Since native mute functionality isn't accessible over serial, I wrote custom logic/code to add mute capability to the IR remote! I'll add it to the desktop app as well.

    I should start a GitHub, never have done it before but would be helpful to track changes. I'll look into it sometime this next week :)
     
    Last edited: Mar 24, 2023
  17. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
  18. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Important update - that version of the app is borked: I didn't include the app icon in the distributable! After I did so, it triggered Windows Defender. Oof. So instead I kept it one simple executable file and signed it with a Windows Security certificate so it shouldn't trigger your antivirus. First run takes a second but after that it's quick.


    Comet Campground (desktop remote) v1.2:
    https://www.dropbox.com/s/qj6icnzfmnwb7qy/CometCampground.Iconless.1.2.exe?dl=0

    You shouldn't need to install any dependencies unless MS Visual C++ is out of date:
    https://learn.microsoft.com/en-US/cpp/windows/latest-supported-vc-redist?view=msvc-170

    Please let me know if y'all run into any issues! I hope to post the source code on GitHub soon
     
  19. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Update: 4/6/2023

    Waiting on more case parts. Order got pushed back a month :confused: In the meantime, Mac app is ready to test! Mac OS is... not my favorite haha.

    [​IMG]

    Once I get GitHub sorted and the codebases the same, I plan to open source the program. Hopefully soon :D
     
  20. MichRT

    MichRT New

    Joined:
    Feb 22, 2023
    Likes Received:
    17
    Trophy Points:
    3
    Location:
    USA
    Long time no post. Apologies, life finds a way. I'm hoping to finalize the hardware design in the coming months. If that does not in fact happen and you, the reader, feel so inclined - please feel free to PM me :)
     

Share This Page