Modifying a Timewave DSP-232+

Now that I have a feedline to the attic, I can really start to make use of my radio and its accessories. Some time ago I picked up a Timewave DSP-232+ TNC / full featured radio modem. I thought it might be fun to hook up the TNC and set up a packet / APRS station, so I started reading the DSP-232+ manual once again.

U5 EEPROM installed in DSP-232

U5 EEPROM installed in DSP-232

DS1216C real time clock

DS1216C real time clock

While perusing the manual, I noticed an entry in ch4 p10 which mentions that it would be possible to add a DS1216C SmartWatch clock chip from Dallas Semiconductor (now Maxim). The real-time clock would allow the DSP-232+ to operate without a computer and to keep accurate time. Interested in such a possibility, I looked up the part and found that it was discontinued. There are sources for these microchips out there but I was happy to try to use an alternative. According to the Maxim website, it is possible to replace the DS1216C with a newer realtime clock chip such as the DS1244Y-70+.

U5 and DS1244Y+70 microchips

U5 and DS1244Y+70 microchips

I ordered a couple of DS1244Y samples from Maxim and they arrived only a few days later. I have got to say that I am extremely grateful that the electronics industry provides engineering samples – this is a phenomenal resource and I often make us of it. It is a wise investment as many designers tend to use the parts which they sample and use in the prototyping phase of a project for their final design. I certainly do so whenever practical.

Chip stack dry-fit

Chip stack dry-fit

With the replacement RTC in-hand, I was ready to install the chip in the DSP-232. The old part (DS1216C) was a “pass-through” type where the existing EPROM (U5) would be inserted on top of the RTC and the RTC-U5 combo would be re-installed in the U5 socket. It is somewhat common to have a RTC and a RAM/ROM chip combo as the RTC often provides non-volatile ram in a design. The DS1244Y, while also a 600-mil DIP package, is not a pass-through design.

Reading U5 EPROM - M27C512

Reading U5 EPROM – M27C512

Prior to soldering the chips together, I thought it prudent to press my MiniPro TL866 programmer into service.

 

While tinkering in the past, I have let the magic smoke out of many microchips and I did not wish to repeat the experience. This ROM has data that I am unable to replace. As such, I like to keep binary files that contain a bit-wise copy of all data for the PROMS that I can get my hands on. You’d be amazed at the code / data that I have collected over the years.

MiniPRO programmer settings

MiniPRO programmer settings

I inserted the ST Microelectronics M27C512 one-time program EPROM into the reader and fired up the MiniPro.exe (v6.5). You may have to update the firmware on the programmer as I did – this is to improve stability and performance and is highly recommended.

 

Selecting “Select IC (S)” then “Search and Select”, I typed in the chip’s identification M27C512, selected ST on for the “manufactuory” and then the DIP28 device.

MiniPro TL866 read/write results

MiniPro TL866 read/write results

The read process proceeded very quickly and have the “Ok” result.

Being weary of the results, I often do a second read to confirm that there were no issues. In the past, I’ve saved corrupted data when a misleading read result was obtained.

The MiniPro TL866 is a very budget friendly programmer and is well worth buying on eBay, despite the obvious issues with translation, etc. The unit and software support a large number of manufacturers and chipsets.

MiniPro data screen for M27C513 PROM

MiniPro data screen for M27C513 PROM

Once you select “Cancel” from the read / write screen, the downloaded data is available for inspection and storage.

I always verify the data by selecting “Device (D)” and then “Verify (V)”. This performs a second read cycle and verifies that the displayed data matches the second data download.

Once the data verifies as good, I save it in both HEX and BIN formats.

MiniPro file load options

MiniPro file load options

One note – if you load the data later, it is important to know whether you should change the “Clear buffer when loading the file” drop-down box. In this case, when I loaded the HEX file to verify that the saved data is also valid (yes I am paranoid), I had to select “Clear buffer with 0x00” to ensure the data matched what was present on the PROM.

With the data safely stored on my NAS server, I was confident that I could proceed with the actual creation of the chip-stack. I had considered rolling out a PCB to house parallel sockets for the microchips but decided that I was too impatient to make the CAD drawing and knew of a much quicker (albeit less elegant solution).

Chip stack soldered together

Chip stack soldered together

A quick and dirty solution to running microchips in parallel (in the DIP package) is to simply stack them and solder the leads together. After slightly bending the leads outward on the top unit, you can sandwich the two (or more) microchips. Once bent and in position, it is a simple matter to solder the leads together to retain the stacked formation.

While I could have tested the chip stack as a dry-fit, I have run into problems doing so in the past. It is possible to have a poor connection which misleads you when you are working with the stack.

Chip stack installed in U5 socket of theDSP-232

Chip stack installed in U5 socket of the DSP-232

In hindsight, I should have at least tried the dry-fit method prior to soldering the chips together.

Very eager to fire up the DSP-232+ and set the RTC, I installed the chip-stack just as the PROM was previously installed and fired up the unit.

“Christmas tree lights”

That is an expression you never hope to utter, let alone see. The expression describes the unintended state of the display and diagnostic lights when something bad or unexpected happens.

