• 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.

Arduino SCSI device - Work in Progress

erichelgeson

Well-known member
I just got the original ztto version working on my SE/30 and my Classic II yesterday
Nice! I know a few others who have recently built one too. Any notes or photos you have I'd love to hear. Where did you get your PCB from? How are you handling termination (I suppose you are just terminating the next device since you made a chain). Anything you think that could be improved on the hardware or software side?

I'm on the lookout too for a SCSI PowerBook to build a model for that. Also may order a few of the break out boards like RaSCSI has if people would like to mount externally.

 

nyankat

Member
Nice! I know a few others who have recently built one too. Any notes or photos you have I'd love to hear. Where did you get your PCB from? How are you handling termination (I suppose you are just terminating the next device since you made a chain). Anything you think that could be improved on the hardware or software side?

I'm on the lookout too for a SCSI PowerBook to build a model for that. Also may order a few of the break out boards like RaSCSI has if people would like to mount externally.
I didn't make a PCB. I soldered 25 wires from one DB-25 connector to the next one, then soldered a second set of wires to the Blue Pill. For an SD card adapter I just bought the cheapest breakout board my local electronics store had. When I don't have any other devices on the SCSI bus and I plug it directly into the back of the Mac without a cable, the wires are short enough that it actually doesn't need any termination at all. And as you say, when it's in a chain, I terminate the last device.

 
Wow, exciting project. Please keep up the good work! Curious to see if you can manage to make them available! I'd definitely order two of them for my Macs

 
Last edited by a moderator:

erichelgeson

Well-known member
Prototypes arrived early! Unfortunately mouser order is still in transit so will just have to look at them till the parts arrive.

Note I added a pin out to the upper right for hooking up a programmer (so I dont have to solder legs on and risk shorts anymore while debugging :)

Will design/print an internal mount now that I have some holes to mount to this weekend.

/monthly_2020_10/large.20201023_115512.jpg.71392d6f2187efff1c5b224bbf784072.jpg

 

quorten

Well-known member
Cool, I was thinking about this for quite a while and I should probably leave a few comments of my own...

One development dynamic that's been interesting on RaSCSI and some of the related projects was a lack of foresight.  You mention focusing on storage only, and yes, always good to get something up and running by limiting scope, but I feel that I'm going to become more interested in STM32 and Blue Pill due to pricing/availability frustrations with Raspberry Pi Zero and can't help but think how I'll be turning microcontroller projects into do anything and everything machines.

Now that I'm digging into the RaSCSI project more, sure enough I'm finding a number of little tweaks here and there to both the hardware and software that can add significant new and useful functionality.

I'm also fairly new to PCB hardware design, somehow I'm surprised to find out that @erichelgeson is too but maybe I shouldn't be.

 

erichelgeson

Well-known member
Got the mouser order tonight - BlueSCSI 1.0-a fully assembled - tested termination - works!

/monthly_2020_10/large.PXL_20201027_013059957.jpg.0c88e6af94bf519a3deca688310ddbaa.jpg

 

erichelgeson

Well-known member
tweaks here and there to both the hardware and software that can add significant new and useful functionality. 
That's one of the great advantages here - sure these projects are more immature (they're just starting out) - have a ton of potential. Amazing to see what others are already adding to RaSCSI (making a framebuffer capture device)

limiting scope
Limiting scope and price - I think RaSCSI has a nice price point to (much higher) feature set - if you want to go that route. Here it's more on lower price points with a sole focus - something you could stick into each machine if you wanted. I'm sure you could add a lot more here - and maybe someone will, but for now I'm happy with the price/perf/features.

fairly new to PCB hardware design
I had lots of help from ztto's existing work, @landoGriffin, and a bunch of youtube videos :)

 

warmech

Well-known member
Well, that's about the coolest thing I've seen today. Planning on selling blank PCBs soon? Mouser is literally across town from me, so UPS ground gets here next day (I miss the days of same-day will call :( ). I would love to put a few of these together to drop into some stuff.

 

Chopsticks

Well-known member
what exactly have you done to the code, I looked at your repo and can't see any difference in V1/V2 compared the the code from the original developer?

fwiw anyone who's had trouble trying to get the V2 code running, line 8 of the .ino code if you change 

#define USE_DB2ID_TABLE      1  to #define USE_DB2ID_TABLE      0 

it will run fine on a Mac, I fiddled with this about maybe a year ago and this was required at the time to get it to show up as a scsi device.  Also in regards to the name of the device on lines 55-57 you can redefine what it shows up as i.e you could change the vendor 'TNB' to 'Quantum' etc just by changing those letters in the code at those line numbers I mentioned, basically line 55 is vendor, line 56 is model, and I believe line 57 is the fw revision. 

I think the main reason the ArdSCSino isn't as popular as other devices is likely due to it being a little bit more difficult to program/upload the code for someone who's not as experienced with such things. I've be curious to know what read write speeds you get using this? I had pretty average read and write performance myself those the seek times were good compared to my Qauntum Lightning 730S drive. both were run using a SE/30

also worth noting you will need to create the HDD images on a modern computer and then copy those image files to the microsd card using the naming convention req'd in the .ino code. so for scsi id 1 it would be HD10.hds

just figured id share that as there not a lot of information on the Internet regarding the setup process

IMG_0278.jpg

IMG_0279.jpg

 

MrFahrenheit

Well-known member
This is a really cool project!  
 

As for termination, what if you have termination built into the board and having either software control it or have a switch on the board (or jumper) that either enables or disabled termination?

 

erichelgeson

Well-known member
either software control it or have a switch on the board
That's the plan! Right now it's jumpers but those get lost easily (but easily found too)

looked at your repo
Still haven't had time to clean up and push everything - click watch on github and you'll be the first to know when I do :)

There were some updates in V2 upstream ~3-4 months ago - it ran as is for me. I did change the vendor too, and added a config file if someone wished to override some settings - reflashing a firmware is quite a lot just to change settings, translated as best I could with google translate and some context.

not a lot of information on the Internet regarding the setup process
Correct - I got through it as you did, but defiantly will be documented on my repo as well. Early in the project, lot going on!

pretty average read and write performance
Yep! Not going to knock the socks off a scsi2sd or hdd - but will be a nice alternative. I've only tested in Norton so far - will test in that utility too and post some numbers.

 

Chopsticks

Well-known member
i look forward to seeing how this comes along, let me know if you need any testing done etc, happy to help out if needed

 

Chopsticks

Well-known member
also might be a handy idea to add a standard HDD power connector to your pcb for those who want to install it internally inside a Mac? what are your thoughts/ideas regarding that?

 

cheesestraws

Well-known member
also might be a handy idea to add a standard HDD power connector to your pcb


There is no need, it is powered by the SCSI bus.


I have had issues with some of "the competition" (as it were) on some machines where the SCSI bus doesn't seem to provide quite enough juice, even though it ought; there are a couple of models that seem particularly prone to this.  So it may be worth putting one on if room can be found, perhaps even a small floppy-style one.

 

Chopsticks

Well-known member
I have had issues with some of "the competition" (as it were) on some machines where the SCSI bus doesn't seem to provide quite enough juice, even though it ought; there are a couple of models that seem particularly prone to this.  So it may be worth putting one on if room can be found, perhaps even a small floppy-style one.
interesting, i should probably, check how much current the se/30 can provided on the scsi 5v termination line compared to the current draw of this hdd emulator, as well as the current draw of the microsdcard i was using.

perhaps its not a problem on more 'modern' vintage macs?

 

cheesestraws

Well-known member
perhaps its not a problem on more 'modern' vintage macs?


I don't think it's even that; my suspicion is that it's just slightly borderline design on a couple of models.  Earlier ones and later ones both seem to work.  Though I haven't looked into this scientifically other than sighing and finding workarounds :) , so take this with a pinch of salt.

 

Chopsticks

Well-known member
I don't think it's even that; my suspicion is that it's just slightly borderline design on a couple of models.  Earlier ones and later ones both seem to work.  Though I haven't looked into this scientifically other than sighing and finding workarounds :) , so take this with a pinch of salt.
thats interesting to know, i guess maybe the se/30 is one of those borderline designs?
 

i gave up on this device awhile ago anyways, it was to slow compared to the hdd i have in my mac currently, still considering how cheap it is to buy the micro and the pcb im sure this is a great option for many people

 

nyankat

Member
I don't think it's even that; my suspicion is that it's just slightly borderline design on a couple of models.  Earlier ones and later ones both seem to work.  Though I haven't looked into this scientifically other than sighing and finding workarounds :) , so take this with a pinch of salt.
It may not even be a matter of current. I noticed while poking around with my SE/30 that there appears to be a Schottky diode drop on the SCSI termination power rail, resulting in a voltage of about 4.6V iirc. This makes sense, as you don't want another device on the SCSI chain also providing term power (like my CD-ROM does) "fighting" with the power supply. This might just be marginal enough even with the low dropout of the regulator on the Blue Pill that the processor isn't getting enough voltage. And I imagine some Blue Pills have better LDOs than others, considering everybody makes them.

 
Top