Jump to content
IGNORED

SDrive-Simple - Yet Another Hardware Variation


mytek

Recommended Posts

I discovered what initiates the falling asleep aspect when idling  for more than 2 minutes. It apparently has nothing to do with the SDrive hardware, but occurs when long filename support has been initiated in the sdrive.atr application (initiated by CTRL+L, and can be saved to config by CTRL+W, L, Y).

 

If I leave the setting to the default of NO long filename support, then there is no pause when accessing the menu after 2 or more minutes.

 

Now I still do see this falling asleep effect happening when booting straight into a DOS disk (by renaming it sdrive.atr), so I'm not sure if this setting got stored into the SDrive hardware (perhaps into the EEPROM???).

 

Anyway you can verify what I'm seeing on your standard SDrive-Max hardware by first leaving it at its defaults, wait at least 2 minutes, and then try moving the cursor over the file selections. This test should not pause before reacting. Next just do a CTRL+L (no need to save it to config) and then wait at least 2 minutes and try the same thing - this test should definitely pause before reacting to your key press.

 

I saw this exact same behavior in both V1.2 and V1.3 firmware (never tested in anything prior to that).

 

  • Like 2
Link to comment
Share on other sites

On 1/29/2022 at 4:29 PM, mytek said:

Now I still do see this falling asleep effect happening when booting straight into a DOS disk (by renaming it sdrive.atr), so I'm not sure if this setting got stored into the SDrive hardware (perhaps into the EEPROM???).

So what I'm talking about here is a BW-DOS 1.3 atr that I use for program development on real hardware. I renamed it sdrive.atr so that it'll automatically boot-up in my SDrive-Simple hardware in lieu of the control program. It used to glitch quite often when saving to the disk after 2 minutes or more of inactivity, and often times would error out while trying to write and/or create bad files. So thinking that perhaps the EEPROM gets written to from the 'real' sdrive.atr control program, I took a version with the defaults still in play and loaded that. Then i replaced it with my BW-DOS boot disk, and began experimenting with writing to the disk. So far the worse case scenario I've seen when writing after 2 minutes of inactivity is an ever so slight pause followed by a successful disk write to the SD card. Maybe problem solved :ponder:

 

Perhaps the creators of the SDrive control program can hop in here and verify my presumption on the control program writing into the EEPROM when loaded, or subsequently when the config has been modified. Also an explanation of why using long file name support causes a drive access delay after the drive has been inactive for 2 minutes or more would be great to know ;-)

 

And finally it sure would be nice if someone else with an SDrive-Max could verify the disk access pause when long filename support has been activated following a 2 minute or longer period of inactivity. Thus far I have seen this to be true on both firmware versions 1.2 and 1.3. Come on, somebody out there must have an SDrive-Max :lol:

 

EDIT: maybe too good to be true. I just got an Error 138 when attempting another write to my BW-DOS disk. So I guess that pause is still a problem at times. This happened while writing a Basic file, and when subsequently re-attempted threw the same error. So I went into DOS, did a directory and all looked OK, went back to Basic and saved it again with no pause and apparently successful, cleared memory and reloaded the program, and finally ran it with everything appearing to be good.

 

Edited by mytek
Link to comment
Share on other sites

I still use an Sdrive Max. I have not been able to recreate your problems yet. Here’s what I’ve tried:

 

- long file name support in sdrive.ATR and saved on device

- Booted Turbo Basic XL with MyDOS 4.5/4

- loaded save disk into D2

- waited more than 2 minutes (attract mode was activated)

- saved simple BASIC program successfully

- restarted XEGS

- waited 2 minutes

- loaded BASIC program successfully from D2 in Sdrive Max

 

If you have something specific for me to try, I can try it on my system.

 

Bob C 

Link to comment
Share on other sites

14 hours ago, darwinmac said:

I still use an Sdrive Max. I have not been able to recreate your problems yet. Here’s what I’ve tried:

 

- long file name support in sdrive.ATR and saved on device

- Booted Turbo Basic XL with MyDOS 4.5/4

- loaded save disk into D2

- waited more than 2 minutes (attract mode was activated)

