• Updated 2023-07-12: Hello, Guest! Welcome back, and be sure to check out this follow-up post about our outage a week or so ago.

Converting Acard AEC-7722 to AEC-7726

weedeewee

Member
Well, I somehow managed to make one adapter unresponsive.
It was either by jumpering the SE & RSV.4 jumpers at the same time,
or jumpering RSV.1 .
the behavior afterwards is, the device no longer is detected, yet also does not cause the scsi host to timeout on the detection,ergo it's stuck.
When id.3 is jumpered (device id 8 set), the host still does not find a device, yet the bus detection proceeds without problem.
I'm going to take the eeprom off and verify the contents just to be certain it's not somehow a firmware fault.
 

feipoa

Member
I have definitely run into a non-responsive conditions like that; I think mostly with rev 1.5 PCBs. Were you successful in sourcing the PLCC32 sockets? It should save hassle with soldering/desoldering. I personally think soldering on the socket is easier than soldering on PLCC directly with an iron. There is only one small socket corner which needs to be dremeled down to make clearance.
 

weedeewee

Member
Ok
Forget about the jumpers messing up the adapter,
I just took off the eeprom,
verified the contents,
tested the adapter without eeprom, was identified as "ARC765E3 BadExtRom 16K"
soldered the eeprom back on
and it works again.
much rejoicing !
 

trag

Well-known member
Ok
Forget about the jumpers messing up the adapter,
I just took off the eeprom,
verified the contents,
tested the adapter without eeprom, was identified as "ARC765E3 BadExtRom 16K"
soldered the eeprom back on
and it works again.
much rejoicing !

That's good news.

Are you two finding that after putting the 7726 firmware on the 7222, that the ID8 is stuck on the resulting board?

That is, all SCSI addresses are 8 + settings. And if no SCSI ID jumpers are installed the boards are showing as ID8.
 

weedeewee

Member
That is, all SCSI addresses are 8 + settings. And if no SCSI ID jumpers are installed the boards are showing as ID8.
No, haven't noticed anything like that. and I just did a test with the three adapters, that I have, hooked up to a 2940UW, one hdd, one msata-ide, one sd-ide, ID zero, one and two. able to do simultaneous linear read at 10MB/s each.

Allthough, while the board was somehow unresponsive, once the third id bit (8+) was set it no longer hogged the scsi bus and detection would continue. I found that to be quite odd and the fact that taking the eeprom off, getting the device seen on the scsi bus with the eeprom off, putting the same eeprom without chances back on, (ok I added some solder to the solderpads) and having the device working again...
I would expect the same badextrom device id to be shown if somehow the eeprom had a bad connection and gave bad data to the main chip, yet.. that didn't happen.

you know what, I'm going to do a test with one device on id eight, one on zero, and the other on one.
 

trag

Well-known member
@weedeewee Looking forward to your results.

I'm using 7726 firmware 1.73Q in my tests, mainly. Sometimes 1.69Q.

On both Rev. 1.5 and 1.8 I see SCSI ID 8 stuck after conversion.

I test all board with an optical drive before conversion, and SCSI IDs were proper -- as the jumper settings indicated -- before the conversion.

I'm using an Adaptec PowerDomain 29160

I'm not sure I've tested with the SCSI ID 8 jumper installed. I wonder if that would take it back to ID 0....
 

weedeewee

Member
@weedeewee Looking forward to your results.

I'm using 7726 firmware 1.73Q in my tests, mainly. Sometimes 1.69Q.

On both Rev. 1.5 and 1.8 I see SCSI ID 8 stuck after conversion.

I test all board with an optical drive before conversion, and SCSI IDs were proper -- as the jumper settings indicated -- before the conversion.

I'm using an Adaptec PowerDomain 29160

I'm not sure I've tested with the SCSI ID 8 jumper installed. I wonder if that would take it back to ID 0....
All seems fine, using ID 0,1 & 8 at the same time.

