Brother 950i

Multi-colour rib on the Brother 950i knitting machine 

Download PDF crib sheet for multi-colour rib.

Hacking the Brother 950i knitting machine

Also known as replacing the Brother FB100 Disk Drive with a USB FTDI cable to a Laptop computer. This will only work if your Brother knitting machine has a disk port. Daisy Knits had a fabulous chart that documented which KM had a disk port (930, 940, 950i, 965i and 970), but the site is no longer working. Here is the list of machines with disk ports:

KH930 1986-89 555 elec patterns, 2 color key in, pattern variation keys
KH940 1989-92 555 elec patterns, 2 color key in, pattern variation keys
KH950i 1989-92 555 elec patterns, mylar 180st x 998rw, A+B patterning, pat var keys
KH965i 1993-95 615 elec patterns, 3 color key, in A+B patertning, pat var keys
KH970 1995-1999 665 elec patterns, 6 color key in grid lcd screen, garment drawing, pat var keys

Each model has a different memory size, so the python scripts have to be adapted for each model.
Several people (Becky SternSteve Conklin and the now disappeared KMInternals Yahoo Group) have, over the years, developed a Brother disk emulator and python scripts in order to be able to load patterns in to the Brother 930 knitting machine. The Brother 930 is a USA-only model. I am in the UK, and the nearest equivalent is the Brother 950i. I also wanted to add an 'Aunty Marion'-friendly front-end that would also speed up the process for demonstrating at Maker Faire.  Yes, there are other projects out there, but this is my favourite, as I can mess about with it, and adapt it to different uses.

I have a Brother 950i. Therefore, I have modified Becky Stern's 930 adafruit scripts to work with a 950i. The files are stored on GitHub, where you can also find copies of blank patterns of all sizes (thanks to the fabulous folks at London Hackspace), a GUI front-end I use for scanning images at Maker Faire, and a multicolour version used to make Kevin's Christmas Vest.

The steps involved are:

1. You need a Brother 950i knitting machine. They are no longer made, so keep an eye on eBay, your local knitting machine shop, your local knitting club, or the machine knitting sales group on Ravelry.
2. Make up an FTDI USB cable.
3. Install the software

  • Install Python 2.7.3
  • Install Python Image Library (PIL) 1.1.7
  • Install pyserial and follow the install instructions
  • Download Brother 950i version of the software from Github and unzip to a suitable folder (c:\Brother950i)
  • Edit line 287 of PDDemulate.py, change timeout=1 to timeout=5.
  • Get an FTDI cable (such as this FTDI cable from Cool Components)
  • Invert TTL, and convert serial end from flat 8 to 2x4
  • Download VPC driver for FTDI cable (ie. CDM 2.08.28 WHQL Certified)
  • Plug in the USB cable to computer, and when pop-up appears, point driver installer at VCP driver.
  • Install the CoreUtils-5.3.0.exe from GnuWin32.sourceforge.net to provide CAT command (concatenate) used by the python scripts (https://www.gnu.org/software/coreutils/).
  • Add CoreUtils BIN folder to PATH.
    • (Windows 10) Right-click 'This PC', select Properties
    • Advanced system settings
    • Environment Variables button
    • Under System Variables, select Path
    • Click the Edit button
    • New
    • Copy/paste: C:\Program Files (x86)\GnuWin32\bin\
    • Okay button
  • Reboot.
  • Downloaded the blank pattern files from Github (this folder) and save a copy locally to c:\brother950i 
  • Make copy of a 60x150 blank pattern folder called mypicture
    • xcopy 60x150 mypicture /I
  • Change to original 60x150 blank pattern folder make a copy of the file-01.dat file from the mypicture folder
    • xcopy c:\brother950i\mypicture\file-01.dat  c:\brother950i\60x150.dat
  • Create image file that is monochrome 1-bit bitmap, 60 pixels wide by 150 pixels high. Paint is good for this as it has the Save As option of bitmap monochrome.
  • Insert the image in to the blank pattern:
    • insertpattern.py 60x150.dat 901 mypicture.bmp mypicture.dat
    • (insert pattern into 60.x150 template, at pattern memory location 901, using the image mypicture.bmp, and output to the file mypicture.dat)
    • splitfile2track.py mypicture.dat
    • (split the image into the disk tracks)
  • Copy the new files 00.dat ... 31.dat to the /mypicture/ folder
  • Check which COM port your USB cable is using in Device Manager
  • Start emulator:
    • PDDemulate.py mypicture COM3
    • (run the emulator using the disk image in the mypicture folder, and the FTDI cable on COM port 3)

On KM:

  • Load from disk (551, M)
  • Choose disk pattern (1, M)
  • Let pattern load, the KM will beep when finished. Close the command prompt on the computer to stop the disk emulator, which is the equivalent of turning off the disk drive.
  • Load the pattern (M, 901)
  • Move to line 1 of pattern (1, CF)
  • Knit using either fairisle, intarsia, or multi-colour rib

4. Optional: Install a Windows GUI front-end.

Starting at Maker Faire UK in 2013 I've had a stand set up with a Brother 950i knitting machine, a scanner, a laptop, and a large pile of paper, chunky markers and pens. Visitors to the show can draw a picture, then scan it in to the laptop, convert it in to a knitting pattern, that I then knit on the machine (and they can have a go too!).

To speed up the process (down to about 30 minutes from scan to completed cast-off), I wrote a little desktop app that loads the latest image from the scanner, converts the image, loads the disk emulator with the output disk image. If you would like to have a play, then please do. It is a work in progress and makes some assumptions (see the readme.txt file). Download Image To Knitting Machine from GitHub.

Other methods to convert and transfer a picture to a knitting machine

Lady Ada's python scripts for Brother 930 - https://github.com/adafruit/knitting_machine


Brother Liberation Front - http://www.k2g2.org/wiki:blf

Fabienne's knityak code - https://github.com/fbz/knityak
Fabienne's knityak scarfs - https://knityak.com/

No comments: