Ohhhh yes :slight_smile: is it mean it will work perfectly with the trilogy + ansible ?

1 Like

@mDang - totally should. We’re all still working out the best way to support larger #s of devices - but we do know that it all works together.


FIRMWARE UPDATE

Final experimental TR features were just uploaded to the repository.

HTML Command Reference
Printable Command Reference

Each trigger output has its own pulse divider. Pulse dividing is easy - simply specify the divider and it will only output those pulses (skipping the others).

TO.PULSE.DIV 1 3

Will allow every third pulse. Check it in action:

Sick of putting recurring pulses on the Metro event? Each trigger output now has its own independent metronome that will emit pulses. Here is the same demo as above without using Teletype events:

Easy to use:

TO.TR.M 1-n α	     time for TR.M; α in milliseconds
TO.TR.M.S 1-n α	     time for TR.M; α in seconds
TO.TR.M.M 1-n α	     time for TR.M; α in minutes
TO.TR.M.BPM 1-n α	 time for TR.M; α in Beats Per Minute
TO.TR.M.ACT 1-n α    activates the metronome for the TR output; α [0/1]
TO.TR.M.SYNC 1-n	 synchronizes the metronome on the device #

As above, you can set the Pulse Metro in milliseconds, seconds, minutes, or BPM.

Here is a demo showing off the independence of each pulse metronome; these are only a few ms apart and will phase:

7 Likes

It’s LED Steve Reich in a box! Cool!

1 Like

Wow! I may have to order more TXO PCBs.

1 Like

It feels ungrateful to suggest any features, but I had two ideas:

  1. Add TO.OSC.TIME.S and similar time functions to set oscillator/LFO times in seconds, minutes, etc. This makes them more easily synced to the pulse/metronome outputs.

  2. Add a TO.TR.M.PW pulse width function to the metronome. I have a 4ms QCD + expander that I keep around purely because of the dedicated pulse width knobs. Having variable PW is essential for interesting boolean logic processing.

Reading the documentation is very exciting. I’m loving the quantization functionality. Building an 8-step quantized step sequencer with two TXi expanders is going to be a fun physical alternative to the built-in TT patterns.

2 Likes

H@trickyflemming - not ungrateful at all! Not sure if I’ll have a lot of time to get to suggestions before release, but my goal is for this to be as useful as possible for folks. Also - it is open source, so others can take up the charge as well. :slight_smile:

A couple of questions:


For the OSC, it sounds like you are looking for a cycle length - is that right? Right now we support voltage, note number, frequency (in Hz) and LFO (in millihertz - 10−3 Hz). If it is cycle you desire, how about:

Sample Commands:

TO.OSC.CYC      duration of one cycle in milliseconds
TO.OSC.CYC.S    duration of one cycle in seconds
TO.OSC.CYC.M    duration of one cycle in minutes

Should be easy enough to do.


For the pulse width of the automatic metro pulse, this is directly related to the TO.TR.PULSE.TIME/.S/.M setting. Would you want a way to manipulate that value in a percentage as it relates to the M time - or is this good enough?

For instance if you want a 50% pulse:

TO.TR.M 1 1000
TO.TR.TIME 1 500
TO.TR.M.ACT 1 1

I guess we could add a command to set the TIME relative to the M. (I’ve tried to avoid redundant commands, though.) Like:

TO.TR.M 1 1000
TO.TR.M.WIDTH 1 50
TO.TR.M.ACT 1 1

Which would simply set the TO.TR.TIME for that trigger to 500.

Thoughts?

3 Likes

Great! Yes, the TO.OSC.CYC commands are exactly what I was hoping for. I had only suggested TO.OSC.TIME instead of CYC to be consistent with TO.TR.TIME. CYC is more proper.

TO.TR.M.PULSE would be great. I don’t think it would be terribly redundant. One patch idea that I’m thinking of is to use two TXis and one TXo to create four variable clocks. If I want to change the speed of four clocks but keep a constant pulse width of 50%, I could set TO.TR.TIME to be a DIV of TO.TR.M. However, being able to change the pulse width of each channel would quickly get messy!

It would be especially nice if TO.TR.M.PULSE was maintained even if TO.TR.M changed. That way, I wouldn’t need to use two lines to maintain the pulse width if I’m manipulating the metronome’s speed.

1 Like

How did I miss that you’d added a quantizer to the TXi?! That’s really neat. I’d been wondering about adding the ability quantize to the data in a track at some point, but may not need to bother.

1 Like

houston, we have lift-off!!

they fit in isms just fine even with the ii and power cables underneath!

10 Likes

What?
How did you get these?!

1 Like