The DSP-232+ would not boot with the chip stack installed. I tried moving the stack forward and still no luck. I decided that the addition of the “drop in equivalent” DS1244Y RTC was the culprit. Sadly, the only good method of de-installing the chip stack which was available to me was to cut off all of the leads of the DS1244Y and then remove the lead remnants from the U5 (M27C512) with a soldering iron one-by-one, destroying the DS1244Y.

Doh! Thankfully the kind people at Maxim Integrated agreed to send more than one DS1244Y RTC. With my spare RTC, I will be running the two chips in parallel on a breadboard so that I can determine:

  • is there a pin difference between the DS1244Y and the DS1216C which prevents operation?
  • can I bodge the DS1244Y and the M27C513 (U5) PROM together with a minimum of connections
U5 breadboarded to DSP-232

U5 breadboarded to DSP-232+

The bread-boarding process is slow and a bit clunky but it should work. I hope to compare both datasheets for the DS1244Y and DS1216C to see something that jumps out as an incompatibility.

I’ve already verified that the PROM is readable in its prototype (on a breadboard) state. In some cases, such a method would not work – mostly high frequency stuff and it generally fails due to distributed capacitance in the breadboard. High speed stuff requires special consideration about ground planes and minimizing capacitance between leads / components – something which is impossible with a conventional solderless bread-board.

Ribbon jumpers for solderless breadboard

Ribbon jumpers for solderless breadboard

I need to get more jumpers before I can proceed – I need 28 in total. Looks like a good time to scan Amazon for some ribbonized jumpers!

I’ve also got a slightly different RTC on the way. The only obvious difference between the DS1244Y and the part I have on order appears to be a difference in memory structure.

As I continue this project, I will be sure to post another update.

Stay tuned for more!

This entry was posted in General, Project and tagged , , , , , , , , . Bookmark the permalink.

5 Responses to Modifying a Timewave DSP-232+

  1. Normando says:

    Did you go further? I’d like to know what were your findings, I acquired a DSP-202+ too and I’d like to have a realtime clock! Thanks!

  2. HA5OZ says:

    I read somewhere that the programs in the EPROMs can handle different sizes of RAMs. So for a test you could swap the first RAM with an DS1244Y, leaving 4 pins empty in the socket (in a similar way to the EPROMS which leave 4 pins empty). I guess the original DSP-232 had a 32kx8 SRAM in the first RAM socket, practically you would downgrade temporarily the DSP232.
    When you stacked the EPROM and the DS1244Y, you practically shorted together the data lines of both chips (one PROM and an SRAM) and all what the CPU could read was garbage data instead of the valid firmware. In simple terms the DS1244Y is practically a DS1612C, but with an SRAM chip already inserted. We can only hope that when writing the date/time to the first RAM, the CPU uses the same data format which DS1244Y understands, only then there are chances that the DS1244Y will work in the first RAM socket.

    • James says:

      This is some fantastic insight into what I was trying to accomplish. It serves me right for not reading more into how the DSP-232 vs DSP-232+ were built / designed. My crazy method of “backpacking” the DS1244Y and the EPROM was based on the documentation that I could find about adding memory to the DSP-232+ using the obsoleted part. I am sure glad that I didn’t cause any (detected) damage to the circuitry in my bumbling around.

      As I read it, you suggest trying a DS1244Y in place of one of the RAM modules? I will likely have to ensure that the DS1244Y RTC has been triggered (they ship with the internal battery d/c until power is first applied – very clever trick which ensures the 10 year lithium primary battery life is preserved until the in-service date. The next step would be to attempt to program the DS1244Y with the ROM data that I pulled from my last experiment.

      Again, thanks a bunch for the insights! Your post may very well pull the DSP-232+ project out from the tupper-ware bin of “projects of the past”

      • HA5OZ says:

        Hi James,
        The DS1244Y it is not meant to be programmed. If you program it as an EEPROM in the TL866, you could damage it, because the EPROM programmers apply something like 12 V when programming to pin 22. I’m not an expert on this subject, but perhaps there could be some tricks to allow the DS1244Y to be programmed, perhaps lifting pin 22 (Output Enable). But then the TL866 can’t verify back the written data. Maybe if you disable verify option you could work around this problem, but there are many unknow variables in this equation.
        I am planning to buy an DS-232, but it has the original AEA EEPROMs, those with the bugs which reboot the TNC frequently. Could you please share the eeprom images of U4 and U5 as your version seems more recent?

        Best regards,
        Zoltan HA5OZ

  3. HA5OZ says:

    For sure you don’t have to solder the DS1244Y, and for sure it is not an EPROM replacement.
    It is intended to replace a 32kx8 SRAM chip.
    I don’t know your version of DSP-232 what RAM contains. I guess if it is a DSP-232+ (PLUS), then it has 128kx8 SRAM. Then you need the DS1248 which has the 128kx8 SRAM already inside, so you have to swap it with one of the RAMs on your board. No soldering required.
    The DS1244Y would have been suitable for an original DSP-232 without the PLUS sign.
    I guess I will order a DS1244Y for my PK-232/MBX, thanks for the suggestion, I didn’t know that the DS1216C has a newer replacement.

Leave a Reply

Your email address will not be published. Required fields are marked *