Apple eMate 300 Expansion Module (Open Source / Open Hardware Project)

Stephen

BetterBit
Staff member
Founder
Sep 5, 2021
204
250
63
San Francisco
This is an ongoing effort to reverse engineer the DT320 eMate 300 Expansion module. The reference module was generously loaned by colin (@This Does Not Compute) of This Does Not Compute. Schematics, gerbers, datasheets, and more are currently closed in a private repo and will be released once revisions are tested and finalized.

I will make 5 "numbered" boards available for purchase for early supporters. Prices will likely be in the $50 range which is significantly cheaper than the old stock which currently sells north of $200. Proceeds from early supporters will be used to cover the cost of this project, remaining proceeds will be used to support future open source / open hardware projects.

IMG_1354.jpg
Populated V1 PCB; bodges and all!

IMG_1355.jpg
Bare PCB (might delete later)
 
Last edited:

Androda

TinkerDifferent Board Secretary 2023
Staff member
Sep 25, 2021
496
531
93
USA, Western
androda.work
Does this give you 2mb of flash and an extra 1mb of dram?
As far as I know, the flash is additive but the DRAM actually takes precedence over the original system RAM.

This could be because the card has a 32 bit memory bus and the RAM on the motherboard is only 16 bits wide. Could be wrong, it's kind of unclear.

As per the usual hackery, I'm working on producing these modules with greater than the original memory sizing. Hoping to get 4 megs of RAM and 4 of flash on the card. My PCB design experience is being pushed to the limits with these things, so many signals to route in such a small area.
 

Stephen

BetterBit
Staff member
Founder
Sep 5, 2021
204
250
63
San Francisco
I wasn't as successful as I had hoped with this! I had always hoped to release a fully open source version which people could assemble themselves or buy from approved vendors but I think I'm taking a break from this one.

Here's the open source project (GitHub Repo)! I'm stumped on the best modern RAM solution.
 

Androda

TinkerDifferent Board Secretary 2023
Staff member
Sep 25, 2021
496
531
93
USA, Western
androda.work
My attempts to increase the RAM and Flash sizing look like they aren't going to work out. Fortunately, my efforts have resulted in a working module with the same capacity as the original!

Fork of Stephen's repo is here: https://github.com/androda/eMate-Expansion

The CL-PS7010 RAM and Flash interface chip is an enigma, there are no datasheets available. Its cousin the CL-PS7110 appears to be a combination of ARM710a CPU and the original 7010, a chip consolidation basically. If the capabilities are similar, then it may be possible to use software to reconfigure the RAM layout somehow and see the full capacity of the 64 megabit Micron RAM which is on this module design (larger than the 16 megabit original chips).

A very interesting thing I've found is that although Newtons (eMate and 2100) themselves use Sharp LH28F016SUT chips for flash storage, either they don't work on the expansion module or the three I've tried so far were duds / bad soldering. Only the Intel E28F016SV has worked. I may make one more prototype round using a higher capacity Intel chip just to see what it does. (already have the chips, might as well use them) But given that only 19 address lines are piped to the flash, I don't think that a chip with higher storage megabit rating will do any good because the number of addresses just isn't high enough.

Mostly happy to have produced a working module after so much prototyping and chip ordering.
 
  • Like
  • Wow
Reactions: Fizzbinn and splorp

Androda

TinkerDifferent Board Secretary 2023
Staff member
Sep 25, 2021
496
531
93
USA, Western
androda.work
I'd love to be making and selling these, but there are some problems. Only one of the 10 modules I assembled was functional from a flash storage perspective. On most of them, the DRAM works - but the flash for some reason just isn't having it.

Some possibilities come to mind:
* The PCB design might be right on the edge of address/data bus distance/skew limits, and that one flash chip just happens to be ok with it
* These Intel flash chips are from a bad batch and only that one worked in the first place

My eMate now behaves strangely after having tested so many of these modules. I think the eMate actually copies system data from internal flash onto the upgrade module. The eMate now reports that it runs OS version 2.2 instead of 2.1. And it says that factory calibration data for the rechargeable battery has been lost.

It looks to me like the flash upgrade is intended to be a one way process. You install the flash module, the system fully reformats and copies the system / calibration data over to the flash (whatever makes normal eMates say OS 2.1, etc) - and then you can never remove the upgrade.

Because of this odd behavior I actually think support for flash-upgrade expansion modules might have been semi-experimental. DRAM expansion modules are something which I could probably make and sell because my DRAM test boards didn't behave strangely. And the DRAM expansion has the benefit of expanding the data bus from 16 to 32 bits, which makes the system a lot snappier in general.

