Author Topic: Brother (possibly also some Bernina) embroidery machine memory cards  (Read 16246 times)

0 Members and 1 Guest are viewing this topic.

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #25 on: November 19, 2020, 02:01:35 pm »
Just in case this is useful to anybody: I had a "funny" a few days ago where a .pes file on a USB stick would not appear on the machine's LCD display: this turned out to be because it was bigger than 100mm square. Then I found it would appear on the display but that the machine would crash (apparently with a watchdog reset) when I loaded it: that appeared to be because there were pause commands in it which the machine (Innovis-97E) didn't support.

To help diagnose that sort of problem, I've written a dump program which reads a PES file and dumps the content (verbosely!), finishing off with stitch counts etc. This only supports v1 files at the moment, and while it could easily be modified to also support a "naked" .pec file I've not done it on account of not having a test article.

https://github.com/MarkMLl/pesdump

Installing Brother's own PE-Design Plus software, I notice that it checks for "04f9:2100 Brother Industries, Ltd Card Reader Writer".

A few days later: It looks as though having any USB device with the correct vid:pid doublet is sufficient to get the Brother card reader driver loaded, but not to get the app running (and nothing useful shows up in Wireshark). I've been using a Teensy 3.5 set up as a rawhid device, I'm not sure whether the type of device matters since I suspect I'm up against OS caching issues which muddy the water.

MarkMLl
« Last Edit: November 26, 2020, 12:40:51 pm by MarkMLl »
 

Offline JuOOLs

  • Newbie
  • Posts: 9
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #26 on: December 18, 2021, 01:19:26 pm »
Hi Mark,  your thread is really useful!  I've just bought a Brother pe150 embroidery machine from Ebay and I've been struggling to find a card / reader etc;  i've ordered what I think to be a 1M re-writable card, so when that arrives I will open that up and post some images.  Do you have acess to a raw binary dump of a card file structure? as I'm planning to create my own card reader / writer.
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #27 on: December 21, 2021, 09:28:31 pm »
Hi Mark,  your thread is really useful!  I've just bought a Brother pe150 embroidery machine from Ebay and I've been struggling to find a card / reader etc;  i've ordered what I think to be a 1M re-writable card, so when that arrives I will open that up and post some images.  Do you have acess to a raw binary dump of a card file structure? as I'm planning to create my own card reader / writer.

Noting what somebody said earlier about the card probably being a simple (E)PROM or EEPROM device, but I've not tried hooking it up to a programmer.

The thing that brought me to a halt before was that the Brother writer functioned as a security "dongle" for the software. Now it /might/ be that the cards contain a recognisable filesystem and standard-format files, but I'd certainly not like to bet any substantial amount (of cash or hours) on that. I might give this a /bit/ more time tomorrow, but to be brutally honest you'd be much better off with a model that took a USB "thumb drive" etc.: try to offload the PE150 if you can find a sucker looking for an urgent present for his XYL.

Two other things to bring the community up to date:

I had problems with my Brother machine crashing (apparent watchdog timeout and reset) with certain instruction sequences, and in support of that wrote https://github.com/MarkMLl/pesdump . I've since updated that with an attempt at systematic patching, but with limited success.

The Inkstitch plugin to Inkscape works, but (on Linux) I was experiencing a grievous delay before it would do anything useful. Purging a whole lot of non-Roman typefaces helped a little bit, but I was very discouraged by the fact that the authors were unable to suggest a way of debugging the monster that they had created...

...However I'm not one to stay discouraged for long, and have made a small amount of progress in re-packaging the execution environment (Python v2) in a form that might be somewhat more efficient and would have a decent development/debugging environment https://forum.lazarus.freepascal.org/index.php/topic,52849.msg390379.html#msg390379 Whether I put any significant amount of time into that depends entirely on whether anybody else is interested.

Somewhat later: it looks as though the only way for me to progress this would be by making an extender, which will probably (assuming Chinese prices) be a modest financial expense but much more significant in terms of time... and I /do/ have to emphasise that this is something that I don't need myself, since my machine will take a USB thumb drive.

The memory card connector appears to be 40-pin, 1.0mm pitch, single row, pin diameter unknown. I've not seen anybody selling premade extenders or adapters but https://www.aliexpress.com/item/1005003169118193.html and https://www.aliexpress.com/item/1005003169085557.html look about right. I'd also have to organise a PCB, solder the connectors flat rather than PTH, and partially disassemble the machine so I could sniff the pin functionality. And then do it again to fit the card into a generic programmer so I could recover the actual data.

