Posts Tagged ‘WTPA v1.0’

WTPA v1.0 Stuffed With Code Like So Much Stove Top

Wednesday, April 15th, 2009

No pretty pictures today. The hex for WTPA is up to >10kB, which is quite possibly the most code I’ve ever crammed onto an 8-bit part.

The feature list is full and then some, and the ISRs are beginning to suffer speed wise. When the sampler is cranking out multitimbral stuff at high rates you can hear the audio bog down, which I guess is ideologically in line with the “crusty first” aesthetic, but it bugs the anal programmer in me.

In the waning hours before Bent this means going through all the pristine, general ISRs and doing what I can to save cycles, avoid divides, replace conditional branches with jump tables, etc etc. This usually means the code gets ugly, at least for me.

Tomorrow (this morning, I guess) the proper board Rev comes in — that means I’ve got to make a new WTPA and take pretty pictures, and write the manual. Lots of stuff to do before Saturday…

Oh, and did I mention the limited edition video-synthesis daughter board I’m making for WTPA? Come see it in New York at Secret Project Robot on the 25th.

WTPA v1.0 Up and Running, And Hosed (a little). Also Dorkbot.

Thursday, April 9th, 2009




Oh Snap! There’s the goofy silkscreen I promised last time. But don’t worry, it gets better :-)

So I’ve done my best with the above Still-Life-With-Nerd collage to try and convey, in a meaningful visual way, all the cool stuff that’s happened with WTPA since last week. One really perceptually-difficult-to-convey-yet-great thing is that I’ve put my proper rent-paying clients on hold for the time being to make room for this project full time. It’s scary, but it feels really good! And as rebellion goes I suppose it beats buying a Camaro.

Outside of that, the BOARDS ARE HERE! Sort of.

The bad news is, I found a copper bug (my fault) pretty much right away. With as many hardware revisions as I’ve done this was really embarrassing. It led to a natural dilemma — it was a small bug that could be easily fixed with an exacto knife and some jumper wires, so should I you pass that fix off to you, the kit builder, or should I pony up for an ENTIRE NEW SET of boards so that they’d be perfect?

I debated, then reordered them. This also allowed me to fix a half a dozen little cosmetic and noise-floor / routing things that I wasn’t happy with anyway. I wasn’t nuts about dropping another grand on boards, but I’d be less happy knowing that the final kits were going out half-assed. You can’t pay too much for pride :-)

Silver Lining: This now allows me to sell bare boards, which a ton of people have asked for. Originally I hadn’t planned to do this, but now I can sell the flawed boards (for cheap) with an errata sheet to those among you who are exceptional broke asses and not mess up the math and parts counts for the complete kits. It’s a small consolation, but it’s better than making them drink coasters.
Cosmetically, the boards are flawless! I got a not-quite-perfect board from PCBCart before this (for another job) and let them hear about it, and they bent over backwards to make this one dead-on.

Taiwan Alpha also came through — the pots (all 2000 of them) showed up from China early and perfect.

Then there was Dorkbot which was a blast. Above you can see me in front of a page of C code (looks like the ISR) apparently casting some kind of spell.

People geeked out, I gave away some free PCBs, I laughed, I cried, it was better than Cats.

Finally, social business done, it was back to the Fortress of Solitude with some espresso and a dream. Two great things have come out of this so far:

One:

WTPA now has a banked sample system! This means that instead of holding a loop, WTPA can hold an arbitrary number of loops (theoretically, anyway) and can do anything it is able to do to any or all of those loops independently and all at the same time.
Practically speaking, I’ve pinned that “arbitrary” number at 2 :-). There was a lot that went into this! A huge portion of the code had to be re-written — basically all the audio and memory handling parts. The audio system now grabs data from the ADC and passes it to however many “virtual samplers” for recording, and then sums together whatever output they have before putting it back onto the DAC. Better still, the different banks can use different clock sources! Meaning that you can be triggering events with midi and controlling pitch arbitrarily one one bank, and twiddling knobs and generally being a caveman on the other, with a totally independent samples.
By far the hardest part though was having to wrap my head around implementing a memory manager (ever think you’d have to write malloc? Me neither) which was quite challenging. To be honest, I copped out a little, and it is because of this that WTPA uses only two banks for now.

All this cool functionality also has a totally new (and much more intuitive, I think) menu system. Finally, I’m in the midst of getting rid of “modality” in WTPA so that there’s no such thing as “MIDI mode” and “Manual Mode”. Anything you can do with WTPA you can always just do, without mucking around in a menu.

Two:

I crunched the money numbers! As of today, I know exactly how much all this crap has cost me, and therefore how much these magic beans will cost YOU, dear reader. I’m not spoiling the surprise, but I will say that although I have definitely screwed up some estimates in my time, I was pleasantly surprised with how this one came out. And you should be too.

I’ll keep you all posted on the nerdy revelations better for this last week. Don’t expect total coherence or an Infinite Jest command of grammar, but I got you. Oh, and I think I’m going to LA to talk about WTPA at the end of the month, so if you’re on the West Coast come say hi! More details on that to come.

Xoxoxo,

TMB

ABS Enclosure for WTPA, Boards on the Way

Tuesday, March 31st, 2009

These last days of March have been decidedly un-lamb-like. Last week I got in the test boards for the final WTPA and yesterday night I assembled them. They look clean. Nice and small. I did some preliminary testing, but decided to played hookey tonight and bend up this Magick Tuxedo out of ABS. She looks good in black, right?

WTPA makes her first pre-release public debut at Dorkbot Chicago, the first DB meeting in fact since Deadtech closed its doors. I’m honored and excited and also nervous.
The version seen above is a barebones copy of the final version I ordered so I could keep coding with the latest hardware while I was waiting for the real-deal-Hollyfields to come from China, but those crafty fabricators at PCBcart are fast! They’ve already shipped! Expect this cursed soldermask-drought to end and pictures of something with a goofy silkscreen soon.
Unfortunately (???) March has seen an upswing in this whole “Business” thing which I feel obligated to pursue in order to “keep organic peanut butter on the table”, and I’m not as far along on the new audio functions as I’d like. But I’m obligated to have at least some cool new effect (and not just smartly registered MIDI jacks) to show off at the dorkbot meeting, so I’m thinking I’ll work out this granular synthesis thing I sketched out a couple weeks ago. Stay tuned for clips….

xoxoxo, TMB

WTPA v1.0 Kit Boards Ordered

Monday, March 23rd, 2009

Free Technical Advice: When the Fluke suggests you change its battery, change its battery.

Better: I ordered the REAL BOARDS from China today! I’ll spare you some more pretty gerber files, even though the latest ones are by far the most lovely. Summarily filed under the “breaking some eggs” part of the process. That having been said, my people at PCBCart have so far surprised and pleased me with being fast and friendly. I am now Significantly Monetarily Committed to Not Screwing This Up. I also ordered another set of bare test boards from Advanced Circuits to continue to mess with while I wait for the Mona Lisas to show up.
In other news, my tube amp is on the fritz again. Why I thought tube gear was romantic and cool at some point in my life is beyond me. I swear I’m this close to replacing the chassis bolts with thumbscrews, or better yet replacing the 6L6s with MOSFETs.

Finally, for those of you who haven’t noticed already, there’s a little link above which gives the details about WTPA in a nutshell as the uninitiated had a really hard time figuring out what all this gibberish was about.