So these modules are definitely odd. There are undocumented behaviors with flash-upgrade cards. And DRAM cards are the safest bet (even though they don't expand internal storage).
 

Fizzbinn

Tinkerer
Nov 29, 2021
189
183
43
Charlottesville, VA
Yup, looks like it's identical to the unit Colin from This Does Not Compute (YouTube) loaned me for my reversing (I have photos on my GitHub Repo for this project Front / Back).

Ah, sorry I should have looked there, I had while back and now vaguely recall seeing those images.

Darn, I thought the chance was small mine might be a different rev but wanted to check.

I'd love to be making and selling these, but there are some problems. Only one of the 10 modules I assembled was functional from a flash storage perspective. On most of them, the DRAM works - but the flash for some reason just isn't having it.

Some possibilities come to mind:
* The PCB design might be right on the edge of address/data bus distance/skew limits, and that one flash chip just happens to be ok with it
* These Intel flash chips are from a bad batch and only that one worked in the first place

My eMate now behaves strangely after having tested so many of these modules. I think the eMate actually copies system data from internal flash onto the upgrade module. The eMate now reports that it runs OS version 2.2 instead of 2.1. And it says that factory calibration data for the rechargeable battery has been lost.

It looks to me like the flash upgrade is intended to be a one way process. You install the flash module, the system fully reformats and copies the system / calibration data over to the flash (whatever makes normal eMates say OS 2.1, etc) - and then you can never remove the upgrade.

Because of this odd behavior I actually think support for flash-upgrade expansion modules might have been semi-experimental. DRAM expansion modules are something which I could probably make and sell because my DRAM test boards didn't behave strangely. And the DRAM expansion has the benefit of expanding the data bus from 16 to 32 bits, which makes the system a lot snappier in general.

So these modules are definitely odd. There are undocumented behaviors with flash-upgrade cards. And DRAM cards are the safest bet (even though they don't expand internal storage).

Maybe it is just a bad batch of Intel flash chips? I recall when I rebuilt the battery on my first eMate I had to do some sort of reset process. Pretty sure it showed OS 2.2 at some point on the process. In regard to installing or removing the expansion card I imagined you’d need to do a similar reset either way, a factory default essentially.

All that said I think other folks might be interested in DRAM only expansion cards, I’d pick up one for my first eMate!
 

Androda

TinkerDifferent Board Secretary 2023
Staff member
Sep 25, 2021
496
531
93
USA, Western
androda.work
A DRAM-only version is on my list of projects to do. I'd like to find actually new RAM chips to use instead of buying new old stock and just hoping that they work (given that I don't have a RAM tester).
 

Androda

TinkerDifferent Board Secretary 2023
Staff member
Sep 25, 2021
496
531
93
USA, Western
androda.work
News on this project: I have designs which work, both DRAM-only and DRAM-plus-flash.

This project has been thoroughly weird. As mentioned before, only one of the 10 I assembled (dram plus flash) last time worked at all (the first one, which gave me a false sense of hope). I revised that design and tried again, with no success. Tried one last time, completely reworking where the chips are on the PCB, and just tested that design this morning.

Poof, it works. I have assembled and installed four DRAM-plus-flash modules in my eMate, and all of them have reported the increased storage space and System RAM. My DRAM-only design also works, five of those assembled and reporting only the increased System RAM.

I haven't tested installing programs (not sure if you even get to select where they end up, on eMate internal or the upgrade stick), but this is certainly a good sign and step in the right direction.

If you're interested in testing out one of these modules, DM me. Three of the ram plus flash upgrades are available (leaving one for me to test with), and five DRAM-only are available.
 
  • Like
Reactions: splorp

splorp

Tinkerer
Oct 31, 2021
142
135
43
Calgary, Alberta
splorp.com
I recall when I rebuilt the battery on my first eMate I had to do some sort of reset process. Pretty sure it showed OS 2.2 at some point on the process. In regard to installing or removing the expansion card I imagined you’d need to do a similar reset either way, a factory default essentially.

The bottom of this page has some additional information regarding “blowing away” eMate system patches and the odd 2.2 ROM versioning.

Stephanie’s Other eMate Hardware Hacks
 
  • Like
Reactions: Androda

retr01

Senior Tinkerer
Jun 6, 2022
2,473
1
796
113
Utah, USA
retr01.com
This memory expansion module is fantastic! :D(y) The eMate 300 is on my list to pick up.

So, I have some questions:
  • I read on LowEndMac that the software to communicate between eMate 300 and a vintage Mac works from System 7.1 up to MacOS 9. Is that confirmed?
  • I read on a memory chip reseller's site that eMate 300 can have a maximum RAM of 9 MB. Has that been confirmed?
  • Are there options for the eMate 300 to communicate with modern computers?
  • WiFi?
 

Mikeyy00

New Tinkerer
Aug 8, 2022
2
1
3
This memory expansion module is fantastic! :D(y) The eMate 300 is on my list to pick up.

So, I have some questions:
  • I read on LowEndMac that the software to communicate between eMate 300 and a vintage Mac works from System 7.1 up to MacOS 9. Is that confirmed?
  • I read on a memory chip reseller's site that eMate 300 can have a maximum RAM of 9 MB. Has that been confirmed?
  • Are there options for the eMate 300 to communicate with modern computers?
  • WiFi?
You can do up to 9.1 using official software, and there's a 3rd party sync tool for modern versions of macOS X/11/12/whatever. https://newtonresearch.org/connection/

Can't speak to the max ram.

Newton just talks serial. Use a USB to serial.. should work with anything that has USB?

Wifi B works with the right card/drivers. But.. why? Network stack doesn't support SSL at all, so browsing isn't going to happen.. and even when it did work, even on an MP 2100 it was brutal. CPU in the emate is 10x slower.
 

retr01

Senior Tinkerer
Jun 6, 2022
2,473
1
796
113
Utah, USA
retr01.com
You can do up to 9.1 using official software, and there's a 3rd party sync tool for modern versions of macOS X/11/12/whatever. https://newtonresearch.org/connection/

Great! Thank you, @Mikeyy00. :) Are you saying it won't work with macOS 9.2 and 9.2.2? Just up to 9.1?

Can't speak to the max ram.

Yeah, I figured 9 MB RAM wasn't confirmed. I will do more research unless someone on here can.

Newton just talks serial. Use a USB to serial.. should work with anything that has USB?

Right.

Wifi B works with the right card/drivers. But.. why? Network stack doesn't support SSL at all, so browsing isn't going to happen.. and even when it did work, even on an MP 2100 it was brutal. CPU in the emate is 10x slower.

Yeah, there is an IR option. I thought maybe a modern third-party solution for WiFi connection. Not yet, I gather. Not saying it's impossible. It just needs an intermediary such as Pico to make it happen. :sneaky: