Sneak Peek at "Night Driver Desktop" #651
davepl
announced in
Announcements
Replies: 4 comments
-
Neat. I was thinking about something less ambitious than that for some of
my own home lighting once I realized I was in the land of insanity teaching
NightDriver about ESP-Now. Let a Real Computer fill a pixbuf and then
delegate out timestamped buffers to the ESP32s sprinkled around.
https://github.com/BradyMeighan/WLED-Studio, https://www.ledfx.app (not
quite the same space) and https://github.com/isra17/wled-tools/tree/main
have all been on my list of things to look at and seems to play in a
similar space. (There's another, more established peer to it in a bookmark
list somewhere (where ideas go to die ...).
WLED is actually close enough to our pixel buffer format (hardly a
coincidence - an array of colors is an array of colors, though I'm sure
that SOMEONE tried to patent it) but with some little nuisances like
differing alignment or swapped x and y or something that's trivial that I
actually thought about implementing wire compatibility with WLED just to
use the numerous tools like that. I remember thinking they were close
enough that either could be the pattern leader and the others actually
managing pixel strands be the pixel followers without major damage in
either code base.
…On Mon, Sep 23, 2024 at 7:18 PM David W Plummer ***@***.***> wrote:
I've been tinkering off and on with Night Driver Desktop, which is a C#
desktop app used to control multiple instances of NightDriverStrip (or
Mesmerizer or NightDriver Pi... anything that can receive and process ND
wifi packets).
A "Location" is a group of strips. Since you can only hang about 1000 LEDs
off an ESP32 at a reasonable framerate on a single channel, my under-eave
Cabana lights, for example, are broken up into four controllers. So are my
shop cupboards.
The effect draws across the entire location, then breaks up the pieces
that go to each different strip, and since they're time-synced, it acts
like one big canvas.
It can also drive matrices, as shown in this screen shot. If anyone is
interesting in working on or contributing to the C# WinForms app, please
let me know! There's also a lot of multithreaded C# plumbing that does the
communication with the ESP32s, but it's largely all working well.
Cheers,
Dave
2024-09-23_17-12-43.png (view on web)
<https://github.com/user-attachments/assets/f1001d60-a093-421c-b093-c03de80f8a63>
—
Reply to this email directly, view it on GitHub
<#651>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACCSD35Z7ML73NKC3YXYBCLZYCVWXAVCNFSM6AAAAABOXEGIBGVHI2DSMVQWIX3LMV43ERDJONRXK43TNFXW4OZXGIZDQMBQHE>
.
You are receiving this because you are subscribed to this thread.Message
ID: ***@***.***>
|
Beta Was this translation helpful? Give feedback.
0 replies
-
WLED is not really comparable, or I would use it. Unless they’ve added canvases spanning multiple IP address with millisecond level timing sync…
You could build a Jumbotron with NightDriver where each row of the TV is 8 wide. You could have 12 rows, each connected to its own Pi, receiving color data. And the sync should prevent tearing. I just don’t have that many to test with :-)
Going the OTHER way, you could certainly add code (and depending on the license, could just use their code) to add the ability to process WLED data to NightDriver. That could be quite handy.
If you’re familiar with the WLED studio and the other app, and are up to speed on C#, let me know if you want to start tinkering on the app. The core functionality works, you can even load and save definitions, but there’s TONs of work left to do, particularly with respect to scheduling and specifying effects, etc.
- Dave
… On Sep 23, 2024, at 6:41 PM, Robert Lipe ***@***.***> wrote:
Neat. I was thinking about something less ambitious than that for some of
my own home lighting once I realized I was in the land of insanity teaching
NightDriver about ESP-Now. Let a Real Computer fill a pixbuf and then
delegate out timestamped buffers to the ESP32s sprinkled around.
https://github.com/BradyMeighan/WLED-Studio, https://www.ledfx.app (not
quite the same space) and https://github.com/isra17/wled-tools/tree/main
have all been on my list of things to look at and seems to play in a
similar space. (There's another, more established peer to it in a bookmark
list somewhere (where ideas go to die ...).
WLED is actually close enough to our pixel buffer format (hardly a
coincidence - an array of colors is an array of colors, though I'm sure
that SOMEONE tried to patent it) but with some little nuisances like
differing alignment or swapped x and y or something that's trivial that I
actually thought about implementing wire compatibility with WLED just to
use the numerous tools like that. I remember thinking they were close
enough that either could be the pattern leader and the others actually
managing pixel strands be the pixel followers without major damage in
either code base.
On Mon, Sep 23, 2024 at 7:18 PM David W Plummer ***@***.***>
wrote:
> I've been tinkering off and on with Night Driver Desktop, which is a C#
> desktop app used to control multiple instances of NightDriverStrip (or
> Mesmerizer or NightDriver Pi... anything that can receive and process ND
> wifi packets).
>
> A "Location" is a group of strips. Since you can only hang about 1000 LEDs
> off an ESP32 at a reasonable framerate on a single channel, my under-eave
> Cabana lights, for example, are broken up into four controllers. So are my
> shop cupboards.
>
> The effect draws across the entire location, then breaks up the pieces
> that go to each different strip, and since they're time-synced, it acts
> like one big canvas.
>
> It can also drive matrices, as shown in this screen shot. If anyone is
> interesting in working on or contributing to the C# WinForms app, please
> let me know! There's also a lot of multithreaded C# plumbing that does the
> communication with the ESP32s, but it's largely all working well.
>
> Cheers,
> Dave
> 2024-09-23_17-12-43.png (view on web)
> <https://github.com/user-attachments/assets/f1001d60-a093-421c-b093-c03de80f8a63>
>
> —
> Reply to this email directly, view it on GitHub
> <#651>,
> or unsubscribe
> <https://github.com/notifications/unsubscribe-auth/ACCSD35Z7ML73NKC3YXYBCLZYCVWXAVCNFSM6AAAAABOXEGIBGVHI2DSMVQWIX3LMV43ERDJONRXK43TNFXW4OZXGIZDQMBQHE>
> .
> You are receiving this because you are subscribed to this thread.Message
> ID: ***@***.***>
>
—
Reply to this email directly, view it on GitHub <#651 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AA4HCF2FH56YIFLLTJO2SJLZYC7OHAVCNFSM6AAAAABOXEGIBGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTANZTGI4TCNQ>.
You are receiving this because you authored the thread.
|
Beta Was this translation helpful? Give feedback.
0 replies
-
I'll admit my network is clear enough and my displays small enough that UDP
jitter/loss isn't really an issue for me, but those that need it use DDP
<http://www.3waylabs.com/ddp/#Timecode%20Usage>,or DMX/E1.31 which all
handle display subsetting as well. I've experimented with WLED's UDP RT
sync (which has no time sync) and NightDriver's and really can't tell the
difference in *my* case. (Your case is surely more challenging. My
standards are waaaay lower than yours and I'm pretty sure I've seen only a
tiny fraction of your blinkies on cam.) I think ARLS has a timecode, but
I'm not sure. MOST of those could be bolted into the NightDriver base
without a lot of suffering - see also: arrays of RGB - but at some point
it becomes WLED and I haven't exactly seen anyone asking for such things. I
was mostly flirting with this topic a few weeks ago as described in a
moment.
up to speed on C#,
Nope.
particularly with respect to scheduling and specifying effects,
Relevant to my interests (that's why I have bookmarks of those other apps
- I was studying either implementing it for NightDriver or just using
something else) but unless I can accidentally program in C# (Which could
happen... ISTR it looked like Java with a Pascal accent, so maybe I could
do remedial stuff in it...) I'll be very little help to you on that one,
Dave, but I dig watching projects grow!
Holiday lighting is entering my thoughts more this time of year.
RJL
On Mon, Sep 23, 2024 at 8:49 PM David W Plummer ***@***.***>
wrote:
… WLED is not really comparable, or I would use it. Unless they’ve added
canvases spanning multiple IP address with millisecond level timing sync…
You could build a Jumbotron with NightDriver where each row of the TV is 8
wide. You could have 12 rows, each connected to its own Pi, receiving color
data. And the sync should prevent tearing. I just don’t have that many to
test with :-)
If you’re familiar with the WLED studio and the other app, and are up to
speed on C#, let me know if you want to start tinkering on the app. The
core functionality works, you can even load and save definitions, but
there’s TONs of work left to do, particularly with respect to scheduling
and specifying effects, etc.
- Dave
> On Sep 23, 2024, at 6:41 PM, Robert Lipe ***@***.***> wrote:
>
>
> Neat. I was thinking about something less ambitious than that for some
of
> my own home lighting once I realized I was in the land of insanity
teaching
> NightDriver about ESP-Now. Let a Real Computer fill a pixbuf and then
> delegate out timestamped buffers to the ESP32s sprinkled around.
>
> https://github.com/BradyMeighan/WLED-Studio, https://www.ledfx.app (not
> quite the same space) and https://github.com/isra17/wled-tools/tree/main
> have all been on my list of things to look at and seems to play in a
> similar space. (There's another, more established peer to it in a
bookmark
> list somewhere (where ideas go to die ...).
>
> WLED is actually close enough to our pixel buffer format (hardly a
> coincidence - an array of colors is an array of colors, though I'm sure
> that SOMEONE tried to patent it) but with some little nuisances like
> differing alignment or swapped x and y or something that's trivial that
I
> actually thought about implementing wire compatibility with WLED just to
> use the numerous tools like that. I remember thinking they were close
> enough that either could be the pattern leader and the others actually
> managing pixel strands be the pixel followers without major damage in
> either code base.
>
>
>
>
> On Mon, Sep 23, 2024 at 7:18 PM David W Plummer ***@***.***>
> wrote:
>
> > I've been tinkering off and on with Night Driver Desktop, which is a
C#
> > desktop app used to control multiple instances of NightDriverStrip (or
> > Mesmerizer or NightDriver Pi... anything that can receive and process
ND
> > wifi packets).
> >
> > A "Location" is a group of strips. Since you can only hang about 1000
LEDs
> > off an ESP32 at a reasonable framerate on a single channel, my
under-eave
> > Cabana lights, for example, are broken up into four controllers. So
are my
> > shop cupboards.
> >
> > The effect draws across the entire location, then breaks up the pieces
> > that go to each different strip, and since they're time-synced, it
acts
> > like one big canvas.
> >
> > It can also drive matrices, as shown in this screen shot. If anyone is
> > interesting in working on or contributing to the C# WinForms app,
please
> > let me know! There's also a lot of multithreaded C# plumbing that does
the
> > communication with the ESP32s, but it's largely all working well.
> >
> > Cheers,
> > Dave
> > 2024-09-23_17-12-43.png (view on web)
> > <
https://github.com/user-attachments/assets/f1001d60-a093-421c-b093-c03de80f8a63>
> >
> > —
> > Reply to this email directly, view it on GitHub
> > <
#651>,
> > or unsubscribe
> > <
https://github.com/notifications/unsubscribe-auth/ACCSD35Z7ML73NKC3YXYBCLZYCVWXAVCNFSM6AAAAABOXEGIBGVHI2DSMVQWIX3LMV43ERDJONRXK43TNFXW4OZXGIZDQMBQHE>
> > .
> > You are receiving this because you are subscribed to this
thread.Message
> > ID: ***@***.***>
> >
> —
> Reply to this email directly, view it on GitHub <
#651 (comment)>,
or unsubscribe <
https://github.com/notifications/unsubscribe-auth/AA4HCF2FH56YIFLLTJO2SJLZYC7OHAVCNFSM6AAAAABOXEGIBGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTANZTGI4TCNQ>.
> You are receiving this because you authored the thread.
>
—
Reply to this email directly, view it on GitHub
<#651 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/ACCSD323GFIGFRVGTCYLNIDZYDALRAVCNFSM6AAAAABOXEGIBGVHI2DSMVQWIX3LMV43URDJONRXK43TNFXW4Q3PNVWWK3TUHMYTANZTGI4TMNQ>
.
You are receiving this because you commented.Message ID:
<PlummersSoftwareLLC/NightDriverStrip/repo-discussions/651/comments/10732966
@github.com>
|
Beta Was this translation helpful? Give feedback.
0 replies
-
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
I've been tinkering off and on with Night Driver Desktop, which is a C# desktop app used to control multiple instances of NightDriverStrip (or Mesmerizer or NightDriver Pi... anything that can receive and process ND wifi packets).
A "Location" is a group of strips. Since you can only hang about 1000 LEDs off an ESP32 at a reasonable framerate on a single channel, my under-eave Cabana lights, for example, are broken up into four controllers. So are my shop cupboards.
The effect draws across the entire location, then breaks up the pieces that go to each different strip, and since they're time-synced, it acts like one big canvas.
It can also drive matrices, as shown in this screen shot. If anyone is interesting in working on or contributing to the C# WinForms app, please let me know! There's also a lot of multithreaded C# plumbing that does the communication with the ESP32s, but it's largely all working well.
Cheers,
Dave
Beta Was this translation helpful? Give feedback.
All reactions