I'm using the same firmware 1.73q. The only thing that maybe is different is that the first read I did of the original eeprom showed me 32K of data, which seemed to be the same 16K firmware twice, so I did the same with the 1.73q and programmed the eeprom with two consecutive copies.
 

weedeewee

Member
I'm also thinking of a mod, that would add a jumper to address line 17 of the eeprom, and thus allow for the base address to be set at either 0 or 256k. This would allow easy switching between firmware as in, set the hard drive firmware at base 0, and the cdrom firmware at base 256k
At the moment I believe that should work.
 

feipoa

Member
trag, I've always had my SCSI ID's set to ID 5 v1.8 and v3.0 have shown a HDD on ID #5. I'm waiting for some Winbond EEPROMs to test v1.5 with HDDs. I don't want to overwrite my CD-ROM flash at this time.

weedeewee, that is really interesting about having the flash data repeat itself. Looking forward to the results from your jumper hack. Wouldn't the checksum get in the way?
 

weedeewee

Member
feipoa,
The data repeating itself was something I saw in the original eeprom.
There being two copies of the same firmware in the eeprom.

The checksum getting in the way depends on what amount of data the checksum is actually calculated on. The firmware download is only 16K.
Testing will have to wait until I get the plcc sockets, since it will involve disconnecting a pin between socket and pcb, routing the pcb pad and socketpin together with a pullup resistor to a three pin jumper, to select either normal pcb-socket or pin pullup, which would translate to either the first firmware image at the beginning of the eeprom, or a secondary image located at another location in the eeprom.
 

MrFahrenheit

Well-known member
Are those the folks that changed their name to just geeks.com later. And then closed up about five or ten years ago? I got lots of great stuff from them back in the day. Sigh.



One wonderful virtue of your adapters is that one knows they're terminated. I hate shopping for SCSI adapters because, who can tell?

I guess one should assume they contain no termination, unless they specifically mention it. But I also remember seeing some SCA-50 pin adapters that claimed they were terminated and had no circuitry on them at all.

Sorry to inject here so late in the game.

In regards to these u160/320 adapters, I have found very few actually work with u160/320 drives on the Mac. The ones made by a member here worked great. If not available, the ones here are also verified to work on my Macs:


Those are SCA80 to 50 but in case someone is looking for a solution, those do work, too. I haven’t tried any 68 to 50 pin adapters with termination because I don’t have any drives that are 68 pin.

When I tried my Acard with a simple 68-50 plug, the device I plugged in (Fujitsu ATAPI Magneto Optical drive) was not seen at all. I abandoned that attempt to get it working on my Macs after that.
 

dankcomputing

Active member
I've had an AEC-7722 sitting here for years after I couldn't get it working with any IDE drives. I was under the impression that they were LVD only/wide only and could never be jumpered back in spite of the jumper for it but I guess I was wrong about that. Board says it's rev. 3.0 and it only has the PLCC flash chip, with version 1.68B written on it.

I've downloaded everything at http://megaburken.net/~patrik/acard/ except SCSIDE.EXE, which gives a 403 when I try to download it. Could I flash my card to a compatible firmware in-system, or do I absolutely have to socket the flash ROM and flash it out of circuit?
 
Last edited:

trag

Well-known member
I've downloaded everything at http://megaburken.net/~patrik/acard/ except SCSIDE.EXE, which gives a 403 when I try to download it. Could I flash my card to a compatible firmware in-system, or do I absolutely have to socket the flash ROM and flash it out of circuit?

Sorry for the late reply, I'm not visiting regularly these months. Yes, you must remove and reprogram the Flash chip. As far as I know all attempts to program the chip in-circuit have failed.

Someone could probably hack the flasher to make it work, but that'll take a software wiz...

My experience with sockets hasn't been great. I'm finding reprogramming the flash and then soldering it directly back on works better.
 

trag

Well-known member
For any still following this thread, work has been heated for the last several months. Plus knee surgery, most complicated taxes ever, et. al.

