nw2s::b - Arduino based algorithmic controller

Discussion, support, and resources for our noise making modules and kits.

Moderators: Kent, scottwilson

User avatar
poladark
Wiggling with Experience
Posts: 362
Joined: Wed Jul 27, 2011 2:27 pm
Location: Stockholm, Sweden

Post by poladark » Mon May 12, 2014 1:24 pm

akrylik wrote:It seems that the panel is too thick for an inserted uSD card to protrude?
Yeah. it's just barely not protruding. works okay sticking your nail in there to pop the card out.

User avatar
poladark
Wiggling with Experience
Posts: 362
Joined: Wed Jul 27, 2011 2:27 pm
Location: Stockholm, Sweden

Post by poladark » Wed May 14, 2014 12:33 am

So i took the nw2s::b out for a walk in the park and i thought i'd share some pictures:

Image

Image

Image

Image

User avatar
akrylik
Super Deluxe Wiggler
Posts: 1907
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik » Wed May 14, 2014 12:41 am

@poladark, thanks for the pics. That helps with my build!

So it looks like the uSD card board is glued to the nylon block...is the nylon block also glued to the interface board (i.e. PCB with jacks and knobs and switches)?

Another thing that has been confusing me is the PWM Driver board which you can see in your 2nd picture top left. It seems to be crooked which I guess is because the standoff is obstructing it. But how is it lining up with the connectors underneath then? :hmm:

User avatar
poladark
Wiggling with Experience
Posts: 362
Joined: Wed Jul 27, 2011 2:27 pm
Location: Stockholm, Sweden

Post by poladark » Wed May 14, 2014 1:55 am