If anybody could find one of the pukka Brother programmers and use that as an investigation platform I think it would be far easier, but I'm game if it turns out that I'm the only person who can realistically do the reverse engineering required.

MarkMLl
« Last Edit: December 22, 2021, 02:24:53 pm by MarkMLl »
 

Offline JuOOLs

  • Newbie
  • Posts: 9
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #28 on: December 22, 2021, 05:26:20 pm »
So my re-writable card came in the post today;  online pictures I found of the card suggested it was a 1M card,   so no surprises to see the AM28F010.   but why the blob and the flash?
When I inserted the card into my machine and powered it on the machines display just went blank and it bleeped forever!!   I didn't expect that!   it could be the card is dud or the machine card slot / machine is dud, or both, or the card isn't compatible with the PE150;  either way - it's not looking too good!
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #29 on: December 22, 2021, 07:45:32 pm »
I speculate that the card isn't formatted (Brother might have a proprietary term for the process) and the machine firmware doesn't like it. I hope the machine recovers when powered on with the card pulled out...

74HC138 is a decoder commonly used to address different blocks of Flash, which is what's implementing your R/W storage. I suspect that on the other side of the board you'll see lines running horizontally between the Flash chip and (what's under the) blob... and I think this takes us back to that being a microcontroller driven by a proprietary protocol from the machine.

Assuming that my tentative diagnosis is correct, it's interesting that your machine is intolerant of a card not prepared /precisely/ as it expects and mine (I believe a newer model) is intolerant of what should be legitimate commands in the embroidery file. It implies an attitude on the part of the manufacturer which isn't entirely to their credit and contravenes Postel's Rule ("Be liberal in what you accept, and conservative in what you send").

Later: https://www.ebay.co.uk/itm/324884594164 is a writer for £175, plus a non-working machine thrown in. From what I've seen in the past that's not an unreasonable price...

MarkMLl
« Last Edit: December 22, 2021, 08:13:56 pm by MarkMLl »
 

Offline JuOOLs

  • Newbie
  • Posts: 9
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #30 on: December 26, 2021, 12:47:40 pm »
Quote
I speculate that the card isn't formatted (Brother might have a proprietary term for the process) and the machine firmware doesn't like it.
This could well be the case!  I found some info but i'm not sure if it all relates to the PE150, but if the card was used and the design/s on it are not in PES format,   >4"x4",   >30K stitches or wrong hoop size assigned (>4" x4");  then apparently it will bleep, or show a message.

Quote
I hope the machine recovers when powered on with the card pulled out
Luckily, yes it does recover :)

Quote
£175, plus a non-working machine thrown in. From what I've seen in the past that's not an unreasonable price...
Yes it's not a bad price!

Quote
I think this takes us back to that being a microcontroller driven by a proprietary protocol from the machine.
It would be interesting to probe the lines or try reading the flash.


 

Offline JuOOLs

  • Newbie
  • Posts: 9
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #31 on: December 26, 2021, 12:58:13 pm »
If anyone is interested I stripped my machine down to have a look and take some pics.
 

Offline DavidAlfa

  • Super Contributor
  • ***
  • Posts: 5802
  • Country: es
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #32 on: December 26, 2021, 03:18:55 pm »
Probably a simple parallel EEPROM, I bet you can find a lot of pins going to U4/U5.
Data, address, WE, RD etc is shared, only needs a dedicated CE/CS pin.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #33 on: December 26, 2021, 04:38:50 pm »
Quote
£175, plus a non-working machine thrown in. From what I've seen in the past that's not an unreasonable price...
Yes it's not a bad price!

I get the impression that there were a lot more of those writers ("transfer boxes") on the market a year ago, but even then the price was going up. I don't think Brother are making them any more, and the final price was around $145... they're apparently now shipping a security dongle so that their PE-Design software runs.

Unfortunately that machine etc. is collect-only, and in just about the worst possible place for me to get to... I'd probably be paying a couple of hundred quid for petrol.

