Page 4 of 4

Re: 32x64 LED monitor

PostPosted: Tue Oct 23, 2018 6:39 pm
by nanowaver

yes, I understand what you are suggesting but am not sure at present whether I can do this. I will need to do some timing tests on adc read time. At present I haven't tried to speed this up so am using the simple analogRead function.


Re: 32x64 LED monitor

PostPosted: Tue Oct 23, 2018 9:10 pm
by dominicbeesley

I don't know the SmartMatrix library, so I can't really help you there. I'd be interested to know how well it works in practice and how much processor time it uses. All the ones I saw used a (too) large chunk of the processor power to do the bit shifting. I think your assumptions look right but I'd ask somebody who knows SmartMatrix...

PS: Klaas is right BTW. I'd also recommend smoothing between the lines!

Re: 32x64 LED monitor

PostPosted: Wed Oct 24, 2018 10:54 pm
by Klaas Robers
Dominic, it is not smoothing, it is introducing a faster sampling and make pixels that are smaller in the line direction. So make small rectangles in stead of squares. This might be called "oversampling". Then the smoothing is done in the analogue input signal.

I would recommend to experiment how fast you can make the getting of samples from the analogue signal, convert them in a digital number and store that number. For 48 samples (squares) per line the sampling frequency should be 19 200 Hz. But hopefully you can go really higher, e.g 96 000 Hz (5 x higher), or 48 00 Hz (2 dots per pixel) or 32 000 Hz (3 dots per pixel).

Good luck !

Re: 32x64 LED monitor

PostPosted: Thu Oct 25, 2018 1:30 am
by dominicbeesley
I know Klaas*, I recommended also smoothing between lines as I find even though subjectively tescards look more "blurry" that _any_ hard edges reduce intelligibility. I recently tested this theory on my 3 year old daughter who was a, hopefully, unbiased subject. Out of ten pictures first played on the NBSC player in "normal" aperture i.e. no smoothing but sub-sampled she recognised 2 out 10 faces on a clip. After turning on smoothing between lines she recognised 8 - that was actually a 100% score as I'd included 2 "randomers" that she failed to recognise both times! Not a rigorous scientific test but it confirmed my belief!

[*Subsampling is, in effect, a smoothing unless you're following a source that produces frequencies up to half the sampling frequency]

In the matrix panel I did I ended up with 4x oversampling, i.e. a sample rate of 192 samples a line (76,800kS/s) this worked out well. The teensy 3.X boards can manage this easily if you use DMA/background sampling and it also makes any digital filtering easier as filters tend not to need to be too long or complex. Also, it makes aliasing filters a lot easier!

I'm sure I remember us writing an article about this...not sure what happened to it!

nanowaver, if you look at my code I posted up it does DMA sampling. I know the code is a bit of a rats nest and is complicated by the synchronisation messing with the sample rate. I'll try and do a DMA sampling example for you as, in the end, it makes for easier coding. If you just do a polled sampling loop then getting the timing right is very very tricky. Also the built in Arduino sampling code is pretty slow...

There's an example here: ... cquisition

Re: 32x64 LED monitor

PostPosted: Fri Oct 26, 2018 12:18 am
by Monochrome
Hi Dom,

Sorry to post this in the wrong place but I seem to be having difficulty in sending you a private message via this group.

I had a few problems while trying out the NBSC software package I recently downloaded from your webpage. Version NBSCv1.1.3491.294

It seemed to install ok on my Win 7 laptop but it failed to run correctly. A short time after launching the software the laptop would say the software had failed with an "Exception error" and invited me to close the program. I checked my version of the .net framework (V4) for updates and it appears to be currently up-to-date.

I suspected it may not have installed correctly so I decided to try removing and re-installing the software but this is where I ran into another problem. It seems I have no options for removal. The usual list of software in Windows "add /remove" software does not include NBSC and I am unable to find a dedicated removal option in the C:\Program Files (x86)/Dominic Beesley folder.

What would be the best method for removal?


Des (aka Monochrome & M0AYF)

Re: 32x64 LED monitor

PostPosted: Fri Oct 26, 2018 3:16 am
by dominicbeesley
Hi Des, rather than mucking up this thread please can we move to here: ... ?f=1&t=872

I'll post up some suggestions there.

Re: 32x64 LED monitor

PostPosted: Fri Oct 26, 2018 9:38 pm
by dominicbeesley
This has inspired me to revisit my earlier led panel code with a view to tidying it up into something more comprehensible. I've not got as much room on my desk these days so I couldn't go with the 32" flat panel led matrix...for the same number of pixels I bought one of these: ... 2749.l2649 - a 1.5" screen is a lot easier to work around and doesn't require a big power supply!

After a lot of head scratching, I've got the basics of DMA working - in moving from a Teensy 3.2 to a 3.6 one DMA reset register changed slightly which stopped the whole thing working. That's 8 hours of my sleeping time gone that I'll never get back.


If I get time this weekend, I'll sort this into a more coherent and better documented code sample and post it up. This is what it looks like with no sync, the black level wrong, and the sound output fed into an ADC pin without even a blocking capacitor....and it already looks really good.