- saved simple BASIC program successfully

- restarted XEGS

- waited 2 minutes

- loaded BASIC program successfully from D2 in Sdrive Max

 

If you have something specific for me to try, I can try it on my system.

 

Bob C 

Well the simplest test is to just boot up the sdrive.atr control program on an SD Card that contains several executables (XEX files) and then at least temporarily set it for long file name support (CNTRL+L) if it isn't already. Next just arrow down to an XEX on the listing - the response should be instantaneous - no delay in the cursor moving down the file listing. Now let the system sit for at least 2 minutes and try pressing arrow down again. On my system there will be something akin to the farting sound and then finally the cursor will move to the next file in the list. You can see this in a video I posted several posts back.

 

Link to comment
Share on other sites

@mytek - Following your steps and increasing my volume, I was able to hear the "farting sound" and see the slight pause when I had long filename support turned on and I waited for 2 minutes or more. Unfortunately, since the GitHub hasn't been updated since April 2020, I'm not optimistic that it'll be investigated and fixed. Thankfully, the slight pause doesn't seem to be affecting saving files after waiting for 2 minutes or more. The Sdrive Max has been very stable for me.

 

Now, I know that if I have problems because of the pause, I can turn off long filename support.

 

Bob C

  • Thanks 1
Link to comment
Share on other sites

8 hours ago, kbr said:

I think this is caused by the screensaver, have you tried to disable "Blank" at the Cfg menu?

 

@kbr - That did it. I do not have the pause and SIO disk access retry (“fart”) sound.  I would be interested in knowing why it works if long file name support is turned off and the screensaver is turned on.  
 

Since I have the Sdrive Max on SIO power, it is not on 24/7. Will I need to worry about touchscreen burn-in is the device is on for 1-2 hours at a time?

 

Bob C

Link to comment
Share on other sites

21 hours ago, kbr said:

I think this is caused by the screensaver, have you tried to disable "Blank" at the Cfg menu?

That makes a lot of sense, and probably is also responsible for randomly interrupting disk writes. I'll be testing this out today, and if this cures it, then I'll update the files for flashing the stand-alone SDrive-Simple. Thanks ;-)

 

13 hours ago, darwinmac said:

That did it. I do not have the pause and SIO disk access retry (“fart”) sound.

Nice confirmation ?

 

  • Like 1
Link to comment
Share on other sites

14 hours ago, darwinmac said:

@kbr - That did it. I do not have the pause and SIO disk access retry (“fart”) sound.  I would be interested in knowing why it works if long file name support is turned off and the screensaver is turned on.  
 

Since I have the Sdrive Max on SIO power, it is not on 24/7. Will I need to worry about touchscreen burn-in is the device is on for 1-2 hours at a time?

 

Bob C

I don't see any dependency to long file name support, but i have to try it by my self next days...

I have no long time experience with the display, the screen blanker is originated more than a nice gimmick :)

 

1 hour ago, mytek said:

That makes a lot of sense, and probably is also responsible for randomly interrupting disk writes. I'll be testing this out today, and if this cures it, then I'll update the files for flashing the stand-alone SDrive-Simple. Thanks ;-)

 

Nice confirmation ?

 

You have to change the default value for the cfg byte in eeprom at tft.c from 0xf3 to 0xe3 i guess:

unsigned char cfg EEMEM = 0xf3; //config byte on eeprom, initial value is all on except boot_d1 and 1050

 

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Killed two birds with one stone :)

 

Having the MAX Screensaver active was also the root cause of the save to disk sometimes getting corrupted. When I deactivated it, all is now good. The updated TL866 II Plus file can be gotten here...

 

 

I still need to produce and upload the independent binary and hex files for other programmers, but that will come pretty soon (EDIT: They are now Uploaded).

 

Thanks @kbr for suggesting the solution, and also for helping create such an awesome device in the SDrive-Max.

 

Edited by mytek
Added note about new uploads
  • Like 3
Link to comment
Share on other sites

On 1/20/2022 at 7:26 PM, mytek said:

Be nice to get some confirmation on what I am seeing from others, so that a pattern can be established for when -or- when not this occurs.

 

On my SDrive Max, the falling asleep happens when the screen saver turns on.  I assumed it was regular normal behavior as it happens as a regular predictable event here.

 

Edit: Oops I see I am late to the party as usual... :)

 

  • Thanks 1
Link to comment
Share on other sites

24 minutes ago, bf2k+ said:

On my SDrive Max, the falling asleep happens when the screen saver turns on.  I assumed it was regular normal behavior as it happens as a regular predictable event here.

 

Edit: Oops I see I am late to the party as usual... :)

Yep kbr already acknowledged that, and then I confirmed it for all cases. But if he hadn't, then your post would have had equal impact on discovering a solution for the problem I was seeing. So thank you very much for the feedback ?

 

Link to comment
Share on other sites

  • 2 weeks later...
On 2/3/2022 at 2:46 AM, darwinmac said:

@kbr - That did it. I do not have the pause and SIO disk access retry (“fart”) sound.  I would be interested in knowing why it works if long file name support is turned off and the screensaver is turned on.  
 

Bob C

The thing is, if long file support is turned on, then the sdrive control program is loading from SD card on each file selection. Otherwise only on assign, change directory or other options which need disk access.

Link to comment
Share on other sites

3 hours ago, kbr said:

The thing is, if long file support is turned on, then the sdrive control program is loading from SD card on each file selection. Otherwise only on assign, change directory or other options which need disk access.

Thanks for the answer. I have turned off the screensaver to about any potential problems. 
 

Bob C

Link to comment
Share on other sites

  • 2 weeks later...

New Version PCB coming soon: SDrive-Simple-II

 

TOP VIEW

SDrive-Simple-II_PCB_top.thumb.png.5f99290555e3acc48eb53c429df4bfd8.png

 

BOTTOM VIEW

SDrive-Simple-II_PCB_btm.thumb.png.ae2ae9eeffaa9990ce0b99fc64b6c3f7.png

 

 

Uses a Standard SD Card Socket (TE 2041021-3) instead of the Adafruit 254 micro-SD Break-Out board

TE-2041021-3.thumb.jpg.5d873091e120553a97cf74ae8dc63cbb.jpg

 

This new board uses the onsemi NCV4274AST33T3G 3.3V regulator which is back in stock at Mouser, and goes for $1.62 ($1.46 @ 10 pieces).

 

In my opinion this is a much better way to go, since the SD card (or micro-SD adapter) will hang out well past the Atari's rear enclosure plastic thus allowing for an easy insertion/extraction via a simple slotted hole. And it allows either style of SD card to be used, with the micro-SD requiring an adapter that most everyone has at least one of floating around. Plus the cost will be less with the SD socket going for about $1.86 at Newark.com ($1.71 @ 10 pieces). Although this is an obsolete part, they have 1,200+ in stock. However it does require some SMD soldering, but we're talking very large scale where this is concerned.

 

There will be a cost savings of approximately $4 vs. the Adafruit 254 micro-SD Break-Out board.

 

The same firmware that I uploaded at the start of this topic will still work, as well as the same ATMEGA328 chip, and the footprint of the board has not changed for this new iteration.

 

EDIT: This really is the version I should have made from the get go, but as I mentioned in the beginning of this topic that first one was thrown together very quickly. Now that the design has evolved, most likely I'll put this on my AtariBits website, and work up a nice BOM for it as well.

 

Edited by mytek
  • Like 3
Link to comment
Share on other sites

SDrive-Simple-II Sample Boards Have Been Ordered

 

SDrive-Simple-II_PCB_top.thumb.png.7d83959510e31129834ddc110fddaf0e.png SDrive-Simple-II_PCB_btm.thumb.png.6d6e934b7282046f170c5b5a97d28b84.png

 

I fine-tuned the silk screens for the top and bottom sides, being sure to give due credit to the original developers that made this project possible.

 

Sample boards from JLCPCB are expected to arrive towards the end of this coming week for testing.

 

  • Like 4
Link to comment
Share on other sites

  • 2 weeks later...

I got the new SDrive-Simple-II boards in a few days back and got one assembled, as well as installed in an 800XL. So here's my quick and dirty way to put a slot in the 800XL case for the standard SD card to go through and into the SD card socket on my board (I really need to invest in a Dremel ;) ).

 

Get ready to mark the opening for the SD card slot

1.JPG.b7e3757666a02f97ba099dc56937a25e.JPG

 

Here you see the SDrive-Simple-II board has been mounted above the SIO jack using two 20 mm

M3 threaded standoffs, and screws (this puts the slot in safe territory to clear the SIO plug below)

2.JPG.e36eb8cadee62495a1adfb0b74e4841c.JPG

 

With the motherboard in place, mark the location of the slot by outlining the socket

3.JPG.edb421b8761c1306cab2fd64fadac59b.JPG

 

End result of outlining

4.JPG.4c7bbdbd52d246abc904aead4992b2c0.JPG

 

Add the bottom line

5.JPG.8817abc5bbb5e897ddd0aa8bd5f24270.JPG

 

Using an 1/8" drill, begin drilling holes inside the slot outline

6.JPG.b91b5f928143fbeb7dd37fd1839a7308.JPG

 

I made as many holes as I was comfortable at doing without breaking out between them

7.JPG.95c11480caf79c96a4dad5991b5876ea.JPG

 

Using a small square file I begin the process of roughing out the hole

8.JPG.37e760eb890c4e76137419874bcc94e8.JPG

 

Did I say rough? Yep it don't look too pretty yet :roll:, but it will in due time

9.JPG.f0b818814ecda135edf2e7d5b016a6fb.JPG

 

Now using a small flat file, I smooth out the shape

10.JPG.f5429f07d3d0487fe025186b02a4e79e.JPG

 

Not bad, and I could fuss with it more to get it perfect, but I think that's good enough

11.JPG.4e8a47ad7aea303a34275e4723f8856e.JPG

 

Now for a trick i learned from @flashjazzcat to blend in the hole edges

12.JPG.2ca3dbd01bb808b5e19ca883f9cd1995.JPG

 

Time to melt that plastic just a tad

13.JPG.0cf98b7ccd1827c052961bb881498b10.JPG

 

Looking even better - yay I know - not anywhere near as nice as what Jon can do ;)

14.JPG.2a361371ba3c47a22123cf118748b984.JPG

 

And here it is in actual use ?  (this pic you can click on to enlarge)

15.thumb.JPG.d5a4f0add2fced67f66a30e7a7bd11e7.JPG

 

I could probably go with 18 mm standoffs if I wanted it to be centered between the SIO plug and the lip of the case, but the SD card sticks out enough that it's pretty easy to grab (not like those friggin Micro-SD cards). The problem is all I saw at Mouser for a 18 mm length standoff was made out of nylon. I kinda wanted to use metal, since I was concerned about nylon being too easy to bend, but I'll give it a try on my next parts order.

 

- Michael

 

Edit: Just looking at this a bit, and I gotta say it's very inconspicuous. From most viewing angles you'd never know this capability was inside the 800XL.

 

Edited by mytek
  • Like 8
Link to comment
Share on other sites

  • 2 weeks later...

Now available as a DIY project at: https://ataribits.weebly.com/sdrive.html

 

SDrive-Simple-II_PCB.thumb.jpg.0d59b6375f601a3e39de535ffe04e14d.jpg

 

It's ready to roll ?

 

The schematic shows what actual SIO pin connections need to be made coming from header J1.

 

Here's a reference I believe looking at the plug side of the SIO jack.

 

sio.gif.f530b804da376a9880edcee5449404d2.gif

 

It's quite possible to solder directly to the exposed pins on the back side of the SIO jack. But I prefer to do a continuity check to find where the signal damping capacitors are connected to those same pins on the motherboard, then remove those caps, and use the now vacant pad to make your connection. In the BOM you will find the suggested jumper wires to be used for this purpose.

 

Enjoy :)

 

  • Like 2
Link to comment
Share on other sites

I installed one in my 1200XL today :)

 