It's obviously also worth noting that it doesn't have the extension unit that contains the stepper motors etc to move the hoop under the needle. In fact looking at the foot controller and the collection of feet etc. it looks as though it's been used as a standard sewing machine, in which case I assume that the memory card can be used to load in fancy stitches rather than space-covering patterns.

MarkMLl
« Last Edit: December 27, 2021, 08:24:35 am by MarkMLl »
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also Bernina) embroidery machine memory cards
« Reply #34 on: December 26, 2021, 05:24:07 pm »
If anyone is interested I stripped my machine down to have a look and take some pics.

Interesting: it's largely paralleled with a position marked for a TC5316200... but I see that documented as a 42-pin device while the footprint on the board is either 40 or 44.

Still, that tells us that the card is probably mapped into the memory space rather than being a comparatively low-bandwidth peripheral.

I find myself wondering whether in this case the "blob" is actually the security dongle, with this actually being present on every card rather than in the USB-connected writer.

The AMD Flash device will need a controlled 12V for the Vpp signal. Can the machine write to the card, or is that intended to be a function of the USB-connected card writer?

The comment about limits on the Brother website tells us that it's probably expecting the same file format on the card as would be on a USB stick (or presumably a floppy). It doesn't however tell us anything about the filesystem on the memory card, I'd guess it to be FAT (pre-FAT32)... it might even be FAT12 with an MSX heritage.

However, my experience with the machine being very picky about the content of a PES file suggests that it might be equally (or even more) picky about the filesystem, for example it might reject a card if the capacity of the root directory is wrong.

MarkMLl
« Last Edit: December 27, 2021, 08:27:26 am by MarkMLl »
 

Offline JuOOLs

  • Newbie
  • Posts: 9
  • Country: gb
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #35 on: December 27, 2021, 12:14:49 pm »
Quote
The AMD Flash device will need a controlled 12V for the Vpp signal. Can the machine write to the card, or is that intended to be a function of the USB-connected card writer?
Yes, I believe the machine can write to the card.
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #36 on: December 27, 2021, 12:59:14 pm »
Quote
The AMD Flash device will need a controlled 12V for the Vpp signal. Can the machine write to the card, or is that intended to be a function of the USB-connected card writer?
Yes, I believe the machine can write to the card.

I've found this which is worth getting into the record:

Code: [Select]
Full Speed device @ 2 (0x1B100000): .............................................   Composite device: "USB-WRITER"
    Device Descriptor
        Descriptor Version Number:   0x0100
        Device Class:   0   (Composite)
        Device Subclass:   0
        Device Protocol:   0
        Device MaxPacketSize:   8
        Device VendorID/ProductID:   0x04F9/0x2100   (Brother International Corporation)
        Device Version Number:   0x0100
        Number of Configurations:   1
        Manufacturer String:   1 "BROTHER"
        Product String:   2 "USB-WRITER"
        Serial Number String:   3 "E5G111616"
    Configuration Descriptor
        Length (and contents):   32
            Raw Descriptor (hex)    0000: 09 02 00 20 01 01 00 80  32 09 04 00 00 02 00 00
            Raw Descriptor (hex)    0010: 00 00 07 05 01 02 10 00  00 07 05 82 02 40 00 00
            Unknown Descriptor   0020:
        Number of Interfaces:   1
        Configuration Value:   1
        Attributes:   0x80 (bus-powered)
        MaxPower:   100 ma
        Interface #0 - Unknown
            Alternate Setting   0
            Number of Endpoints   2
            Interface Class:   0   (Unknown)
            Interface Subclass;   0
            Interface Protocol:   0
            Endpoint 0x01 - Bulk Output
                Address:   0x01  (OUT)
                Attributes:   0x02  (Bulk no synchronization data endpoint)
                Max Packet Size:   16
                Polling Interval:   0 ms
            Endpoint 0x82 - Bulk Input
                Address:   0x82  (IN)
                Attributes:   0x02  (Bulk no synchronization data endpoint)
                Max Packet Size:   64
                Polling Interval:   0 ms

Also mention of it being possible to format the card from the (Windows) "My Computer" icon without any special options, but that will almost certainly be relying on drive parameters returned by the hardware and/or custom Windows driver.

There might, however, be more than one variant of card: https://help.brother-usa.com/app/answers/detail/a_id/68423/~/what-card-is-compatible-with-my-reader-writer-box%3F. https://community.annthegran.com/Forum/default.aspx?g=posts&t=2898

