<rss version="2.0">
<channel>
<title>Memecode</title><description>Software and Coding</description>
<language>en-us</language>
<link>http://www.memecode.com/news.php</link>
<copyright>Copyright 2012, Matthew Allen</copyright>
<pubDate>Sat, 12 Nov 2011 17:24:28 +1100</pubDate>
<lastBuildDate>Sat, 12 Nov 2011 17:24:28 +1100</lastBuildDate>
<item>
<title>iconv v1.9.1 win32/win64</title>
<link>http://www.memecode.com/news.php?id=805&amp;comments=1</link>
<description>I've posted a source and binaries zip of iconv for win32 and 
win64 on the &lt;a href=&quot;libs.php&quot;&gt;Libraries&lt;/a&gt; page.</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=805</guid>
<pubDate>Sat, 12 Nov 2011 17:24:28 +1100</pubDate>
</item>
<item>
<title>Axefx Foot Controller</title>
<link>http://www.memecode.com/news.php?id=795&amp;comments=1</link>
<description>After some months of work I've finally got my Axefx foot controller kit up for &lt;a href=&quot;http://www.memecode.com/hw/mc1&quot;&gt;sale&lt;/a&gt;. I've updated the index page to have both software and hardware sections... because apparently I do hardware too now :)</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=795</guid>
<pubDate>Wed, 22 Jun 2011 09:59:43 +1000</pubDate>
</item>
<item>
<title>Wrapping Up Controller Testing</title>
<link>http://www.memecode.com/news.php?id=785&amp;comments=1</link>
<description>So in the last few days I've finished the controller test 
board, ironed out a few bugs in the firmware code, hooked up 
the midi ports and tested that they are sending and 
receiving 
the right data. The board looks like it's doing all the 
things it's meant too. Which means I can now start moving 
ahead on making the kit available. What's left to do is 
write 
up the documentation of how to build a kit from the parts 
and 
PCB and work out the business details, like shipping 
weights/costs and a purchase page.&lt;br&gt;
&lt;br&gt;
Today I also printed out the new graphics that are laid out 
for the Hammond box and checked them for accuracy.&lt;br&gt;
&lt;center&gt;
&lt;img 
src=&quot;http://www.memecode.com/images/blog/axefx/box_graphics.
jpg&quot;&gt;
&lt;/center&gt;&lt;br&gt;

It's sitting next to the prototype box, which is a different 
aspect ratio. The plan is to get someone to print it out 
onto adhesive backed vinyl and then stick it straight onto 
the aluminium, cut the holes out with a hobby knife and then 
poke all the pots, switches and LED's through. There are 
some more knobs coming from the UK for both my own 
controller and the kits.</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=785</guid>
<pubDate>Mon, 20 Jun 2011 21:40:55 +1000</pubDate>
</item>
<item>
<title>Controller Update</title>
<link>http://www.memecode.com/news.php?id=775&amp;comments=1</link>
<description>Last night I got some time to work on the MIDI controller 
testing. The problem I was left with is that the parameter 
knobs were not working, so I started with printing out the 
current value for param0 on the LCD and it was always 1023 
(the maximum value) no matter what voltage was supplied on 
the input pin. So I teared down all the setup code and 
checked that I was doing everything right in the software... 
which after an hour or so of re-reading all the docs... yes; 
I'm doing everything right. Ok that leaves hardware. So I 
measured the voltage on the input pin again... yup that's 
right too. *sigh* Then I notice there is a &quot;VREF&quot; pot on the 
AVR stamp... wonder what that does? Tweak tweak... oooh look 
the value on the LCD is finally changing! Seems that VREF 
pot on the stamp is controlling something to do with the way 
the AVR reads values on it's analog in pins, so I'll have to 
write that into the documentation to set correctly when 
assembling the kit. So hurrah the parameters are all working 
pretty much correctly and I can test the new menu code on 
the hardware. I'm getting close to being done with the 
testing. All that remains is hooking up the MIDI sockets and 
checking the right messages get sent and received.</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=775</guid>
<pubDate>Fri, 17 Jun 2011 10:30:38 +1000</pubDate>
</item>
<item>
<title>Midi Foot-controller Update</title>
<link>http://www.memecode.com/news.php?id=765&amp;comments=1</link>
<description>Last night I investigated whether I could compile and flash 
the ROM from Windows7 64bit. The compiling side was fine, I 
could build the binary but the program I was using to flash 
that binary onto the AVR chip via the parallel port doesn't 
work on Windows7-64bit. Which isn't to say you can't do AVR 
development on Win7 but it just means that different 
software is needed. On XP I've been using PonyProg2000 with 
a lot of success.&lt;br&gt;
&lt;br&gt;
On the hardware front, I wired up all the pots to the test 
harness and checked they were applying the right voltage to 
the analog pins. I've soldered those onto the PCB traces and 
not the pads because it's a pain removing wires from pads 
and then trying to get the solder out and put something else 
in.&lt;br&gt;
&lt;br&gt;
Software wise I have re-written the menu and not everything 
is hooked up at the moment. So I spent some time uncommented 
some sections of the controller code and got them compiling 
with the new menu layout. The structure of things in memory 
(both RAM and EEPROM) has changed to make things more 
flexible and those changes need to be propagated out to all 
the rest of the code. (Parts that didn't compile originally 
have been commented out). Also I put together a Visual 
Studio 2005 project for the desktop version of the 
controller.&lt;br&gt;
&lt;br&gt;
And I'm loving zip ties at the moment... they make things so 
much more organized.</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=765</guid>
<pubDate>Wed, 15 Jun 2011 10:55:08 +1000</pubDate>
</item>
<item>
<title>64bit Adventures</title>
<link>http://www.memecode.com/news.php?id=755&amp;comments=1</link>
<description>I've been playing around with 64bit builds of &lt;a 
href=&quot;http://www.memecode.com/scribe.php&quot;&gt;Scribe&lt;/a&gt; on 
windows. And it's been er... interesting to say the least.
&lt;ul&gt;
&lt;li&gt; By default the Visual Studio 2005 installed doesn't 
install the x64 compiler and libraries. Nice...
&lt;li&gt; When you do get that installed, and then create an x64 
profile in your solution you get the option to copy the 
settings from the 32bit profile. Which for the most part 
works, but when you try and compile said x64 profile, you 
discover this delightful error:
&lt;pre&gt;fatal error LNK1112: module machine type 'x64' conflicts with target machine type 'X86'&lt;/pre&gt;
Which in a nutshell means you are linking 64bit objects into 
a 32bit binary. However the standard response that people 
get on the forums is that you have to set your Linker-
&gt;Advanced-&gt;TargetMachine correctly. And you know what? Well 
it WAS set correctly to MachineX64. So what gives? Well if 
you click on Linker-&gt;CommandLine and look in &quot;Additional 
Options&quot; you'll see /MACHINE:I386. Sigh.
&lt;li&gt; When running Windows7 64bit and you put additional 
32bit DLL's in C:\Windows\System32 you'd think... that since 
there is a &quot;32&quot; in that folder name that is where they go. 
Well no... the 64bit DLL's go in System32 and the 32bit 
DLL's go in &quot;System&quot;. Gaaaaahhhhh.
&lt;/ul&gt;
But at the end of the day, there it is... 64bit Scribe:
&lt;center&gt;
&lt;img 
src=&quot;http://www.memecode.com/images/blog/scribe/scribe64.png
&quot;&gt;
&lt;/center&gt;</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=755</guid>
<pubDate>Sat, 11 Jun 2011 16:10:42 +1000</pubDate>
</item>
<item>
<title>Foot Controller Setup Menu</title>
<link>http://www.memecode.com/news.php?id=745&amp;comments=1</link>
<description>So last night I rewrote the setup menu of the Axefx 
Footcontroller software. Basically before it was very 
simple, had one level of editing where you could scroll 
through all the parameters fairly easily. However you were 
quite limited in what you could do with the IA buttons (send 
one CC) and knob parameters (send one CC). Also the &quot;Amp 
Mode&quot; has hard coded. Also it was hard coded to 3 IA 
buttons, not flexible if there were more than that.&lt;br&gt;
&lt;br&gt;
The new menu system has much more flexibility. Basically you 
have 5 levels of menus, I know it sounds like a lot, but 
it's manageable. The first level is simply picking between 
the pre-preset settings and the global settings. In the 
preset settings, you have 3 sections for the IA buttons, and 
the &quot;grouping&quot; setting for making the IA's mutually 
exclusive. Inside the IA button settings you now have 2 
commands (limited by the EEPROM memory in the current AVR), 
where each command (4 bytes) is one of:
&lt;ul&gt;
&lt;li&gt; None - send no command
&lt;li&gt; CC - send a CC between [min] and [max]
&lt;li&gt; Block - turn an axefx block on/off
&lt;li&gt; Sysex - axefx sysex set parameter [block], [param] 
between [min] and [max]
&lt;/ul&gt;
So you can do 2 things with any given IA button. Most of the 
time you'd want to just use one command to switch a block on 
or off. But now there is some flexibility to do more things 
if needed.&lt;br&gt;
&lt;br&gt;
Now in the global menu there is 3 sections for the different 
parameter modes (parameters are the 6 knobs and 2 external 
controllers). The modes are &quot;Normal&quot;, &quot;Amp1&quot; and &quot;Amp2&quot;. In 
normal mode the default operation is to send a midi CC 
command, with the default settings being the axefx EXTERN1 
to EXTERN8 midi CC's. Amp1 and Amp2 mode default to sending 
axefx sysex command's that map to the 
Gain/Bass/Mid/Treble/Presence/Master for the Amp1 and Amp2 
block. That mode change is tied to a 3 position hardware 
switch on the box somewhere. Each of those (3) modes has 8 parameter settings, that each have again 2 commands. The 
command editing is exactly the same options as the IA's.&lt;br&gt;
&lt;br&gt;
Then you also have the Tuner CC and Tempo CC, the midi 
channel and the factory reset function. The factory reset 
just configures all the IA's for every preset to do nothing 
and makes the global parameters do all the default things 
for the different modes.&lt;br&gt;
&lt;br&gt;
All in all it's now looking and feeling much better. The 
hardware testing is coming along nicely. I'm still working 
on dialing in the LCD code... it's being a little finicky. 
But hopefully I'll get it sorted tonight.
</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=745</guid>
<pubDate>Wed, 08 Jun 2011 10:02:23 +1000</pubDate>
</item>
<item>
<title>Footcontroller Photos</title>
<link>http://www.memecode.com/news.php?id=735&amp;comments=1</link>
<description>Some more photos of the footcontroller PCB kit:&lt;br&gt;
&lt;br&gt;
&lt;center&gt;
&lt;a href='http://www.memecode.com/images/blog/axefx/top.jpg'&gt;&lt;img 
src='http://www.memecode.com/images/blog/axefx/top_s.jpg'&gt;&lt;/a&gt;&amp;nbsp;&lt;a 
href='http://www.memecode.com/images/blog/axefx/bottom.jpg'&gt;&lt;img 
src='http://www.memecode.com/images/blog/axefx/bottom_s.jpg'&gt;&lt;/a&gt;&amp;nbsp;&lt;a 
href='http://www.memecode.com/images/blog/axefx/lcd.jpg'&gt;&lt;img 
src='http://www.memecode.com/images/blog/axefx/lcd_s.jpg'&gt;&lt;/a&gt;&lt;br&gt;
&lt;/center&gt;</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=735</guid>
<pubDate>Tue, 07 Jun 2011 11:31:45 +1000</pubDate>
</item>
<item>
<title>Foot Controller Testing</title>
<link>http://www.memecode.com/news.php?id=725&amp;comments=1</link>
<description>Tonight I put together a test harness on some proto-board, 
using 12 micro-switches to test the functions on the foot 
controller board. So far so good, all the parts are working 
as expected. The next thing to test is the MIDI input and 
output. The next revision of the controller PCB with allow 
for connecting to the test board via ribbon cable and IDC 
plugs. Which will be much neater than soldering the test 
harness in.&lt;br&gt;
&lt;br&gt;
&lt;center&gt;
&lt;img 
src=&quot;http://www.memecode.com/images/blog/axefx/testing.jpg&quot;&gt;
&lt;/center&gt;
&lt;br&gt;
Also I've installed a contrast pot for the LCD. 
Unfortunately I messed up the trace going to the contrast 
pin on the LCD in the PCB design. Not to worry, I've cut 
that trace on the PCB's using a dremel which leaves it free 
to be hooked via a nearby pad to whatever you'll use for 
contrast control. The kit instructions will cover that.&lt;br&gt;
&lt;br&gt;
After getting all the buttons hooked up tonight, I tried all 
the setup menu functions, like factory reset, configuring 
the MIDI channel, changing the IA blocks etc. Then I moved 
around the presets, and switched some IA blocks on and off. 
Everything worked first time... so that's an excellent sign!</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=725</guid>
<pubDate>Mon, 06 Jun 2011 22:28:07 +1000</pubDate>
</item>
<item>
<title>First PCB build</title>
<link>http://www.memecode.com/news.php?id=715&amp;comments=1</link>
<description>Made a quick video of building the first PCB:
&lt;br&gt;
&lt;center&gt;
&lt;iframe class=&quot;youtube-player&quot; type=&quot;text/html&quot; width=&quot;640&quot; 
height=&quot;385&quot; src=&quot;http://www.youtube.com/embed/CuWuJgk9KnY&quot; 
frameborder=&quot;0&quot;&gt;
&lt;/iframe&gt;
&lt;/center&gt;</description>
<guid isPermaLink="true">http://www.memecode.com/news.php?id=715</guid>
<pubDate>Fri, 03 Jun 2011 22:11:34 +1000</pubDate>
</item>
</channel>
</rss>