beta testing in less than 20 characters

3 Likes

ah, lucky you! beta-twenty-character-tester!

1 Like

a short video demonstrating using TXo as a chord voice.

I script sets the 4 outputs to oscillator mode and enables envelopes
1 triggers the envelopes (separate lines because at some point i also used a delay to create a ‘harp’ effect)
4 selects waveforms for all 4 oscillators randomly, triggered by Pressure Points gate output
8 reads voltage from TXi (row 1 from Pressure Points) and creates a chord by transposing oscillators 2-4
sometimes the pitch doesn’t change right away - probably need to add a bit of a delay.

8 Likes

@bpcmusic Sorry for not asking earlier, the beginning of 2017 has been a bit hectic, but do you have any spare PCB / panel sets left? My SDIY is still at the through hole level, but I can see myself going SMD at some point in the next 2 years. (It seems like a lot of SDIY is going SMD really…)

Also, I’m hoping to land a PR for my parser / sub command changes soon, but was wondering if you wanted to merge your extra OPs in first? That way I can take care of upgrading your code to the new way of doing things. Let me know.

3 Likes

@sam - no worries; I’ll get you on the reserve list. As long as I don’t boff too many builds, there should be PCBs to spare.

As for my branch, I’m good to merge that in anytime. There are a few requested ops above and I am also contemplating putting in read operators for values off of the outputs - but the latter is a sizable undertaking and I won’t likely be getting to either until after I’ve spent some good coding time on some upcoming long business flights.

What is the best way to support you, @sam? Should I throw a pull request to the main branch?


At @tehn’s suggestion, I tried heat-shrinking the i2c jumpers I’m including with the modules. What a great suggestion; not only do they look great, but watching the tubing shrink around the little connector is one of the more satisfying things in life. I might end up with a lot of extras!! :wink:


My new 3D printer just arrived (been waiting for ages) and it is amazing. I’ve finally printed the stencil frames that I will use to hold the boards level that have one side of components populated while I apply solder paste to the other.

This is pretty critical as the only assembly problem that I’ve had with the SMD reflow has been a little too much paste being applied to a board that is uneven due to the components on the flip side. Even though a couple of the boards only have a few components on them, being able to reflow all of the SMD keeps the quality very consistent and also helps me go much, much faster.


It has been awesome for me to watch @scanner_darkly play with the BETA expanders on Instagram and above. He has been great in providing feedback and identifying some firmware edge cases (with the envelopes). I really appreciate his support!! Not only is he helping provide everyone with a more solid set of expanders, but it is motivating as hell for me to see something that I’ve been working on for the last year start to get some creative use.

I can’t wait till all of you that reserved them get a chance to use them creatively. There is still some real time until I can assemble and ship the production units; just know how excited I am to be able to share them with you. Thanks for all of the support and good vibes!!

9 Likes

I’ve got to merge some upstream changes from master into my branch. It’s mainly updating some more OPs to the new format. While I’m doing that it would be very easy to do yours at the same time (esp. as my branch has lots of tests to make sure everything has been filled in correctly).

So I say merge what you’ve got first.

Great; I’ll look to do the pull request in the next few days.

1 Like

i wanted to order parts for the diy build and done up the mouser carts for tO and tI, thought this might be useful for some. The parts quantity are as per the BOM

https://www.mouser.com/ProjectManager/ProjectDetail.aspx?AccessID=74d09d9048

https://www.mouser.com/ProjectManager/ProjectDetail.aspx?AccessID=8d918b21da

The carts dont have the headers(including the power header), leds, pots and teensy. For teensy, i usually get it from oshpark.

For headers(non precision) and pots, can try tayda
https://www.taydaelectronics.com/catalogsearch/result/?q=2.54+header
https://www.taydaelectronics.com/10k-ohm-linear-taper-potentiometer-round-shaft-pcb-9mm.html

For precision header(2.54 machined pin), ebay usually has lots of those. But do take note if ordering it within this and next week, most of china/hongkong will prolly be shut down soon during chinese new year, so it will likely to take a while for the processing and shipping out.

For the led, am not sure which one will match the closest to teletype, so will leave that out for the moment

1 Like

That’s awesome, @pathein. Thanks!

For the LEDS, I got them from Tayda (https://www.taydaelectronics.com/) as well. They match pretty well!

For the Teensy, OshPark is the place. They are the cheapest around for the 3.2.

Thanks bcpmusic for the info on the led! Think i will get similar ones from my local store for it.

Just wondering, what will be the current limiting resistor value for the led on the bom?
I tried some similar ultra white ones in another diy kit with a 2.2k value for the current limiting, it was still relatively bright in a dark environment.