I plan to get back to this, but there's no telling when. I did recently order a 7726. If it is actually delivered, I plan to test its behavior first, and then develop a netlist from it to compare with the 7722. There are too many anomalies in the converted 7722 behavior as compared to, for example, the old 7720.
 

dangardner

New member
You can spoof the device identification to SCSIDE.exe to trick it into burning the AEC-7726H firmware to an AEC-7722. I have successfully tested this with a AEC-7722 modified in this way, attached to an IDE hard disk. See attached Python script, you'll also need the NktSpyMgr from https://github.com/nektra/Deviare2 to do the required hooking.
 

Attachments

  • SCSIDEHacker.zip
    2.7 KB · Views: 33

ph0

New member
Any updates with this? 🤞
I have a project underway resurrecting some HP PA-RISC servers, they have LSI controllers and I was going to have a crack at getting them over to CF cards with AEC-7722s, stumbled across this thread, curious about what is the best rev & firmware to target when purchasing - if anything has changed recently since the above.
 

ATEQUITY5

New member
Hello Everybody here, I am investigating on changing the firmware of my 7722 to use it with harddrives. I can not download the scside.exe, can somebody give me the link for downloading the tool? Or is there any alternative, thanks in advance... Frank
 

ATEQUITY5

New member
I found the link in the wayback machine, its still working: dl.acard.com/download/win/utility/bridge/BridgeAP3300.zip
 

jcarron2

New member
You can spoof the device identification to SCSIDE.exe to trick it into burning the AEC-7726H firmware to an AEC-7722. I have successfully tested this with a AEC-7722 modified in this way, attached to an IDE hard disk. See attached Python script, you'll also need the NktSpyMgr from https://github.com/nektra/Deviare2 to do the required hooking.
Do you have anyinfo on how to get this working?
I have downloaded the binary Deviare2, extracted it and tried starting the CSharpConsole COMHookingBasis [Edit I don't know what im doing here] , but when I run the python script I get the following (after installing pywin32com)

Note 2 - modified python script as Python reported all the "print statements weren't valid -
Code:
C:\Python\Python38-32>python.exe SCSIDEHacker.py
  File "SCSIDEHacker.py", line 25
    print 'SCSIDE was started'
          ^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print('SCSIDE
was started')?

Changed lines like
print 'SCSIDE was started'
to
print ('SCSIDE was started')

C:\Python\Python38-32>python.exe SCSIDEHacker-mod.py
Traceback (most recent call last):
File "C:\Python\Python38-32\lib\site-packages\win32com\client\dynamic.py", lin
e 86, in _GetGoodDispatch
IDispatch = pythoncom.connect(IDispatch)
pywintypes.com_error: (-2147221005, 'Invalid class string', None, None)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "SCSIDEHacker-mod.py", line 198, in <module>
main()
File "SCSIDEHacker-mod.py", line 181, in main
spyManager = win32com.client.DispatchWithEvents('DeviareCOM.NktSpyMgr', NktS
pyMgrEvents)
File "C:\Python\Python38-32\lib\site-packages\win32com\client\__init__.py", li
ne 312, in DispatchWithEvents
disp = Dispatch(clsid)
File "C:\Python\Python38-32\lib\site-packages\win32com\client\__init__.py", li
ne 117, in Dispatch
dispatch, userName = dynamic._GetGoodDispatchAndUserName(dispatch, userName,
clsctx)
File "C:\Python\Python38-32\lib\site-packages\win32com\client\dynamic.py", lin
e 106, in _GetGoodDispatchAndUserName
return (_GetGoodDispatch(IDispatch, clsctx), userName)
File "C:\Python\Python38-32\lib\site-packages\win32com\client\dynamic.py", lin
e 88, in _GetGoodDispatch
IDispatch = pythoncom.CoCreateInstance(
pywintypes.com_error: (-2147221005, 'Invalid class string', None, None)

C:\Python\Python38-32>

thanks for any info
Jonathan
 
Last edited:
Top