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 » Developers' Corner
USB-CV Interface Project
Post new topic   Reply to topic Moderators: DrJustice
Page 2 of 2 [40 Posts]
View unread posts
View new posts in the last week
Mark the topic unread :: View previous topic :: View next topic
Goto page: Previous 1, 2
Author Message
max92



Joined: Aug 04, 2010
Posts: 17
Location: Sweden

PostPosted: Tue Oct 05, 2010 12:52 pm    Post subject: Reply with quote  Mark this post and the followings unread

i think i'll wait and get max for live first so it's easier to get them to co-work.

It's a great projekt! Very Happy
Back to top
View user's profile Send private message
surgesg



Joined: Jun 05, 2010
Posts: 19
Location: San Diego, CA

PostPosted: Tue Oct 19, 2010 2:25 pm    Post subject: Reply with quote  Mark this post and the followings unread

Hi,

I've made an Octomod object in PD-extended and bundled it with a modified version of the NRCI library I co-developed a few years ago. It's got a great set of control data and rhythm generators, which make it really easy to get some interesting patterns up and running quickly - and now sent out over OSC to the Octomod Processing app.

Here's the PD-Object and library:
http://gregsurges.com/wp-content/uploads/2010/08/nrci-octomod.zip
(open the -workspace.pd file)

And for more info on the use of NRCI:
https://ccrma.stanford.edu/~cburns/NRCI/

Check it out, and let me know what you think!

- Greg
Back to top
View user's profile Send private message
surgesg



Joined: Jun 05, 2010
Posts: 19
Location: San Diego, CA

PostPosted: Thu Nov 25, 2010 8:01 am    Post subject: Reply with quote  Mark this post and the followings unread

Ok, V2 of the host software is here: http://bit.ly/hMmkZd

The release includes MIDI in on CC 20 - 27.

- Greg
Back to top
View user's profile Send private message
max92



Joined: Aug 04, 2010
Posts: 17
Location: Sweden

PostPosted: Wed Dec 01, 2010 8:03 am    Post subject: Reply with quote  Mark this post and the followings unread

you mean OSC is not needed anymore? Very Happy
Back to top
View user's profile Send private message
surgesg



Joined: Jun 05, 2010
Posts: 19
Location: San Diego, CA

PostPosted: Wed Dec 01, 2010 9:47 am    Post subject: Reply with quote  Mark this post and the followings unread

Yep, sending values 0 - 127 over CC 20 - 27 will have the same effect as sending 0 - 1023 over OSC.
Back to top
View user's profile Send private message
elmegil



Joined: Mar 20, 2012
Posts: 1577
Location: Chicago
Audio files: 14

PostPosted: Thu Oct 10, 2013 7:16 am    Post subject: Reply with quote  Mark this post and the followings unread

Necropost!

I finally got around to building my OctoMod V2 this week. I'm 1 TLC2274 short (because I somehow got confused about which BOM was correct, but I did buy one "spare"), but I figure I am close enough to be able to test with 4 of the outputs and verify that it's working.

Except....

Lots of dead links on Greg's site Sad The internet archive/wayback machine helps with that a fair bit though.

I did eventually find USB_Octomod_P5, but subsequent looking through the wayback machine at Greg's site makes me believe this is USB MIDI -> OctoMod and I don't have a good way to test that.

I also was of the impression that the "OSC app" was something that went with it, but the more I look at it the more I'm not sure. Whether it is or not, I can't seem to find it.

I do have Pd installed, but I am pretty clueless about it...

I have loaded the octoFaders app, and the results I get look like this:

udpsend: not connected
txOSC Unpack: /dac 0 0 0 0 0 0 0 0
udpsend: not connected
txOSC Unpack: /dac 0 0 0 0 0 0 0 0
udpsend: not connected

What am I missing?
Back to top
View user's profile Send private message
Blue Hell
Site Admin


Joined: Apr 03, 2004
Posts: 20794
Location: The Netherlands, Enschede
Audio files: 158
G2 patch files: 318

PostPosted: Thu Oct 10, 2013 8:51 am    Post subject: Reply with quote  Mark this post and the followings unread

Wrong IP address and or wrong IP port selected for the intended receiver?

'not connected' seems a bit odd for a conectionless protocol (UDP) tho Confused

_________________
Jan
Back to top
View user's profile Send private message Visit poster's website
elmegil



Joined: Mar 20, 2012
Posts: 1577
Location: Chicago
Audio files: 14

PostPosted: Thu Oct 10, 2013 8:58 am    Post subject: Reply with quote  Mark this post and the followings unread