I think that Brother is moving away from the proprietary card to USB, but it's patchy. Looking at photos on eBay, I see some models of Innovis which are USB device only, some which are USB device+host, and some which are USB device plus a proprietary card.

MarkMLl
« Last Edit: December 27, 2021, 01:34:04 pm by MarkMLl »
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #37 on: January 10, 2022, 03:27:14 pm »
I've now got a "Great Notions" interface "Magic Box Elite" which uses the non-standard USB identifier 0dc0:0012. I've not investigated to any great depth but I suspect that this will look like a serial device, however lsusb on Linux doesn't give much away.

Internally it's got an H8S-series chip and a Lattice chip that's presumably an FPGA. Two of the four card sockets are on a daughter board with the signals easily accessible.

I'll buzz the connections, hang testgear on them and hopefully will be able to report back- although it won't be for at least a few days (apart from anything else, I envisage a bit of software which would make the job easier).

MarkMLl
 

Offline Kolargol00

  • Newbie
  • Posts: 2
  • Country: ch
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #38 on: February 17, 2022, 08:26:24 pm »
Hi MarkMLI,

Were you able to read or write the card with that "Magic Box"? I also got one of these on eBay and I can't figure out how to use that device. On Linux, only the USB vendor ID 0x0dc0 is known to libusb, no other module recognises this thing (no usb_serial, for example). I've also tried plugging it into a Win10 machine, but it fails to recognise it.

Cheers,
  Kolargol00
 

Offline Kolargol00

  • Newbie
  • Posts: 2
  • Country: ch
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #39 on: February 19, 2022, 05:11:39 pm »
There is an old version of the Magic Box software available on archive.org at https://archive.org/details/magic-box so I gave a try in Wine. Windows drivers are also available at the same location, however they are of use to Wine (it doesn't load drivers). Unfortunately, web.archive.org doesn't have more than the front page for http://embroideryonlinesupport.custhelp.com/ where software downloads were once hosted (this URL appears in the manual provided on the CD image). I'd have tried a more recent version otherwise.

In order to give Wine access to the Magic Box, I loaded Linux's generic "usbserial" module (assuming this device actually uses the serial interface)
Code: [Select]
$ sudo modprobe -v usbserial vendor=0x0dc0 product=0x0012
insmod /lib/modules/5.4.0-100-generic/kernel/drivers/usb/serial/usbserial.ko vendor=0x0dc0 product=0x0012
relevant kernel log (dmesg):
Code: [Select]
[Sat Feb 19 14:47:57 2022] usb 3-2: new full-speed USB device number 10 using xhci_hcd
[Sat Feb 19 14:47:57 2022] usb 3-2: New USB device found, idVendor=0dc0, idProduct=0012, bcdDevice= 1.00
[Sat Feb 19 14:47:57 2022] usb 3-2: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[Sat Feb 19 16:02:29 2022] usbcore: registered new interface driver usbserial_generic
[Sat Feb 19 16:02:29 2022] usbserial: USB Serial support registered for generic
[Sat Feb 19 16:02:29 2022] usbserial_generic 3-2:1.0: The "generic" usb-serial driver is only for testing and one-off prototypes.
[Sat Feb 19 16:02:29 2022] usbserial_generic 3-2:1.0: Tell linux-usb@vger.kernel.org to add your device to a proper driver.
[Sat Feb 19 16:02:29 2022] usbserial_generic 3-2:1.0: generic converter detected
[Sat Feb 19 16:02:29 2022] usb 3-2: generic converter now attached to ttyUSB0