Marked where the SD Card slot is to go (I'm going to cut off that lip in the case)

1.thumb.JPG.7350f5d231cb8321782f2de7bc24a1af.JPG

 

Used a hack saw to make two cuts (outside view)

2.thumb.JPG.5515aa5362d40a1f41dbef30b9e5a9b6.JPG

 

Inside View

3.thumb.JPG.16d14adb9d7d0786b3a9528e89572802.JPG

 

 

I used a razer knife on both the inside and outside, and then carefully bent the piece back'n'forth

until it broke off

4.thumb.JPG.5545928017a4f9a5a57b8605d69fa5d2.JPG

 

After touching up with a flat file, I gave it the acetone treatment to slightly round the edges

(notice the beveled edges that were made - kinda an artsy design thing)

5.thumb.JPG.21c06e94fd8b50c1009bf188d91bbfa6.JPG

 

Time to plan out the SIO connections and get rid of the capacitors

6.thumb.JPG.b8a9c49c2b2cf5a6fda909df3b58322c.JPG

 

Wired (colors are arbitrary - I picked them to be inline with the ribbon cable when plugged in)

7.thumb.JPG.34b81752143f538a68821838199d1620.JPG

 

Mounting motherboard back in in case (notice I had to bend the heat sink for clearance)

8.thumb.JPG.b6b8340e018b02c7a50ee2238b917cb8.JPG

 

Rear View showing top lid secured in place and finished installation

9.thumb.JPG.36b5d3a0e7c1dbe7be30e89c3a95321b.JPG

 

SD Card plugged in and ready to use ?

10.thumb.JPG.ede960c574cad584ccfc203bfa6666f7.JPG

 

So this 1200XL has the following Mods: UAV, TK-II-PBJ, 800XL HSIO OS & built-in Basic Rev C, and now an SDrive-Simple-II

 

Good thing I have the TK-II, because my stock keyboard is beginning to fail (gotta have @bob1200xl take a look - I'll bribe him with the gift of an assembled SDrive-Simple board).

 

Edited by mytek
  • Like 5
Link to comment
Share on other sites

  • 3 weeks later...

Michael,

Thanks for another great project. The crazy chip shortage affects this project also. Mouser has increased the price of the bare 328P chip to $2.87 with no stock available until 1/10/23!

 

However Adafruit and Mouser both have stock on the 328p with the ADAboot bootloader for $5.95. This is Adafruit product #123 https://www.adafruit.com/product/123

 

Have you tried programming the Adafruit chip by installing it into a Arduino UNO board and programming it? Does it work? Adafruit’s web page linked above describes how the ADAboot bootloader works. 
 

I’m just trying to determine if I can build this board without buying a XGecu TL866II Plus USB Programmer For $60.

 


 

 

Link to comment
Share on other sites

Personally I've only programmed the chips with a TL866 II Plus, so I can't say how things would go with an alternate path.

 

Jameco also has a variant of the 328 chip that I've used with success. It was going for about half the price when I bought some a couple months ago. Amazing how stuff that probably was purchased before the chip shortage suddenly needs a higher price tag,even though the vendors cost most likely didn't change. Here's a LINK.

 

Link to comment
Share on other sites

11 hours ago, Forrest said:

Jameco is now selling the Atmel 328p with bootloader for $14.95 - with 388 in stock. Jameco is out of stock of the chip without the bootloader. 

At $14.95 for the programmed chip, this is not worth it IMHO.

Yeah this is just one of the many reasons I'd suggest getting a TL866 II Plus chip programmer in this hobby of ours. It also allows me to program the Microchip PLD replacements for the original MMU PAL chips which have also gotten incredibly expensive to buy from Best Electronics, and of course I can program numerous EPROMS and EEPROMs, and even test logic chips and some SRAMs with it. For all that it does, it's well worth the initial investment. Although probably because of the chip shortage and/or inflation, even the TL866 II Plus has gone up in price by nearly $20 from when I bought mine

 

However if you can't get the chip it doesn't do much good. I just did an OCTOPART.COM search, and it's looking pretty bleak to get this ATMEGA328P chip from anyone at this time. There are other sources in China via eBay and AliExpress, but that can be gamble that you will really get what you ordered to say the least. This chip shortage is really going to put the brakes on upgrading our A8's :(

 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...