0

Building x0x sequencer, everything acting a bit funny.
Moderators: altitude, adafruit_support_bill, adafruit, phono, hamburgers

Please be positive and constructive with your questions and comments.

Building x0x sequencer, everything acting a bit funny.

by Jaytee on Mon Dec 10, 2018 11:11 am

So I’m in the process of building a x0xb0x without the synthesizer. Basically, I just want an acid sequencer for my synths, and I don’t care enough about having the 303 sound to bother with the time and expense of gathering all the rare parts for a full x0xb0x.

I’ve built up the sequencer, the DAC, the slide, the gate out, and the accent out circuits. As well, I’m working on my own I/O board so that I can leave out the parts I don’t need while adding a few parts I want. Currently this exists on breadboard and right now is just limited to power (9V DC in, 9V, 5V and 5.333V out).

After putting all this together, correcting a few basic faults, I’m getting some activity—I get good gates and the “Random” mode does seem to output a random sequencer—but it doesn’t seem like everything is working as it should. I’m not ruling user error out entirely, as I have never used a x0xb0x before and might be misunderstanding the functionality....but still, it doesn’t seem right.

For one, Random is the only mode I seem to be able to get any output from. Keyboard mode doesn’t do anything. I shouldn’t need to set up keyboard mode, right? I should just be able to set the encoder and play some notes? None of the sequenced modes seem to output anything either, although maybe it’s just because I haven’t programmed any sequences in?

The output from Random mode doesn’t seem to be correct either—all the CVs that come out seem to be in the very highest range. Something like 4V-5.333V.

Furthermore, I’m pretty sure the LEDs and buttons aren’t working properly. I don’t really know what the expected behavior is, but this really doesn’t seem correct. When I get the tempo LED flashing, it does so at half the expected rate (two gates opened and closed for every LED blink). The tempo knob itself has no effect. The LEDs above the keys will sometimes light up if I hold down the corresponding button, but not otherwise. Oftentimes one of the key LEDs (often over “D” but I think it sometimes changes) will flash in opposition to the tempo LED (off when it’s on and vice versa) and sometimes one of the other key LEDs will stay lit in addition.

The only changes I’ve made, aside from providing my own power circuit and not populating the synth parts of the board, are replacing the rare transistors with standard 3904/3906s, with legs swapped around to match the board footprint. I don’t believe this is the issue, but can’t hurt to mention. The 12V rail is also just 9V with this build, but again, I don’t think this is related. Feel free to correct me if I’m wrong though.

I’m guessing that since a lot of my weirdness is interface-related, my shift register ICs would be a good place to start looking? I went against my better judgement and got all my ICs from Tayda. I’ve definitely heard of folks getting bad ICs from them in the past, so this seems like a good place to look. Just wanted to get some feedback before I start purchasing and replacing ICs willy-nilly. Any other things to look at? Tests I should try?
Jaytee
 
Posts: 8
Joined: Tue Jun 25, 2013 6:05 pm

Re: Building x0x sequencer, everything acting a bit funny.

by Jaytee on Mon Dec 10, 2018 12:40 pm

I found this thread: viewtopic.php?f=12&t=84234

Seems like I share many of the same symptoms. I don’t have an issue with the MCU rebooting that I’m aware of, but otherwise it all sounds familiar. Leading me to suspect the Tayda shift registers even more strongly.
Jaytee
 
Posts: 8
Joined: Tue Jun 25, 2013 6:05 pm

Re: Building x0x sequencer, everything acting a bit funny.

by antto on Wed Dec 26, 2018 3:43 am

didn't read carefully, but you need 5.333 reference voltage if you want the pitch CV
also 12V is used for the gate output, but this might not even matter

antto
 
Posts: 1628
Joined: Thu Apr 15, 2010 3:21 pm
Location: 127.0.0.1

Re: Building x0x sequencer, everything acting a bit funny.

by Jaytee on Wed Dec 26, 2018 9:32 am

Yeah I have 5.333V. That’s not the problem.
Jaytee
 
Posts: 8
Joined: Tue Jun 25, 2013 6:05 pm

Re: Building x0x sequencer, everything acting a bit funny.

by antto on Wed Dec 26, 2018 10:56 am

oops, okay
well imma just throw a few wild guesses for what kind of things could be going on
1) the orientation of the bank/mode selectors might be shifted, you might be not in the modes you think
2) do your buttons work? keyboard mode on the stock firmware should definately work
3) did you include IC9, IC11, IC12, the resistor network, and the surrounding components? they should be needed for pitch CV
4) do you at least get more sane pitch voltage if you remove IC12? (hopefully it's socketed)
5) is the atmega properly programmed? 16MHz crystal, proper fusebit settings?

some other things:
make sure the atmega is atmega162

the blinking of LEDs in the stock firmware is supposed to be once per beat (half a beat ON, half a beat OFF)
in most sequencer modes where you can play/select patterns, the currently selected pattern is indicated on its corresponding LED (of buttons 1 to 8) where the blinking starts specifically from OFF state in the beginning of the beat
when the sequencer is slaved (to dinsync or midisync) the blinking comes from the master tempo clock, but there is also an emergency internal blinking timer that gets combined with that, so the result looks messed up then

the tempo is stored in the internal eeprom of the atmega.. make sure the lock bits are set correctly (the eeprom might be locked)
check if "tap tempo" works at least