Well, see there's the problem. I don't have any address or any way I know of to set it. I think what's going on is that the bridging software isn't there, so there's no response that it's looking for.

But.... I'm totally in the dark and have had no luck trying to find the OSC bridging software (the USB_Octomod_P5 appears to only bridge MIDI)
Back to top
View user's profile Send private message
elmegil



Joined: Mar 20, 2012
Posts: 1577
Location: Chicago
Audio files: 14

PostPosted: Mon Jan 19, 2015 11:23 pm    Post subject: Reply with quote  Mark this post and the followings unread

There was a lot of discussion of this over on Muff's but of course that conversation is no longer accessible, if it wasn't deleted outright.

In the mean time, some notes I've come up with playing with this circuit.

1) yes the ..._P5 app is necessary, it's a java connector between PD and the hardware USB interface to the teensy. As Greg points out above it also does MIDI, but that's just an alternative, not it's sole function.

2) The pieces fit together as: plug in Octomod to USB, start *_P5 java application (if possible I'd like to recover the version I had posted over at Muff's so I know it's the right one, but otherwise I can post the one I have here), select your serial port, start the PD octofaders app (same for version). Then adjusting the settings in Pd will be visible in the P5 app, and then you can see the voltage on the outputs.

3) When starting *_P5 you have to tell it what serial port your Teensy is using. That was what my problem had been before -- basically, when you plug it in, you should see a serial port come online, and you need to select that one in the app to make the right connection.

4) I used a lower-spec TC7660 for my voltage inverter initially, but it does not have the oomph to deal with multiple active outputs. I found that when I'd have more than 2 or 3 outputs high, the -5V supply would shift. I tried a few different things, different caps etc, but did not resolve it with that version of the chip. I have done two things now that have made it better, but I still need more testing. Thing 1: I subbed in a TC7660H. Thing 2: pin 6 is only supposed to be grounded if +V is less than 3.5V. In this case it's 5V, so I have lifted the pin. With 22uF low ESR electrolytics instead of 10uF caps, I now get -4V on the negative side, and it is rock solid no matter how many outputs I have at what levels. I'm going to go back to 10uF caps, and I'm going to use tantalum, and see if I can get the output to -5V as it should be, but at the very least a solid supply voltage is workable even if it's not balanced.

5) This is where not having the rest of the conversation at Muff's really hurts. We had some discussion of better ways to do this rather than jumping through hoops of a java app (the P5 thing) AND Pd to get to the outputs. Once I have the power completely sorted, I was going to work on this, but right now I can't remember what that entailed to point anyone else in the same direction. I will note that the Pd communication with P5 is really inefficient, basically infinite loops sending /dac commands continuously even when there are no changes. This seems very wasteful, and there ought to be a better way, updating only when a change is made.

Last edited by elmegil on Mon Jan 19, 2015 11:30 pm; edited 1 time in total
Back to top
View user's profile Send private message
elmegil



Joined: Mar 20, 2012
Posts: 1577
Location: Chicago
Audio files: 14

PostPosted: Mon Jan 19, 2015 11:25 pm    Post subject: Reply with quote  Mark this post and the followings unread

PS: the original Pd App takes an IP address and port to connect to the P5 app; I wasn't getting that part connected, which caused the errors I asked about previously. I'm guessing that allows you to run the P5 app and Octomod on a different computer than Pd. The default address is the loclahost address....
Back to top
View user's profile Send private message
elmegil



Joined: Mar 20, 2012
Posts: 1577
Location: Chicago
Audio files: 14

PostPosted: Mon Jan 19, 2015 11:51 pm    Post subject: Reply with quote  Mark this post and the followings unread

Another important build note that I just recognized while swapping in the tantys:

C2 polarity is backwards. ground is definitely more positive than -5V.

Unfortunately the tantys do not get me lower than -4.08V. Back to the datasheet.....
Back to top
View user's profile Send private message
diablojoy



Joined: Sep 07, 2008
Posts: 797
Location: melbourne australia
Audio files: 11

PostPosted: Tue Jan 20, 2015 1:39 am    Post subject: Reply with quote  Mark this post and the followings unread

you may have seen this already or it may have no relevance , not sure so just in case

Low-pass filtering on the ouputs smooths zippering effects, though if you need as close to +/- 5V operation as possible, I suggest you skip the filters.

quote from the octomod wiki

_________________
In an infinite universe one might very well
ask where the hell am I
oh yeah thats right the land of OZ
as good an answer as any
Back to top
View user's profile Send private message
elmegil



Joined: Mar 20, 2012
Posts: 1577
Location: Chicago
Audio files: 14

PostPosted: Tue Jan 20, 2015 6:52 pm    Post subject: Reply with quote  Mark this post and the followings unread

So the datasheet for the 7660 says a larger cap can have a lower output resistance, and should therefore be closer to the inverse of V+, however, increasing C1 from 10uF tanty to 100uF tanty had zero improvement. I'm going to leave it as it is, but I expect that I will have to live with a range of -4V to +5V. The TC7660H is definitely more stable so I think that's livable.
Back to top
View user's profile Send private message
elmegil



Joined: Mar 20, 2012
Posts: 1577
Location: Chicago
Audio files: 14

PostPosted: Wed Jan 21, 2015 12:12 am    Post subject: Reply with quote  Mark this post and the followings unread

More NOTES based on re-discovering most of this info this evening:

the USB_Octomod_P5 application is a processing (.pde) program that can then be exported as an application to any one or more of windows/mac/linux. It makes use of libraries controlP5, oscP5, and netP5, and also relies on RXTX being installed in a version compatible with the Java installation on your system.

Normal output messages when run within Processing itself:

ControlP5 2.0.4 infos, comments, questions at http://www.sojamo.de/libraries/controlP5
Stable Library
=========================================
Native lib Version = RXTX-2.1-7
Java lib Version = RXTX-2.1-7
OscP5 0.9.8 infos, comments, questions at http://www.sojamo.de/oscP5


### [2015/1/21 0:54:10] PROCESS @ OscP5 stopped.
### [2015/1/21 0:54:10] PROCESS @ UdpClient.openSocket udp socket initialized.
### [2015/1/21 0:54:11] PROCESS @ UdpServer.start() new Unicast DatagramSocket created @ port 9999
### [2015/1/21 0:54:11] PROCESS @ UdpServer.run() UdpServer is running @ 9999
### [2015/1/21 0:54:11] INFO @ OscP5 is running. you (192.168.0.202) are listening @ port 9999

Unfortunately I don't recall the details of how to install processing or these libraries....

You have to select which serial port you Octomod is setting itself up as. On my mac that was /dev/tty.usbmodem12341. If you do not select the correct serial port, you will either connect to the port but get no activity on the Octomod itself, or you will get an error.

You have to have the directory /var/lock available and world writeable. On my mac, setting that up was "sudo mkdir /var/lock; sudo chmod 777 /var/lock"

I have made some changes to the program to give a little bit more sensible status information when you're selecting serial ports. I will attach the zip file.

Additionally, the teensy needs to be programmed (via Arduino with the Teensy add on) with the contents of USB_Octomod_Teensy, also to be added as a zip.


USB_Octomod_P5_pwh.zip
 Description:

Download
 Filename:  USB_Octomod_P5_pwh.zip
 Filesize:  6.23 MB
 Downloaded:  6 Time(s)


USB_Octomod_Teensy.zip
 Description:

Download
 Filename:  USB_Octomod_Teensy.zip
 Filesize:  3.94 KB
 Downloaded:  5 Time(s)


octoFadersv01.zip
 Description:

Download
 Filename:  octoFadersv01.zip
 Filesize:  4.27 KB
 Downloaded:  6 Time(s)

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



Joined: Mar 20, 2012
Posts: 1577
Location: Chicago
Audio files: 14

PostPosted: Wed Jan 21, 2015 12:19 am    Post subject: Reply with quote  Mark this post and the followings unread

I plan at some point to find a way to hook Pd to the Octomod without having to have the intermediate java app (too many moving parts). My understanding from the conversations on Muff's was that Pd does have native serial processing capability, and really all that's going on is the Teensy is listening on the USB Serial port for /dac commands telling it what to set each of the output DACs to.

I think I understand the advantage of having the OSC connector (makes it more generally accessible to applications that can talk OSC) but it's far more complicated than seems necessary for most basic implementations. As far as it goes I expect that I could program the octomod from the Terminal command line with a simple "echo /dac 1 2 3 4 5 6 7 8 > /dev/tty.usbmodem12341" where I give actual dac levels (0 to 1023) in each of the numbered positions. Also remember, 0 corresponds to the most negative output, in my case -4V. It would probably take some jiggering to find the zero point (though...it might be interesting to take one of the DAC outputs and run it to a Teensy analog input, and make it self-calibrating Smile )
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic Moderators: DrJustice
Page 2 of 2 [40 Posts]
View unread posts
View new posts in the last week
Goto page: Previous 1, 2
Mark the topic unread :: View previous topic :: View next topic
 Forum index » DIY Hardware and Software » Developers' Corner
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