then I configured Wine to bind its COM1 port to /dev/ttyUSB0 using `wine regedit` (instructions at https://wiki.winehq.org/Wine_User's_Guide#Serial_and_Parallel_Ports) and ran `wine ~/.wine/drive_c/OESD/MagicBox/MagicBox.exe`. The program says it cannot access the card. I tried various baud rates in the options, to no avail. :(

A capture of USB bus packets didn't reveal much. Capture setup with (note that I could have used interface `usbmon3` to select only bus 3 where the device was connected):
Code: [Select]
$ lsusb
...
Bus 003 Device 011: ID 0dc0:0012 G7 Solutions (formerly Great Notions)

$ sudo modprobe -v usbmon
insmod /lib/modules/5.4.0-100-generic/kernel/drivers/usb/mon/usbmon.ko

$ sudo dumpcap --list-interfaces
1. eno1
2. lo (Loopback)
3. any
4. docker0
5. bluetooth-monitor
6. nflog
7. nfqueue
8. usbmon0
9. usbmon1
10. usbmon2
11. usbmon3
12. usbmon4

$ sudo dumpcap --interface usbmon0
Capturing on 'usbmon0'
File: /tmp/wireshark_usbmon0_20220219163132_SNuZNd.pcapng
Packets captured: 3730
Packets received/dropped on interface 'usbmon0': 3730/0 (pcap:0/dumpcap:0/flushed:0/ps_ifdrop:0) (100.0%)
Wireshark display filter `usb.bus_id == 3 && usb.device_address == 11`. There is one request/response at the beginning, then two bulk in followed by many bulk out exchanges, but all responses from the device are empty (data length 0).
Code: [Select]
No. Time Source Destination Protocol Length Info
325 10.856502 host 3.11.0 USB 64 GET STATUS Request
326 10.856558 3.11.0 host USB 66 GET STATUS Response
329 10.856625 host 3.11.1 USB 64 URB_BULK in
330 10.856630 host 3.11.1 USB 64 URB_BULK in
331 10.857374 host 3.11.2 USB 65 URB_BULK out
332 10.857412 3.11.2 host USB 64 URB_BULK out
...

That's where I stand with my exploration of this device. Of course, the generic usbserial module may not be the correct one, but no other module picks up the vendor/product ID. I also wonder why the software's options show COM ports and baud rates when I have a USB device. Screenshots of that window in the PDF manual don't have these UI elements for the USB version. Maybe version 3.6 is too old for the USB Magic Box...
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #40 on: February 19, 2022, 09:18:26 pm »
I've spent some time over the last few days buzzing through the internals of the box, in preparation for hooking it onto my logic analyser. It's for jobs like this that I bought an old instrument with /lots/ of channels, but I'm still working on support software to implement generalised tracing: in the interim I can generate a .vcd compatible with GTKWave.

I've not yet settled down with the software, but will try do do so over the next couple of days. A cursory inspection of the manual suggested that it wasn't intended to look like a serial device, and while I've had some success in the past mapping arbitrary devices onto Qemu https://wiki.freepascal.org/Qemu_and_other_emulators#USB_for_Qemu that sort of thing rather cramps Wine's style.

[Week later] The software installs on XP, but registration is mandatory and the publishers' server no longer exists. It will run for ten days which should give me time to look at the signals... apart from that it's not much use since while it reads a card it crashes before saving files locally.

MarkMLl
« Last Edit: February 24, 2022, 06:49:41 pm by MarkMLl »
 

Offline amyk

  • Super Contributor
  • ***
  • Posts: 8232
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #41 on: March 01, 2022, 03:56:49 am »
[Week later] The software installs on XP, but registration is mandatory and the publishers' server no longer exists. It will run for ten days which should give me time to look at the signals... apart from that it's not much use since while it reads a card it crashes before saving files locally.
If you need more than 10 days, or want to analyse the software in some parts, let me know. ;)
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #42 on: March 02, 2022, 05:25:02 pm »
I'm definitely going to need more than ten days, but for the moment am working on the assumption that wiping the software and all traces of anything relevant from the registry will allow me to start over (am I wrong in that?).

Looking at what I've got here, I'm disturbed. This is the nastiest possible combination: a chunk of hardware which is sold, no protocol documentation, a chunk of software which is licensed, mandatory registration, and a company which doesn't make sure that their registration servers continue running after they've shut up shop.

MarkMLl
 

Offline AeroX2

  • Newbie
  • Posts: 9
  • Country: au
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #43 on: March 16, 2022, 06:53:44 am »
Hey everyone,

I'm so glad I found this thread, I recently got my hands on a PE200 but really wanted to do some custom designs, unfortunately looks like the card readers and writers are quite rare.
I've sacrificed one of the (read-only) cards that came with the machine, don't know if it helps but here are some pictures.

I'm also going to try and figure out what the chip is and if I can read it but don't expect too much, here's hoping.
 
The following users thanked this post: amyk, MarkMLl

Offline dl6lr

  • Frequent Contributor
  • **
  • Posts: 458
  • Country: de
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #44 on: March 16, 2022, 07:04:53 am »
Hey everyone,

I'm so glad I found this thread, I recently got my hands on a PE200 but really wanted to do some custom designs, unfortunately looks like the card readers and writers are quite rare.
I've sacrificed one of the (read-only) cards that came with the machine, don't know if it helps but here are some pictures.

I'm also going to try and figure out what the chip is and if I can read it but don't expect too much, here's hoping.

That one is a usual Flash memory chip with 4MBit in TSOP48, organised as 512Kx8 (or 256Kx16). If it is used as a read only card, the machine is not supposed to write to it, so I assume the write enable !WE (Pin 11  on the TSOP) is fixed to Vcc.
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #45 on: March 16, 2022, 02:25:19 pm »
That photo's actually very useful, since it's the first time that anybody (at least in this forum) has posted a photo of a card that doesn't have half the tracks obfuscated by a black epoxy blob (and the microcontroller it's hiding).

I think it's reasonable to assume that Brother hasn't shuffled the address and data signals in an attempt at encryption.

If that assumption is valid, and knowing that pin 1 is at the top-right of the photo, it should be possible to fill in the bulk of the signals on that 40-pin connector.

Trivial inspection already suggests that connector pin 38 runs to chip pin 11 which is WE/, which presumably identifies it as Vcc pulling the signal high (inactive).

I'll try to take a more methodical look later, but this might suggest digging into graphics software or possibly KiCAD... both of which I use infrequently so I always have to claw laboriously up the learning curve.

I've partly buzzed through the internal connectors of my Magic Box Plus, but at present my logic analyser (plus all the grabbers etc.) is set up for something different which I'd rather get to a stable state before getting back into this one.

Later same day:

Code: (text) [Select]
1 to pin 40 (presence detection?)
 2 Chip pin 46 (Vss), copper fill on PCB hence also pin 39
 3 Chip pin 37 (Vcc), hence also pin 38
 4 n/c
 5 Chip pin 16 (marked N/C on datasheet) via unpopulated R
 6 Chip pin 26 (/CE) via R
 7 Chip pin 29 (DQ0) via R
 8 Chip pin 31 (DQ1) via R
 9 Chip pin ? (?) via R
10 Chip pin 11 (/WE?) via R
11 Chip pin ? (?) via R
12 Chip pin ? (?) via R
13 Chip pin 23 (A2) via R
14 Chip pin ? (?) via R (guess: DQ2)
15 Chip pin ? (?) via R (guess: DQ3)
16 Chip pin ? (?) via R (guess: DQ4)
17 Chip pin ? (?) via R (guess: DQ5)
18 Chip pin ? (?) via R (guess: DQ6)
19 Chip pin ? (?) via R (guess: DQ7)
20 Chip pin ? (?) via R (guess: A?)
21 Chip pin ? (?) via R (guess: A?)
22 Chip pin ? (?) via R (guess: A?)
23 Chip pin ? (?) via R (guess: A?)
24 Chip pin ? (?) via R (guess: A?)
25 Chip pin ? (?) via R (guess: A?)
26 Chip pin ? (?) via R (guess: A?)
27 Chip pin ? (?) via R (guess: A?)
28 Chip pin ? (?) via R (guess: A?)
29 Chip pin ? (?) via R (guess: A?)
30 Chip pin ? (?) via R (guess: A?)
31 Chip pin ? (?) via R (guess: A?)
32 Chip pin 45 (DQ15/A1) via R
33 Chip pin ? (?) via R
34 Chip pin ? (?) via R
35 Chip pin 1 (A15) via R
36 Chip pin 2 (A14) via R
37 Chip pin 3 (A13) via R
38 Vcc (also pin 3)
39 Vss (also pin 2)
40 to pin 1 (presence detection?)
[code]

The /WE signal appears to be associated with at least two pins, I suspect so that a nominal ROM may be written via the standard connector but possibly also so that the host can determine whether the R that allows writes is installed.

Apart from that I've made a few guesses based on the approximate direction signals appear to be heading, but the only way to progress this will be by buzzing through with a suitable low-voltage meter.

MarkMLl
« Last Edit: March 16, 2022, 05:02:39 pm by MarkMLl »
 

Offline amyk

  • Super Contributor
  • ***
  • Posts: 8232
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #46 on: March 17, 2022, 04:38:56 am »
Here's the datasheet for reference: https://pdf1.alldatasheet.com/datasheet-pdf/download/74499/MCNIX/29F4000.html

Here's my guesses so far... along with an attached composite of both sides that might help.

1 <> 40
2 GND
3 38 CE 6(via R) /WE(via R) 9(via R) A0(?) 10(via R)
4 (not connected)
5 NC
6 (see net 3)
7 Q0
8 Q1
9 (see net 3)
10 (see net 3)
11 Q2(?)
12 A1(?)
13 A2

33 NC
 
The following users thanked this post: MarkMLl

Offline AeroX2

  • Newbie
  • Posts: 9
  • Country: au
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #47 on: March 17, 2022, 08:00:19 am »
So took a little bit of time and went at it with a multimeter and this is what I got, haven't double checked it or anything but it seemed to have all the necessary pins for the chip. EDIT: (Looking at amyk, net 3, I think it is a more complete picture of my probing on pins for WE/CE/etc, I'll double check on my side but it looks correct)

Going to try and wire it up and get some values out but couldn't really find any connectors that matched the AMP175564, probably will just have to solder directly to the board :| If anyone knows of a connector that is roughly 40pins, 1mm pitch and the pins are roughly 0.5mm in diameter, let me know!

Code: [Select]
1 to pin 40 (presence detection?)
 2 power (also pin 39), copper fill on front of PCB -> GND
 3 power (also pin 38), copper fill on back of PCB -> VCC
 4 n/c
 5 unpopulated R, other end off-board
 6 R, chip, off-board -> CE#
 7 R, chip, off-board -> Q0
 8 R, chip, off-board -> Q1
 9 R, chip, off-board -> OE#
10 not nc on my board -> WE#
11 R, chip, off-board -> A0
12 R, chip, off-board -> A1
13 R, chip, off-board -> A2
14 R, chip, off-board -> A3
15 R, chip, off-board -> Q2
16 R, chip, off-board -> Q3
17 not nc on my board -> RY/BY#
18 R, chip, off-board -> Q4
19 R, chip, off-board -> Q5
20 R, chip, off-board -> A4
21 R, chip, off-board -> A5
22 R, chip, off-board -> A6
23 R, chip, off-board -> A7
24 R, chip, off-board -> A17
25 R, chip, off-board -> A8
26 R, chip, off-board -> A9
27 R, chip, off-board -> A10
28 R, chip, off-board -> A11
29 R, chip, off-board -> A12
30 R, chip, off-board -> Q6
31 R, chip, off-board -> Q7
32 R, chip, off-board -> Q15/A-1
33 off-board          -> nc
34 R, chip, off-board -> A16
35 R, chip, off-board -> A15
36 R, chip, off-board -> A14
37 R, chip, off-board -> A13
38 power (also pin 3) -> CE#
39 power (also pin 2)
40 to pin 1 (presence detection?)
« Last Edit: March 17, 2022, 08:05:01 am by AeroX2 »
 
The following users thanked this post: MarkMLl

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #48 on: March 17, 2022, 08:50:43 am »
Here's my guesses so far... along with an attached composite of both sides that might help.

Nicely done composite. I did one which was rather less neat and crudely traced the tracks on both sides, but there's a lot of detail under the chip that doesn't show up clearly.

MarkMLl
 

Offline MarkMLlTopic starter

  • Frequent Contributor
  • **
  • Posts: 357
  • Country: gb
Re: Brother (possibly also some Bernina) embroidery machine memory cards
« Reply #49 on: March 17, 2022, 09:00:22 am »
So took a little bit of time and went at it with a multimeter and this is what I got, haven't double checked it or anything but it seemed to have all the necessary pins for the chip. EDIT: (Looking at amyk, net 3, I think it is a more complete picture of my probing on pins for WE/CE/etc, I'll double check on my side but it looks correct)

Well done and thanks from everybody.

Note that my revised table no longer claims that some of the copper areas are Vcc.

I can't remember whether I ever found a "good enough" connector on AliExpress etc., but if I did I didn't bookmark it. I think that I noted a part number when I was examining a stripped-down card, but from the "Magic Box" writer I see it identified as AMP 175758-1 (40-pin male right-angle PTH).

MarkMLl
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf