Monday, December 6, 2010

After a few days wait the Xilinx Coolrunner II kit arrived in the post.

The Coolrunner is a CPLD which contains Macrocells, which are a step up from the basic gate array of a PLD and the XC2C256 on this board has 256 macrocells configured via an interconnect matrix.

Xilinx provide a programming suite, ISE, which is available for Windows and Linux. However they don't directly support Ubuntu.

Here is a brief howto to get the ISE running on Xubuntu.

The main hurdle with the ISE is that it requires a USB driver, windrvr6, in order to use the Platform cable (DLC9G). However it is possible to configure Xubuntu to use libusb and to get the programming tool, iMPACT, to use this instead.

Wednesday, December 1, 2010

Started working on the audio board prototype for the Camera A2D project. It's based around a pair of NE5532 op amps. The input stage converts the balanced line input from the microphone, and the second stage acts as a preamp with level control to supply the correct levels to the nNovia.Should be on to some audio tests shortly so time to dig the signal generator and scope out.

Friday, November 12, 2010

This is an ongoing project I'm working on which started as a circuit that I decided was necessary to be able to neatly interface the nNovia QC120 A2D2 recorder to a Sony DXC-325P camera with CA-325P studio back.

This interface deals with translating VTR start/stop signals from the camera into GPI signals to pause and resume the recorder when it is in record mode.

In addition to the device control, there will also be XLR Balanced line input to be converted to unbalanced line level.

There is also the possibility of getting it to communicate with the nNovia RS-422 port and using this protocol to control the device.

I'm still working on the final design. I have built the PIC 16f872 based circuit that controlls the nNovia via the GPI control lines and this seems to work very well.

The next step with the PIC interface is to try controlling the RS232 port on the nNovia to start and stop the deck and get its status.

I will be prototyping the Preamp shortly. I have a plan to use the A2D interfaces on the PIC to drive an LED PPM or VU meter on the front panel of the case.

Thursday, November 11, 2010

Today we had a discussion in the office about the current TDD (Test Driven Development) course we are following and it has to be said there is more than a little confusion over it. One of the main sources of this confusion seems to be 'why' we are doing it. And I can see where the confusion creeps in. Quite a few of the members of the team have years of programming experience and may already or have been practicing TDD in some guise or another so those people already know the benefits and have adapted the process to their way of working. To me this is fine. Perhaps they would be better served with working on some other very useful principles such as the SOLID principles. [Robert C. Martin] Some of the other members know of TDD and are perhaps reluctant to use it because of past experiences or whatever. These people need to know what the goal is, what will they be good at at the end of this?

At this point someone started explaining that it was like learning Karate. In some martial arts including Karate it is common for the students to practice set moves or Kata by copying the seniors in the group but in the beginning it appears (Karate experts please correct me) that they are not necessarily told why they perform the moves they do, just to do them. Remember, polish-on, polish-off from Karate kid?

Well, I don't subscribe to this opinion. I have practiced martial arts and the one I happened to choose, Shorinji Kempo, (Shorinji being the Japanese form of Shaolin) teaches it's students useful techniques and the reasons for using them. And it teaches all aspects of the art continuously and with balance gradually increasing in complexity. At no point does anyone not know why they are doing something. The art also encourages strategic thinking and how to choose the best technique to use for a given situation (even if the best strategy is not to get involved at all).

I think that this would be a better way to progress and learn the techniques, especially for the enquiring minds. Learning by rote has no interest for me.

So do you want to be a Karate black belt beating bricks with your bare hands (why do they do that?) or a contemplative Shaolin monk analysing the situation and choosing the best strategy to approach it.

Friday, October 8, 2010

Today I was lucky enough to visit our Central Technology Area at of our office in Manchester. CTA take care of a good deal of what is broadcast from Manchester to the region and they have a staggering amount of technology old and new which they look after.

I didn't have a great deal of time to nose about but here are a couple of gems I spotted.

A reel-to-reel deck and a machine that I'm guessing has something to do with time signals or the Pips - not really sure.

This is a bit of nostalgia for me, it's an NTL 2212 IRD which was one of the first generation MPEG receiver/decoders. I used to work on these back in 1995. I suspect this one has now been retired to be replaced by one of the Tandberg units. (Tandberg took over the NTL Advanced Products Division)

If you thought the IRD was large by todays standards (most are 1u now) the NTL Series 2000 encoders were 12u! But very pleasant to work on. (No BGA chips and few SMD's)

I also spotted a Tektronix vm700a lurking in the racks. I remember those things cost as much as my first house.

We also found some old microwave links in the basement. Apparently these were used at Holme Moss in the Peak District.

These things date back to the 70's. We haven't dared turn them on - yet!

Thursday, September 30, 2010

For a while I have had it in the back of my mind to pick up on a couple of old projects that are kicking around the workshop. One of them was a project based on the Droids MUIN board with XBee modules. The original project which was going to be around rocket telemetry is now not likely to happen, but I decided to have a go at getting the PIC development environment set up for the Muin board. The MUIN (PN.990.005) is based on a 28 pin PIC 18F2520 with 10-Bit A/D, 32k Flash, two 8-Bit ports and a 6-Bit port.

Oh, and to keep things interesting I want to use Mac OSX and an ICD2 over USB.

So, on to the first challenge, finding a development environment. Sadly Microchip don't as yet appear to provide an environment for operating systems other than W*ndows. A quick search on google came up with a likely contender in piklab. Piklab is free and GPL and appears to have many of the features of MPLab, and it supports ICD2 among others. Installation was greatly eased by using Macports.

sudo port install piklab

And piklab needs a toolchain. I chose GNU PIC Utils (gputils).

sudo port install gputils

This should get you a running piklab installation. You'll need to select the gputils toolchain.

Next up, getting the ICD2 working. This really depends on the version of the ICD2 firmware. Mine was woefully out of date but you might find yours is fine.

Updating the ICD2 firmware. There's a couple of options here.

Use a W*ndows machine, install MPLab and update from there.

Install and Run MPLab under Wine, then use piklab to update.

I chose 2 as I have no W*ndows machines in the house. Off to Macports again.

sudo port install wine

Then download and run the MPLab installer:

wine setup.exe

To install the new firmware just point the piklab firmware directory (Programmer->Settings->Programmer Selection->Specific) to:

/path_to_mplab/MPLAB IDE/ICD2

Then connect (Programmer->Connect) and piklab will update your firmware.
It should now be possible to create a new project and a stub .asm file which should compile and program.

In the next enthralling instalment I'm going to see if I can get some servo code running.Meanwhile here are some links to some very useful software.

Thursday, April 29, 2010

It was the Acorn and RiscOS show in Wakefield. I've not been before
but I have heard about it and now we're not living too far away it's
become more realistic to get to.

For a platform whose original creating company died 12 years ago,
there is still a devoted if small following. Not only are people
still interested in using the machines and OS, but people have taken
over development of the OS and there are now two streams of RiscOS
development, one through Castle Technologies who bought the rights to
the OS and hardware designs and also produced new RiscOS computers in
the form of the Iyonix, and http://riscosopen.org who are tasked with
releasing RiscOS as an open source project.
Interestingly the
RiscosOpen project has produced ports of RiscOs which run on netbooks
and also platforms such as Beagleboard.

There were also people exhibiting older 8 bit computers such as the
BBC B and Master. There are people out there now producing new storage
solutions using compact flash and SD for these vintage machines,
breathing new life into them. One exhibitor, Joel, demonstrated the Domesday
project which is the first time I've seen this system.

I know the computers are old and the platform is niche, but I still
have a soft spot for Acorn, having grown up with BBC Micros (which I
still own) and having spent several years repairing Acorn computers.

Thursday, March 11, 2010

Started work putting the front panel together, and also fitting the Arduinos in the case.

It turns out the waveshield is capable of driving the speaker, and it works very well indeed. The sound quality is not bad either. I used the 'sox' unix program to convert MP3 data into raw 22khz 8 bit wav data. Here is the incantation I used :-

sox the_archers.mp3 -b8 the_archers.mp3.wav channels 1 rate 22k

I still need to get a decent printed card for the legend behind the top panel, but it's starting to look good.

On a side note, someone at work had an old Radio Times, which suited the radio superbly..

Friday, February 5, 2010

Thought I'd post a bit of an update on the progress of the Wayback Machine.

The Wifi connection is working using the Wifly module (see previous post) and connects nicely to the router. I've had a few problems with RFI where the signal from the built in antenna seems to interfere with the other electronics causing the Wifly to keep resetting until you stop it by touching (and attenuating) the antenna with your finger. I hope to solve this at some point.

I made a start stripping down the old Hacker radio. I thought I might be able to resuse the amplifier board, but to be honest I don't think I'm going to have room for all the electronics and two PP9 batteries too. So I'm hoping the Waveshield amp is capable of driving the speaker, perhaps with a small amp.

Next step is to get the Arduinos wired up together and to the Wifly via a MAX3232. (The Wifly is 3.3V logic, so needs a level converter and the MAX is a very proper way of doing that.)

I've also got to get the hacksaw out at some point and make a new Perspex front panel.