most of the logic ICs are not "rare", you can still get them from most distributors
for the opamp you can use LM358, but no matter what opamp you put there - be careful with whether it can operate with signals close to its power rails.. in the original circuit it's powered from +12V, while in your case from +9V

the typical issue with these shift registers is that they go from the master chip (the atmega in this case) onwards one after another in a chain
if the first shift register (the one that is directly connected to the master) gets messed up - the others won't work even if they are fine
also, the first one might work but its link to the next one might not work (so all the following shift registers won't work)
or, the next one's link to the previous one might not work (giving you the same symptoms as above)
74hc595 (SIPOs) are shifting out from the atmega down, while 74hc165 (PISOs) are shifting in, from the last one towards the atmega
so it's pretty possible that some of your buttons/LEDs work, while others don't
the tempo button IIRC is directly connected to the atmega, so that one shouldn't be related to the shift registers

that's all i can think of for now

antto
 
Posts: 1628
Joined: Thu Apr 15, 2010 3:21 pm
Location: 127.0.0.1

Re: Building x0x sequencer, everything acting a bit funny.

by Jaytee on Wed Dec 26, 2018 1:03 pm

Going through your questions (but I think #5 might be the key one):

1) I have thought about this but I’m not convinced it’s the issue. One of the only things that I can consistently get running is a seemingly random sequence while in random mode. I will double-check, but given how weird everything is acting, I would be surprised if this was my issue.

2) Buttons...kind of work. Some are unresponsive, while others definitely do *something*, just not really what I expect. I also find that for the ones that do respond, I have to hold them down to get a response—just pressing them doesn’t seem to work.

3) IC9, 11, and 12 and related components are all placed. I missed a couple components and had one wrong resistor at first, but I’ve been over it a few more times and can’t find any other wrong components.

4) I haven’t tried removing IC12 (this is the slide switch, yeah?) but I’ll give it a go. I think I checked CV coming out of the resistor network before IC12 and it still wasn’t working right. I need to double-check, but my instinct is telling me that some of bits coming out (and perhaps going into) IC9 are locked to “on” and that’s reducing the range of the CV output.

5) Okay, I think this may actually be the issue. I got my MCU pre-programmed from Willzyx rather than burning one myself, so in theory it *should* be good...but people do make mistakes. (The crystal is 16mhz tho.)

I haven’t actually worked on my x0xb0x PCB for a couple weeks now, but I’ve been reading up and it seems like *something* must be off with my MCU. My issues seem too globalized (ie, button inputs don’t work as expected, LEDs don’t work as expected, tempo encoder doesn’t work as expected, CV out doesn’t work as expected, all despite the components in each section seeming correct) for it to be anything but the MCU at this point.

Fuses being set incorrectly seems like the most likely scenario from the reading I’ve done. If the MCU was corrupt or something, it seems like I’d get no response, but since everything is kinda working but just not working correctly, it seems like what might be caused by the fuses. Unfortunately, I have zero experience with AVR programming (and I only have Macs, which seems to complicate things), so I’m a bit stuck on how to go about checking and/or resetting the fuses. This is exactly the sort of thing I had hoped to avoid by purchasing the MCU pre-programmed. Perhaps I should email Willzyx?

Fwiw, I tried swapping out the shift registers related to the buttons, and got no change. Also, tap tempo doesn’t work, nor does setting tempo by turning the encoder.
Jaytee
 
Posts: 8
Joined: Tue Jun 25, 2013 6:05 pm

Re: Building x0x sequencer, everything acting a bit funny.

by antto on Thu Dec 27, 2018 6:12 am

if the atmega is coming from willzyx, then chances are low that it's not properly programmed

check pins 3, 4, 6, 11, 13, 14 of IC9
perhaps check them for shorts, and in general, look at the PCB and the solder joints and see if you can find suspicious things..
check the voltages on those pins
also check that all the resistors in the network are the same value (200k 1%)

for the tempo encoder, it has two signals, TEMPO_SW_A and TEMPO_SW_B
they alternate
https://en.wikipedia.org/wiki/Rotary_en ... al_encoder
measure the A signal between C100 and R235, and the B signal between C101 and R236, make sure both of them can go logic-HIGH and logic-LOW as you turn the encoder slowly between the "notches"
the capacitors here together with the resistors act as passive lowpass filters, for debouncing the two signals.. make sure they are the right values or if the values are different - at least they should give the same time constant / cutoff frequency

antto
 
Posts: 1628
Joined: Thu Apr 15, 2010 3:21 pm
Location: 127.0.0.1

Re: Building x0x sequencer, everything acting a bit funny.

by djsf on Mon Jan 21, 2019 5:57 am

Just fixed a similar problem (no mode is working as expected, random mode is working for several seconds then switching to another mode, etc.). Check your 25LB22-H encoders (mode/bank switch). https://forums.adafruit.com/viewtopic.php?f=12&t=146479

djsf
 
Posts: 4
Joined: Mon Jan 21, 2019 4:51 am

Re: Building x0x sequencer, everything acting a bit funny.

by Jaytee on Wed Jan 23, 2019 12:48 pm

I ended up speaking with Willzyx and he agreed that one way or another, I must have gotten a bum MCU, so he sent me out a new one. Just arrived today, popped it in, and everything sprung to life. I've been struggling with this project for months now, so it's good to finally be able to move beyond the initial breadboard stage.
Jaytee
 
Posts: 8
Joined: Tue Jun 25, 2013 6:05 pm

Please be positive and constructive with your questions and comments.