Lunar VS ddcctl

Compare Lunar vs ddcctl and see what are their differences.

ddcctl

DDC monitor controls (brightness) for Mac OSX command line (by kfix)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
Lunar ddcctl
191 22
4,280 1,807
- -
8.9 0.0
5 days ago over 1 year ago
Swift C
MIT License GNU General Public License v3.0 only
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

Lunar

Posts with mentions or reviews of Lunar. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-10.
  • No I don't want 2, Emacs
    1 project | news.ycombinator.com | 15 Apr 2024
    Pretty sure Lunar [0] can do this for you, and you can buy a lifetime license.

    [0]: https://lunar.fyi/

  • Show HN: Multi-monitor KVM using just a USB switch
    9 projects | news.ycombinator.com | 10 Feb 2024
    I've had good luck with the Lunar app - it manages my Dell and LG monitors on an M2. (No affiliation) https://lunar.fyi
  • PHOLED Will Transform Displays
    1 project | news.ycombinator.com | 21 Dec 2023
    Wild! I am working on exactly the same thing now for Lunar (https://lunar.fyi), and I'm also calling it Night Mode ^_^ what a coincidence

    I've been trying to make "white regions in dark backgrounds" less painful for months, but doing that at the system level on macOS is incredibly hard. I see you're doing it with CSS filters, which make sense in the limited scope of an article. But applying something like that on the whole macOS UI would cause confusion.

    I already use something similar on the iPhone: I read on the Kindle app which has white text on black background, then I have a full red Color Tint filter on the Triple Back Tap shortcut which I use before reading. Very similar effect to your solution, although I don't have images in my books.

  • If buying isn't owning, piracy isn't stealing
    2 projects | news.ycombinator.com | 9 Dec 2023
    I was comparing anti-piracy measures with DRM, I don't have actual DRM in my app. I can't block users that really bought the app from using it (which is what DRM is notorious for).

    But I do have a license verification for the Pro features (https://lunar.fyi/#pro), and that is what people are cracking in the app. I only added more protection around this verification.

  • MacOS tools to make your life easier
    14 projects | /r/MacOS | 7 Dec 2023
    Lunar
  • Create a shortcut for even lower phone brightness
    1 project | news.ycombinator.com | 6 Nov 2023
    There's no Reduce White Point on Mac as far as I am aware. However, you can use the fantastic Lunar [0] app to achieve this, as it supports "Sub-Zero Dimming".

    To use it, I think you just need to start Lunar, and then press the Reduce Brightness button on your keyboard until it goes below the minimum Mac allows.

    [0] https://lunar.fyi

  • YouTube's Anti-Adblock and uBlock Origin
    8 projects | news.ycombinator.com | 29 Oct 2023
    As the dev of a macOS app that breaks all the time because of external hardware, the tone of the article hits close to home. (I’m talking about https://lunar.fyi/ whose brightness control commands can be blocked by USB-C hubs, “smart” monitors, too long cables etc.)

    I had to disable public GitHub issues on the app repo [1] because people seemed to fuel each other with spiteful comments and “why can’t you just!!” sentences.

    The contact form still attracts many such “entitled” people and it hurts to wake up to such messages, but at least I can choose to ignore those if I can’t bring anything to the discussion. There’s no peer pressure.

    These people are expecting too much from a handful of developers who are sharing a lot of free work and time that could have been spent better than hunting new IDs in URLs and updating regular expressions.

    [1] https://github.com/alin23/Lunar

  • I2c-USB-hub: An i2C Controllable USB 2.0 Hub
    7 projects | news.ycombinator.com | 11 Sep 2023
    Last year I bought a second computer for my music studio. I wanted to use the same set of 2 monitors and wired keyboard + trackpad on both machines.

    I wrote simple scripts to switch my monitor inputs with keyboard shortcuts (even simpler with Lunar, amazing new Mac app — https://lunar.fyi), which saved me from having to press annoying input-source buttons.

    But I couldn't for the life of me find a simple, suitable software controllable KVM switch. That still requires the hardware button to be controlled, so frustrating.

  • Changing my relationship with GitHub Copilot
    2 projects | news.ycombinator.com | 28 Aug 2023
    Some people like the process of writing code, more than the end result. I had a few months of that feeling, but nowadays it’s rarely about writing for me.

    Just the other day I used Copilot to explain the disassembly of macOS KeyboardBacklight code, so that I can turn off the keyboard lights when using Lunar’s Blackout (https://lunar.fyi/#blackout)

    It even helped me generate the ObjC function signatures from assembly and use the right calling convention in Swift afterwards. It really feels like magic.

    I would have no joy in writing that code, it’s mostly bridging and translation anyway. I just need it to do this thing so that people can take advantage of it.

  • A collection of useful Mac Apps
    32 projects | /r/macapps | 13 Jul 2023
    Lunar - Price: Free (optional premium one-time purchase) Menu bar app for macOS that allows you to adjust your display's brightness and color temperature. (Pro version also available.)

ddcctl

Posts with mentions or reviews of ddcctl. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2023-04-15.
  • TIL there are apps that can control your monitor without touching the buttons on it
    9 projects | /r/todayilearned | 15 Apr 2023
    There are some other command line based open-source alternatives as well, like ddctl and m1ddc - the former only works on Intel, the latter on M1 Macs (M2 Pro and HDMI is not supported). Lunar has great CLI support as well for those who want a command-line based solution.
  • Let's talk: name your favorite accessories that improved your PC/desk area.
    5 projects | /r/buildapc | 18 Feb 2023
    https://github.com/kfix/ddcctl is what you are looking for! It works on my dell and asus monitors at least.
  • Mac mini m2 pro not working with dell ultrasharp u3223qe over usb
    3 projects | /r/macmini | 8 Feb 2023
    Only TB supports DDC? https://github.com/kfix/ddcctl
  • Monitor controls for Mac OS X command line
    1 project | news.ycombinator.com | 1 Feb 2023
  • The Apple TV expects you to have an iPhone in order to accept new iCloud terms and conditions
    5 projects | /r/technology | 16 Jan 2023
  • Ask HN: Best tips for reducing eyestrain while coding with astigmatism?
    3 projects | news.ycombinator.com | 19 Dec 2022
    I received the same diagnostic in 2017, which coincided with the year I got my first external monitor for my MacBook. Headaches and eye pain became a more common occurence in the first weeks, until I stumbled upon ddcctl [0] and the fact that monitor brightness can be changed from the OS.

    That's when I developed the first version of Lunar (https://lunar.fyi) to adapt brightness automatically throughout the day based on the sun position in the sky. (reading the light sensor was not possible at the time)

    That combined with Night Shift (macOS native version of f.lux) fixed most of my problems.

    I also tried blue light filter glasses but the only effect they had was removing more money from my savings. I feel like this is just modern day snake oil for computer workers.

    In the end, what fixed all of my problems was a LASIK [1] operation (well actually PRK because I had only a small abberation). I still recommend this to all my friends and relatives who are always complaining about their vision. It did change my life.

    I still cringe when someone turns on an overhead lightbulb though, I never use those in my home. Turns out this wasn't my astigmatism, it's just that most LED bulbs are simply too bright single point lights.

    I fit my home with TRADfri warm light lamps hidden behind sofa/door/desk [2], WLED-powered [3] LED strips and simple string lights (like you can see in the front page video on https://lowtechguys.com/volum/)

    [0] https://github.com/kfix/ddcctl

    [1] https://en.wikipedia.org/wiki/LASIK

    [2] https://www.ikea.com/gb/en/p/tradfri-remote-control-kit-smar...

    [3] https://kno.wled.ge/

  • Ask HN: What is the best income stream you have created till date?
    3 projects | news.ycombinator.com | 9 Dec 2022
    macOS apps which I share at https://lowtechguys.com/ bring me $7k/month on average at the moment, and it keeps growing.

    It started in 2017 when I shared the first free and open source version of Lunar (https://lunar.fyi/), an app for controlling monitors.

    At that time, there was only a command line for doing this stuff (https://github.com/kfix/ddcctl) and I wanted a more visual way of changing the brightness. So I learned Swift, learned how to bridge the ddcctl C code and call it from Swift, then made a rough interface and published it: https://www.producthunt.com/products/lunar#lunar-5

    It turned out people did have a need for this and asked if they could donate. I set up a Buy me a Coffee page and in 4 years collected about $5k in donations. That's a lot of money for a Romanian.

    When Apple Silicon appeared, Lunar didn't work anymore because the whole hardware arrangement and drivers were different, and there was no documentation on how to send I²C data. I took the plunge and quit my stressful job, bought an M1 MacBook and reverse engineered the I²C communication: https://alinpanaitiu.com/blog/journey-to-ddc-on-m1-macs/

    Then published Lunar 4 as a Free version with a Pro paid upgrade. I was reluctant with this, didn't think anyone would buy it, but to this day I'm able to be unemployed and put my ideas into practice because of it.

  • What are some useful cli tools that arent popular?
    23 projects | /r/commandline | 4 Jul 2022
    ddcctl - DDC monitor controls for the OSX command line
  • Dasung Macos shortcuts on M1
    2 projects | /r/eink | 2 Jul 2022
    Not really sure if ddcctl could help or is related to ddcutil, but in all case I had no chance with it.
  • HDMI Firewall
    9 projects | news.ycombinator.com | 21 Jun 2022
    No worries! The same sentiment is what keeps me enthusiastic about programming day after day :)

    So computer monitors have support for a communication protocol called Display Data Channel which is normally used by the host (Mac, PC) to get info about supported resolutions, frame rates, signal timing etc.

    On top of that, a command interface has been created called MCCS or Monitor Control Command Set [1] which allows changing brightness, volume, input and a ton of other aspects of the monitor, by sending specific bytes through the cable. That cable can be HDMI, DisplayPort, Thunderbolt, VGA, DVI. It doesn’t matter, as long as it has dedicated wires to carry the I2C signal.

    I2C is the 2-wire communication protocol used by DDC, and it basically defines things like “a pulse of 5V (volts) of x milliseconds followed by 0V of y milliseconds means the 0 bit. The 1 bit is represented by a pulse of 5V of 2x milliseconds”. It’s a bit more complex than that, also defining TCP-like features with data frames and ACK packets, but you get the idea. It’s something that both devices agree on so that they can send raw bytes using 5 volt pulses.

    I’ve created Lunar as an adaptive brightness app for macOS after finding out about a little CLI called ddcctl: https://github.com/kfix/ddcctl

    That’s where I learned how DDC packets look like, where to place the payload (brightness value between 0 and 100, input ID, etc) and how to write that to the monitor using the macOS I2C APIs.

    When Apple Silicon came out, none of that was possible anymore so I had to go looking around kernel assembly and private macOS frameworks for “the Apple Silicon way” of writing data through I2C.

    If you’re also curious how I learned that, it’s a very cool domain called “reverse engineering” and I learned it while working as a Malware Researcher at Bitdefender. A bit hard to get started, but so many gems to discover once you know how to open binaries in IDA/Hopper and look around their disassembled code.

    [1] https://milek7.pl/ddcbacklight/mccs.pdf

What are some alternatives?

When comparing Lunar and ddcctl you can also consider the following projects:

MonitorControl - 🖥 Control your display's brightness & volume on your Mac as if it was a native Apple Display. Use Apple Keyboard keys or custom shortcuts. Shows the native macOS OSDs.

ddcutil - Control monitor settings using DDC/CI and USB

BetterDisplay - Unlock your displays on your Mac! Flexible HiDPI scaling, XDR/HDR extra brightness, virtual screens, DDC control, extra dimming, PIP/streaming, EDID override and lots more!

ddccontrol - DDC Control

Monitorian - A Windows desktop tool to adjust the brightness of multiple monitors with ease

winddcutil - Windows implementation of the ddcutil Linux program for querying and changing monitor settings, such as brightness and color levels.

BetterDummy - Unlock your displays on your Mac! Smooth scaling, HiDPI unlock, XDR/HDR extra brightness upscale, DDC, brightness and dimming, dummy displays, PIP and lots more! [Moved to: https://github.com/waydabber/BetterDisplay]

OSX_GVT-D - Guide to pass iGPU to MacOS KVM guest.

RatPoison - Latest Ver: 1.7; Default Menu Key is F1; Charlatano's Successor; dn

display-switch - Turn a $30 USB switch into a full-featured multi-monitor KVM switch

SlimHUD - Replacement for MacOS' volume, brightness and keyboard backlight HUDs.

osx_battery_charge_limit - Intel-only Macbook (OSX) limit maximum battery charge using SMC