akrylik wrote:So it looks like the uSD card board is glued to the nylon block...is the nylon block also glued to the interface board (i.e. PCB with jacks and knobs and switches)?
Hard to tell without me forcibly trying to take it apart. (I don't want to do that.) There's no glue residue that i can see. The nylon block does seem to fit very snugly against both circuit boards though.
akrylik wrote:It seems to be crooked which I guess is because the standoff is obstructing it. But how is it lining up with the connectors underneath then? :hmm:
Yes, it's a bit crooked because of the standoff. The connection with the connectors underneath are slightly crooked as well, as a consequence of that.

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Wed May 14, 2014 1:29 pm

So for instructions, the panel PCB is up and updated with all of the most recent images:

http://nw2s.net/nw2sb-panel-board-assembly-guide/

Step two and three should be soon. I apologize to the kit buyers, for that delay I've just been wanting to get as much out as possible, so work on instructions when I'm in transit here and there. I'll make step 2 be a goal for tonight (the mainboard). Step 3 will be the child boards and assembly. Getting all those wires in there only works if you do it in a specific sequence.

Yes, I'm gluing the SD reader to the panel board with superglue. It's the most solid solution I came up with. Less permanent solutions were too unstable. It does take a poke-y thing to get the SD in and out.

I will make extra sure to indicate in the instructions which way the shrouded power connector goes. This is _very_ important!.

EDIT: Finished the second step of instructions, so I deleted the images that were in this post. They are now in the instructions:

http://nw2s.net/nw2sb-main-board-assembly/
Last edited by scottwilson on Sun May 18, 2014 11:37 pm, edited 1 time in total.

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Wed May 14, 2014 1:43 pm

As for sketches to start with....

I ship the assembled units with "Alanesque", the turing machine emulation

https://github.com/nw2s/b/blob/master/s ... ueDemo.ino

If you want to see some more random-y CV sequencing, another one is:

https://github.com/nw2s/b/blob/master/s ... uence2.ino

And some probabilistic triggering:

https://github.com/nw2s/b/blob/master/s ... rigger.ino

And if you want to hear it make sounds:

Play a (very short) loop from SD:

https://github.com/nw2s/b/blob/master/s ... oLoops.ino

And a glitchy noise osc:

https://github.com/nw2s/b/blob/master/s ... eNoise.ino

That should get you started playing.

s

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Wed May 14, 2014 5:21 pm

Updated the panel assembly instructions to show more detail around the LED board and how to make sure it fits.

http://nw2s.net/nw2sb-panel-board-assembly-guide/

s

User avatar
akrylik
Super Deluxe Wiggler
Posts: 1907
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik » Wed May 14, 2014 10:31 pm

Thanks for the extra pics, Scott! These will help.

BTW, I recommend filing a small 2mm notch into the spacer that obstructs the LED/PWM driver board slightly. It just takes a few seconds and you can get a perfect fit that way.

Jcsveth
Common Wiggler
Posts: 180
Joined: Mon Aug 12, 2013 7:44 pm

Post by Jcsveth » Thu May 15, 2014 6:10 am

Keep the build hints coming, akrylik. I don't have my kit yet but am collecting your notes. 8_)
Is it worth doing a BUILD thread over in the DIY section for the ten or so of us who are building this - a central place for tips and tricks?

User avatar
akrylik
Super Deluxe Wiggler
Posts: 1907
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik » Thu May 15, 2014 9:36 am

Another gotcha: Make sure you solder the bypass caps in between the ANALOG_IN buffers as close to the PCB as possible. You will need all the extra room you can get to fit the ICs.

Well I have everything soldered and all I have left is to attach the board-to-board cables. However, I just spent an hour trying to figure out a topological problem worthy of a PhD, lol. All of my solutions involved threading at least one cable through the 4th dimension, so I gave up. I think I have to wait for Scott to reveal the cable mystery, specifically the GATE and DIGITAL_IN cables seem to always be in each other's way.

User avatar
akrylik
Super Deluxe Wiggler
Posts: 1907
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik » Thu May 15, 2014 9:44 am

Jcsveth wrote:Keep the build hints coming, akrylik. I don't have my kit yet but am collecting your notes. 8_)
Is it worth doing a BUILD thread over in the DIY section for the ten or so of us who are building this - a central place for tips and tricks?
I'd say let's see what Scott comes up with for his part 2 of the build docs. I was overly eager to get the build done and as a result during my build (without part 2) I wasted a lot of time on deducing things such as component placement on the main board and cabling from the limited information I could glean from poladark's pictures.

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Thu May 15, 2014 10:10 am

need to add

Image
Image
Image
Image
Image
Image
Image

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Thu May 15, 2014 1:15 pm

Two things those photos don't show:

Yes, the lower gate pins and upper digital_in pins are in the way... you have to bend the upper digital-in pins toward the analog-out side of the board for them to mesh. Just put the cable on and then, with your fingers, bend the whole unit at once.

In the third photo above, you can just tell that its bent slightly. I think I usually bend them a lot further than that.

The other thing not shown above is the audio pin header. This one is usually the last to go on. You can push it from the LED-driver side, over the LED driver, between the LED cable and the smaller CV-out cable. Snake it over the op amps and dacs, likely with the help of some needle nose pliers or forceps. Then it gets 1/2 twist so that the pins face down to the mainboard and up to the panel board.

Hope that sheds some light on how to avoid any inter-dimensional, toroidal space warping to get the wires in.

s

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Thu May 15, 2014 3:31 pm

One more thing that I haven't mentioned yet. You see in the above picture that the SD card slot was routed out with a bit that leaves the corners curved.

When assembling, you need to use either a square file or dremel with a squared grinder attachment to make the corners square so that the SD reader fits flush.

s

User avatar
2mb1o
Learning to Wiggle
Posts: 37
Joined: Sun Mar 09, 2014 4:32 am

Post by 2mb1o » Sat May 17, 2014 2:27 am

Hi guys, I get my kit today.
Pretty impressive and scary , I hope building it without mistake.

User avatar
2mb1o
Learning to Wiggle
Posts: 37
Joined: Sun Mar 09, 2014 4:32 am

Post by 2mb1o » Sun May 18, 2014 9:22 am

I've a question about capacitors.

On my mainbord I can see 2 zones for capacitors C2 and another (C1 ??), like in this picture : http://nw2s.net/wp-content/uploads/2014 ... ghhole.jpg

According to the BOM I need C1 and C2 (47µF electrolytic capacitor).

In others pictures on the website, the PCB is different, without the second zone for the capacitor, with just the C2 capacitor soldered.

So, what's the right thing to do ? :
- just solder a 47µF cap in the C2 zone
- solder 2 47µF caps in C2 and in the other zone


Thank you !

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Sun May 18, 2014 9:35 am

Some of the panel board shots were from an older revision of the board which didn't have the 47uF cap on the 3.3V rail. I added this later.

You should solder them both.

-s

User avatar
Alwaysnew
Wiggling with Experience
Posts: 361
Joined: Thu Feb 23, 2012 8:55 am
Location: Stockholm

Post by Alwaysnew » Sun May 18, 2014 9:58 am

Sorry if this is a beginners question, but when do you need +-10 and when do you need +-5?

For 1v/oct info to an oscillator, do you need one or the other? Or is it a question of how many octaves you want to have? What other reasons?

For sending audio, is 5 or 10 better?

User avatar
2mb1o
Learning to Wiggle
Posts: 37
Joined: Sun Mar 09, 2014 4:32 am

Post by 2mb1o » Sun May 18, 2014 3:04 pm

Thank you !

User avatar
akrylik
Super Deluxe Wiggler
Posts: 1907
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik » Sun May 18, 2014 9:47 pm

I finished my build a few days ago and everything is working :sb: Now I just need to make some sketches when I get some free time again.

Warning! Don't look at the Analog Out LEDs when you first turn it on. It took hours for the afterimage that was burned on my retinas to fade. lol.

Some additional build gotchas:

-The capacitor next to the PROGRAM header is probably easier to install on the back (opposite of the header) because otherwise it gets in the way of the header installation.

-You might need to lightly file the edges of the LEDs that run along the top and bottom of the module because they extend past the edge of the circuit board and might cause the module to not fit into some cases (like my Studio System from Elby Designs).

-This module has 55 jacks ( :ripbanana: ) , so when tightening the nuts on the jacks, use a 8mm socket wrench but first cover it completely with a layer of masking tape and cut a hole for the nut to enter. Otherwise you will almost definitely scratch your panel.

Image

User avatar
akrylik
Super Deluxe Wiggler
Posts: 1907
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik » Sun May 18, 2014 10:30 pm

Bluetooth and USB programming are confirmed to work from the Arduino IDE on Windows 7.

3 questions though:

- I noticed that I need to submit the ERASEANDRESET command twice because the first time I always get an "Unknown command" message:

Image

After that it programs fine. Any idea why this happens?

- Is it possible to program at a faster baud rate then 19200?

- When compiling some of the sketches (such as bDemoTriggers) I get the following error:
Arduino: 1.5.6-r2 (Windows 7), Board: "Arduino Due (Native USB Port)"

Using library nw2s in folder: C:\Users\me\Documents\Arduino\libraries\nw2s (legacy)

Using library SPI in folder: C:\Program Files (x86)\Arduino\hardware\arduino\sam\libraries\SPI (legacy)



C:\Program Files (x86)\Arduino/hardware/tools/g++_arm_none_eabi/bin/arm-none-eabi-g++ -c -g -Os -w -ffunction-sections -fdata-sections -nostdlib --param max-inline-insns-single=500 -fno-rtti -fno-exceptions -Dprintf=iprintf -mcpu=cortex-m3 -DF_CPU=84000000L -DARDUINO=156 -DARDUINO_SAM_DUE -DARDUINO_ARCH_SAM -D__SAM3X8E__ -mthumb -DUSB_VID=0x2341 -DUSB_PID=0x003e -DUSBCON -DUSB_MANUFACTURER="Unknown" -DUSB_PRODUCT="Arduino Due" -IC:\Program Files (x86)\Arduino\hardware\arduino\sam\system/libsam -IC:\Program Files (x86)\Arduino\hardware\arduino\sam\system/CMSIS/CMSIS/Include/ -IC:\Program Files (x86)\Arduino\hardware\arduino\sam\system/CMSIS/Device/ATMEL/ -IC:\Program Files (x86)\Arduino\hardware\arduino\sam\cores\arduino -IC:\Program Files (x86)\Arduino\hardware\arduino\sam\variants\arduino_due_x -IC:\Users\me\Documents\Arduino\libraries\nw2s -IC:\Program Files (x86)\Arduino\hardware\arduino\sam\libraries\SPI C:\Users\me\AppData\Local\Temp\build4599815485595907309.tmp\bDemoTriggers.cpp -o C:\Users\me\AppData\Local\Temp\build4599815485595907309.tmp\bDemoTriggers.cpp.o

In file included from C:\Users\me\Documents\Arduino\libraries\nw2s/IO.h:27,
from C:\Users\me\Documents\Arduino\libraries\nw2s/Trigger.h:24,
from bDemoTriggers.ino:22:
C:\Users\me\Documents\Arduino\libraries\nw2s/PCA9685.h:26: fatal error: Wire.h: No such file or directory
compilation terminated.
Last edited by akrylik on Sun May 18, 2014 11:04 pm, edited 1 time in total.

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Sun May 18, 2014 10:56 pm

Thanks for the details and additional tips.

To your points - if you upload any patch that has EventManager.init() in it, then that will set the brightness scale of the analog out LEDs to something more reasonable.

Good point on the program reset capacitor. I've installed all of mine on top and they just angle out a tad.

If there are fitment issues with the LEDs, I apologize. They're fine on my Doepfer, but I understand the euroracks are less than precise from mfr to mfr.

And yes, absolutely, you should cover your socket driver with something. I use just a paper towel cut into a square.

Getting closer to the second step. Still typing and photoshopping. Just in the mountains for a long weekend and my mobile hot spot is a little sketchy!

s

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Sun May 18, 2014 11:14 pm

> I noticed that I need to submit the ERASEANDRESET command twice because the first time I always get an "Unknown command" message:

This is interesting and not something I've noticed before. Because of the gibberish, it may be that the command buffer is getting filled with some other baudrate nonsense. I may be able to make the interpreter a tad smarter. I'll have to experiment.

EDIT: My guess is that if you hit enter once to clear the command buffer, you'd get the same message, but the next "ERASEANDRESET" would work.

> Is it possible to program at a faster baud rate then 19200?

This is a good question. Programming over bluetooth is quite a bit slower than USB, but I'm pretty sure that the BT programming connection is working faster than 19.2k. It's just not working as fast as USB speed.

The reason I believe this is because the sketches usually set their serial bitrate to 9600 and the programming is always faster than this. It's worth looking into, but may not be something I can fix.

> When compiling some of the sketches (such as bDemoTriggers) I get the following error:

This is probably because of two things:

1. The Arduino IDE does not include a header file in the compilation of a library file (such as IO.cpp) if that header file is not also included in the *.ino file. This is very irritating, but the cost of convenience I suppose.

When this happens, it means that I created a new library, but did not include the header file for that library in all of the sketches. Best way to solve this is to look in one of the *.ino files that DO work and compare the includes to one that doesn't work. My guess is that the trigger demo is missing an include to Wire.h

In fact (looking now), it's missing more than that. Here's the current include list:

#include <Key.h>
#include <EventManager.h>
#include <Trigger.h>
#include <Clock.h>
#include <Slew.h>
#include <Sequence.h>
#include <IO.h>
#include <SPI.h>
#include <SD.h>
#include <Wire.h>

One problem that may come up if one of those older sketches doesn't work is that there may be some other refactoring necessary that I haven't done yet. bDemoTriggers looks really simple tho. If the FixedClock doesn't work (it had a bug that I _think_ I fixed), then use the VariableClock for now.

Fingers crossed! Now you guys are way ahead of me. Gotta get the instructions out and the last half of the builds done so I can get back to writing code again.

-s

User avatar
scottwilson
Wiggling with Experience
Posts: 432
Joined: Mon Sep 16, 2013 12:54 pm

Post by scottwilson » Sun May 18, 2014 11:35 pm

http://nw2s.net/nw2sb-main-board-assembly/

Step 2 is available. I'm missing a couple of good shots, but I didn't want to hold it until I can get them.

-s

User avatar
akrylik
Super Deluxe Wiggler
Posts: 1907
Joined: Sat Feb 18, 2012 9:13 am

Post by akrylik » Mon May 19, 2014 12:05 am

Thanks, Scott for the additional info. I'm now able to compile just about all the sketches with your hints. Sometimes a 'registerdevice' needs to be changed to 'registerDevice', so there is some code rot in there which is to be expected on such a fast moving codebase. :hihi:

Just tried tuning my ANALOG INPUTS with bTestAnalogInputs which worked without a hitch except that my 2nd analog input is biased up about 1000mV compared to all the other inputs for some reason. I'll have to pry apart the boards and poke around with a volt meter to see what is happening. :doh:

Don't let my postings ruin your weekend in the mountains. I can wait.

Post Reply

Return to “nw2s”