electro-music.com   Dedicated to experimental electro-acoustic
and electronic music
 
    Front Page  |  Articles  |  Radio
 |  Media  |  Forum  |  Wiki  |  Links  |  Store
Forum with support of Syndicator RSS
 FAQFAQ   CalendarCalendar   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   LinksLinks
 RegisterRegister   ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in  Chat RoomChat Room 
 Forum index » DIY Hardware and Software » Lunettas - circuits inspired by Stanley Lunetta
NibbleBeat
Post new topic   Reply to topic Moderators: mosc
Page 1 of 1 [4 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Author Message
synaesthesia



Joined: May 27, 2014
Posts: 63
Location: Germany
Audio files: 17

PostPosted: Fri Aug 22, 2014 12:37 pm    Post subject: NibbleBeat
Subject description: ByteBeat's little brother
Reply with quote  Mark this post and the followings unread

Now, here is something that I wanted to build for a long time. Not sure if you already heard about ByteBeat. If not, you must visit http://countercomplex.blogspot.de/2011/10/algorithmic-symphonies-from-one-line-of.html and read about it. It is simple, yet very cool and the possibilities are amazing. I spent many hours to experiment with this principle. There is an online player where you can try your own formulas at http://entropedia.co.uk/generative_music_1.2_beta

I already built a ByteBeat player using a PIC24 micro-controller, yet I always wondered if the basic principle cannot be applied to Lunetta circuits as well. I thought about a circuit that could play a class of simple formulas that I considered for this purpose. Try for example,
Code:
((((t/(2+((t>>17)&3)))&(((t>>11)&1)|((t>>12)&2)|((t>>9)&4)))|((t/(2+((t>>15)&3)))&(((t>>10)&1)|((t>>8)&2)|((t>>11)&4))))&7)*32


Anyhow, a ByteBeat player using logic chips could be built, but the number of chips would be rather high. So I tried for a while to simplify it even further. The result is NibbleBeat.

First of all, I am using only 4 bits rather than 8 for the frequency mixer. Thus the name NibbleBeat. Then there is no DAC, simply a resistor mixer. The first mixer stage should actually consist of another 8 NAND gates. I replaced them by Diode-Resistor OR gates here. When actually building this on a board, I would rather use two extra 4093 chips. The frequencies are generated by two 4520 counters. I made the oscillators driving them adjustable by pots rather than using digital dividers like in the original concept. That means the frequencies are fixed and might not be exactly tuned and in phase, but slightly de-tuned. Well, that turned out to be the best part of this version. It introduces a tiny bit of interference that just sounds great, well to my ears at least.

The circuit I am showing here uses just two oscillators U1A and U1C driving two counters U2A and U3A for the eight (four plus four) base frequencies. The pattern is generated by a single oscillator U1B driving two counters U2B and U3B that in turn enable the individual frequencies via the OR+NAND gates. I tried two separate oscillators for pattern tempo, but that resulted in a mess. the circuit uses the same trick as the Hexarhythm to change the patterns. Pressing the RESET button brings the second counter out of synchronization with the first counter and that modifies the pattern. I wanted to keep it simple, so the pattern itself cannot be modified much more than that for now. The fun part is in tuning the two oscillators against each other.

One possible modification is to feed the second tempo counter U3B with the same clock as the first. The pattern cycle will be shorter then and the variations a bit more noticeable, but I found the longer pattern cycles for the second oscillator more interesting, especially when the matching tone generator U1C is tuned to lower frequencies.

The recording starts with tuned (or not so much tuned) oscillators. Then I increase the speed. Next I modify the pattern a few times, change the tuning of the oscillators, and finally slow the tempo down again. It gives you a good idea how the circuit sounds. No effects added, this was recorded directly to my laptop.


NibbleBeatV1.PNG
 Description:
 Filesize:  28.95 KB
 Viewed:  28 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

NibbleBeatV1.PNG



NibbleBeatV1.mp3
 Description:

Download
 Filename:  NibbleBeatV1.mp3
 Filesize:  2.09 MB
 Downloaded:  78 Time(s)

Back to top
View user's profile Send private message
JLS



Joined: Nov 05, 2005
Posts: 426
Location: Czech
Audio files: 27
G2 patch files: 275

PostPosted: Sun Aug 24, 2014 11:06 am    Post subject: Reply with quote  Mark this post and the followings unread

Nice sound and great idea.

Thanks Kamil

_________________
Sorry my bad English Smile

http://jlswbs.blogspot.com
http://jlswbs.wordpress.com
http://jls.wbs.cz
Back to top
View user's profile Send private message Visit poster's website
JLS



Joined: Nov 05, 2005
Posts: 426
Location: Czech
Audio files: 27
G2 patch files: 275

PostPosted: Sun Aug 24, 2014 11:09 am    Post subject: Reply with quote  Mark this post and the followings unread

Full algo ported to Teensy 3.1 board Smile

Kamil


ByteBeatT.jpg
 Description:
 Filesize:  48.7 KB
 Viewed:  9 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

ByteBeatT.jpg



ByteBeatT.mp3
 Description:

Download
 Filename:  ByteBeatT.mp3
 Filesize:  817.14 KB
 Downloaded:  28 Time(s)


_________________
Sorry my bad English Smile

http://jlswbs.blogspot.com
http://jlswbs.wordpress.com
http://jls.wbs.cz
Back to top
View user's profile Send private message Visit poster's website
synaesthesia



Joined: May 27, 2014
Posts: 63
Location: Germany
Audio files: 17

PostPosted: Sun Aug 31, 2014 2:10 pm    Post subject: Reply with quote  Mark this post and the followings unread

@JLS this melody sure sounds familiar Smile

I was looking for alternatives to the pattern generation of the NibbleBeat circuit and thought about a similar trick as in the Wheel of Fortune circuit. Instead of clocking the counters that generate the rhythm pattern just once, why not clock it multiple times within a very brief period?

So in this version I am generation a short pulse with U1B of about 1.2 ms. This is the time it takes to load C1 to the level recognized by the Schmitt-Trigger as HIGH. During that time a second oscillator U1A is enabled and sends a burst of about 1 to 15 short pulses to counter U2B (see scope screenshot). This way the counter advances by multiple steps each time. I call this my "jump counter" circuit. The second counter U3A is again coupled via Q0 of the first counter.

Of course, if the number of clocks in the burst is even or a power of two, the pattern becomes rather simple. This happens around 25 seconds into the recording. The best patterns come from odd numbers, and even better, primes like 3,5,7,11, and 13. 15 steps would effectively run the counter backwards. I found that four LEDs driven by the outputs of counter U2B help to see the pattern increments.

In this version I also changed the diode-resistor logic to normal gates, using only NANDs. Actually, any combination of AND, NAND, OR, XOR gates could be used. An AND stage followed by an OR stage sounds best, and two levels of NAND is equivalent to AND-OR stages. The second screenshot shows an example waveform of the circuit output.

The recording doesn't change pattern tempo nor oscillator tuning this time. It works just like in version one. I start with 7 clocks per pattern step, then tune it down to one step. At the end I increase to a constant high step count and play with the reset button for counter U3A a few times. Again, no effects added, this was recorded straight to my laptop.


NibbleBeatV2-JumpCounter.png
 Description:
 Filesize:  3.65 KB
 Viewed:  265 Time(s)

NibbleBeatV2-JumpCounter.png



NibbleBeatV2-Waveform.png
 Description:
 Filesize:  3.58 KB
 Viewed:  265 Time(s)

NibbleBeatV2-Waveform.png



NibbleBeatV2.PNG
 Description:
 Filesize:  48.67 KB
 Viewed:  20 Time(s)
This image has been reduced to fit the page. Click on it to enlarge.

NibbleBeatV2.PNG



NibbleBeatV2.mp3
 Description:

Download
 Filename:  NibbleBeatV2.mp3
 Filesize:  3 MB
 Downloaded:  33 Time(s)

Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Moderators: mosc
Page 1 of 1 [4 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software » Lunettas - circuits inspired by Stanley Lunetta
Jump to:  

You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum
e-m mkii

Please support our site. If you click through and buy from
our affiliate partners, we earn a small commission.


Forum with support of Syndicator RSS
Powered by phpBB © 2001, 2005 phpBB Group
Copyright © 2003 through 2009 by electro-music.com - Conditions Of Use