Fischertechnik BBC Micro interface

Tony Duell ard at
Thu Jan 5 16:24:39 CST 2006

> Tony Duell wrote:
> > About 20 years ago, there was a Fischertechnik robotics kit. This 
> > contains the usual blocks, gears, etc, 2 small motors, 3 lamps, an 
> > electromagnet, 8 switches and 2 pots. And no other electonic parts.
> >
> > There were various interfaces sold for this, at the time they were 
> > very expensive and not suitable for the machines I had. So I did 
> > the obvious thing and boilt my own...
> I know we have a similar unit for the Commodore C64. My father bought

You don;'t happen to have the software disk for that in a readable 
condition, do you? As I mentioned, I didn't get any magnetic media with 
my Acorn interface, and it appears that the demonstration programs for 
the Acorn one were translated from a Commodore version, I would guess 
C64. Since the listing of the low-level driver is in the manual i have, I 
think I could repeat the translation if I had listings of the C64 programs...

Of course quite how I read a C64 disk (or how you get the files to me) is 
another matter...

> it since he had both Fischertechnik stuff and a C64, but I don't
> think we ever had the robotics kit you mention. Using the interface
> just to switch two or three motors on and off doesn't seem that
> interesting, so perhaps he also thought of it more like a general
> purpose interface.

The interface was designed for the robotics kit, but it can be used with 
other stuff.

It has the following facilities :

2 Resistive-input ADCs. These were designed to link to 5k variable 
resistors that are in the robotics kit, and AFAIK in no other kits.

8 contact-closure intputs. These are actually inputs to 5V CMOS chips, 
pulled down by a resistor). There's a 5V power line on the model 
connector. The robotics kit contains 8 of the mini-switches, but the 
manual says (obviously) you can use any other switch, a relay contact, or 
the output of one of the later FT modules that's TTL compatible. 

4 Motor outputs. These are actually driven by TLE4201 chips. Each can 
drive a motor (full size or minimotor), electromagnetc, etc _and_ a lamp. 
The Robotics kit contains 2 minimotors + gearboxes, an electromagnet and 
3 lamps. Normally, you connected a lamp in parallel with any motor or 
electromagnet that was being used so you could tell it was energised.

I suspect, without trying it, you could link a load between each of the 8 
motor output wires and the ground rail (-ve side of the external PSU). It 
appears each of the outputs can be independantly swtiched betweenground 
and the power rail (thus giving the ability to make a motor turn in 
either direction if connected between 2 output wires. This is what the 
manual tells you to do.

I've been looking at the circuitry in the interface. It links to the BBC
Micro User port, which is port B of a 6522 VIA, and uses the 8 data lines,
but neither of the handshake lines. 

The ADCs are a bit of a kludge. They're built from 3 555 timers (well, 1.5 
556s, which is the same thing). 2 sections are wired as monotstables with 
the variable resistors in the model as the timing resistors. Each of 
thsoe monostables is triggered by a seperate output line (bits 4 and 5) 
or the user port. The outputs are ORed together, and fed to the reset (== 
enable) pin of the last timer, wired as an astable. Thuse, when you 
tigger one of the monostables, you get a pulse train at the output of the 
astable, the number of pulses in the pulse train depends on the setting 
of the variable resistor. This pulse train is fed back to pin 6 of the 
user port, which can be used as the input of one of the counters in the 
6522. Needless to say this counter is used to count the pulses, and thus 
to indicate the setting of the variable resistor.

The switch inputs go to a 4014 shift register. 3 lines on the user port 
provide the load, clock, and data signals for this circuit. The motors, 
similarly use a 4094 shift register, with the last 2 bits of the user 
port providing the data and latch signals for this chip (the clock is 
common to the input and output ciecuits). The outputs of the 4094 go to 
the TLE4201 motor drivers.

There is 20 pin header hidden inside the interface. Most of the pins are 
not used, the ones that are are connected to the shift register clock, 
input SR load, output SR latch, the serial input to the input SR and the 
serial output of the motor SR. Thus it's possible to hang more shift 
registers off here for more switches or motors. You'd have to re-write 
the drivere to shift more bits in/out of the SRs before giving the latch 
signal, etc.


More information about the cctech mailing list