Jump to content
IGNORED

Raspberry Pi to SIO


Recommended Posts

Hello,

 

After finally receiving RPi zero case from overseas it was time to turn my Raspberry Pi Zero W to SIO prototype into a finished product.

I had to order a case that can accommodate RPi HAT to have enough room for all the components. It is taller than the smallest one available.

Here I try to cram all pieces into it:

post-68063-0-29864800-1558912515_thumb.jpg

 

I used round file to enlarge opening for a cable:

post-68063-0-42744100-1558912682.jpg

 

Somehow all this needs to fit inside:

post-68063-0-08751200-1558912693_thumb.jpg

 

And it does after rearranging a bit and using tape to prevent short-curcuit:

post-68063-0-40546100-1558913511_thumb.jpg

 

Finished product is unobtrusive:

post-68063-0-10516600-1558912809_thumb.jpg

 

It is powered through Atari. All cables in the background are connected to a computer: s-video and power.

 

If using separate power supply for RPi is acceptable, then the whole thing could be as simple as this:

post-68063-0-87699800-1558913213.png

 

I think this is cost-effective solution for loading Atari programs if you don't mind tinkering with hardware & software a little bit.

 

Enjoy,

RD

  • Like 8
Link to comment
Share on other sites

What do you see as the advantage of this over the SDrive? I know it would cost a lot more to build since a Pi is substantially higher than an Arduino. Also, I see we have the diode in Data In that we got rid of on the SDrive so I am rather surprised to see it in this. Is there a Github for the software? Would love to play around with it and find a better solution than all of those soldered junctions that look a mess. I love Steve's prototype board that look awesome.

Link to comment
Share on other sites

RockfordDash,

In the third picture, the soldering technique for connecting the wires to the Raspberry Pi Zero W is poor. I recommend soldering thru hole headers to the Pi and the 5V to 3.3V level converter board, and then using DuPont wires to the connect the pins. This will provide a robust electrical connection and no further insulation is needed on these wires.

 

TheMontezuma documented the SIO2PI project at http://atariage.com/forums/topic/209010-sio2pi-raspberry-pi-as-a-floppy/

The files are linked in this post.

 

SIO2PI is less expensive top implement than SDrive, as the Raspberry Pi Zero W lists for $10 and Microcenter.com frequently has it on sale for $5. The 5V to 3.3V converter board sells for $2.95 to $3.95 for U.S. assembled boards. Sparkfun.com sells the level converter, P/N BOB-12009 for $2.95 while Adafruit.com sells the equivalent BSS138 for $3.95. Less expensive versions made in China sell for less.

 

The SIO2PI potentially is more powerful - as the Raspberry Pi includes WiFi, Bluetooth, a much faster CPU and dedicated GPU and more memory than the Arduino.

  • Like 1
Link to comment
Share on other sites

I did use gorilla tape to isolate level shifter and connections, but I agree that overall I did a poor job. Wires could be shorter too. Let's consider this proof of concept. Next version should come out better.

 

BTW, this super cap with diodes isn't strictly necessary. I use it because I wanted to eliminate separate power supply for RPi (after all SIO provides +5V). To let RPi survive Atari power on/off cycle I added super capacitor:

post-68063-0-95825100-1558935272.png

 

I didn't know about SDrive when I started this project. I came across SIO2BSD first. Advantages? Simplicity and UI. With RPi Zero W I can (or have to in this case) use my phone/tablet to select programs. I think this beats tiny display built into SDrive.

 

It also helps to have good software readily available. It turns out Hias created atariserver that can be enhanced to become a web server for UI. It handles communication duties and transmission runs at turbo speed too.

Here's GitHub page: https://github.com/mikekov/AtariServer

 

This board by Mr Robot looks positively awesome.

 

Thanks for all your comments.

RD

  • Like 1
Link to comment
Share on other sites

Hi,

 

Can you change the SIO pin order in the PCB to "3,5,10,4,7" (correct me if I'm wrong)? All the logic level shifter boards that I have seen have Ground and +5v as the middle two pins of six (see http://atariage.com/forums/topic/291503-logic-level-shifter-additional-sio-pins-to-connect/?do=findComment&comment=4280582)and being able to use a standard SIO plug to header pin connector cable (5 or 6 pins) would make things a lot simpler, and hopefully start to provide a measure of standardisation across different devices.

Link to comment
Share on other sites

I built an SIO2PI with a Pi Zero some time back, what I found was the CPU was always at 100% which made loading of 'ATR's

a bit random, I know some people on this forum managed to get it working with a Zero, I ended up using a Pi model B and

this worked fine. Since upgraded to Sdrive-Max

Link to comment
Share on other sites

Also, I see we have the diode in Data In that we got rid of on the SDrive so I am rather surprised to see it in this.

 

Why? If you want more than one device on the SIO bus, you need the diode. Maybe the SDrive firmware switched to tri-stating the pin if not in use? Perhaps AtariServer on de the Pi can be changed to do the same thing, if it doesn't already.

Link to comment
Share on other sites

I could beat the price of the LLS from Sparkfun using components but I can't beat the $0.27 per board from aliexpress. I just ordered 15 of them with free shipping for <$5. I'll update the board shortly. I'll also rotate the SuperCap so it can lay down on the µHat, take advantage of the space saving.

  • Like 2
Link to comment
Share on other sites

I suppose we could use different pins on GPIO for ground and power, but I don't think we can move pins 8, 10, 36, as those are UART's transmit/receive and clear to send signals.

 

No problems with RPi being underpowered/too slow for the task. Initially I had a separate web server (Mongoose) and Hias's atariserver running together, and that combination was not working well on RPi Zero. Since incorporating Mongoose into atariserver, and running just a single process, things run smoothly. Connecting clear-to-send to SIO command made it work at 125 kbaud transfer rates (with HISIO driver).

I chose RPi Zero W over bigger 3+ for its size and reduced power consumption.

 

Regarding a diode: I was told here it was needed when daisy-chaining devices, so I included it. But I don't have any other devices to test that out. No clue what would happen then. Perhaps atariserver handles that situation.

 

What I would really like is having SIO to BlueTooth. I know about SIO2BT, but I wish software side was easier to develop and avoided installation (like a web page).

Link to comment
Share on other sites

Hi,

 

I meant changing the pin order on the SIO header on Mr. Robot's PCB, so it's possible to make a Dupont header <-> Atari SIO connector that works with Mr. Robot's board, bidirectional logic level shifter boards, and anything else that wants to use the same header pin layout (nothing to do with GPIO header pins, which vary according to model).

  • Like 2
Link to comment
Share on other sites

Hi,

 

I meant changing the pin order on the SIO header on Mr. Robot's PCB, so it's possible to make a Dupont header <-> Atari SIO connector that works with Mr. Robot's board, bidirectional logic level shifter boards, and anything else that wants to use the same header pin layout (nothing to do with GPIO header pins, which vary according to model).

 

good idea! You caught me before I ordered boards too! I should update the SIO2UNO boards (to V5 *sigh*) with the same pinout.

Edited by Mr Robot
  • Like 2
Link to comment
Share on other sites

 

Why? If you want more than one device on the SIO bus, you need the diode. Maybe the SDrive firmware switched to tri-stating the pin if not in use? Perhaps AtariServer on de the Pi can be changed to do the same thing, if it doesn't already.

The current firmware for the SDrive does not require a diode any more, one less thing to solder up when building, so I was just curious.

Link to comment
Share on other sites

I did use gorilla tape to isolate level shifter and connections, but I agree that overall I did a poor job. Wires could be shorter too. Let's consider this proof of concept. Next version should come out better.

 

BTW, this super cap with diodes isn't strictly necessary. I use it because I wanted to eliminate separate power supply for RPi (after all SIO provides +5V). To let RPi survive Atari power on/off cycle I added super capacitor:

attachicon.gifsupercap-rpi-zero-2.png

 

I didn't know about SDrive when I started this project. I came across SIO2BSD first. Advantages? Simplicity and UI. With RPi Zero W I can (or have to in this case) use my phone/tablet to select programs. I think this beats tiny display built into SDrive.

 

It also helps to have good software readily available. It turns out Hias created atariserver that can be enhanced to become a web server for UI. It handles communication duties and transmission runs at turbo speed too.

Here's GitHub page: https://github.com/mikekov/AtariServer

 

This board by Mr Robot looks positively awesome.

 

Thanks for all your comments.

RD

 

Awesome reasons! Thanks for sharing the idea behind it. How do you use your phone to select the programs? Very cool.

Link to comment
Share on other sites

The current firmware for the SDrive does not require a diode any more, one less thing to solder up when building, so I was just curious.

 

Not in my experience. The SDrive-MAX does not play well with others in my setup (two Happy 1050’s and an SIO2PC device).

  • Like 1
Link to comment
Share on other sites

Hello,

 

After finally receiving RPi zero case from overseas it was time to turn my Raspberry Pi Zero W to SIO prototype into a finished product.

I had to order a case that can accommodate RPi HAT to have enough room for all the components. It is taller than the smallest one available.

Here I try to cram all pieces into it:

attachicon.gifrpi-case-1.jpg

 

I used round file to enlarge opening for a cable:

attachicon.gifrpi-case-2.jpg

 

Somehow all this needs to fit inside:

attachicon.gifrpi-case-3.jpg

 

And it does after rearranging a bit and using tape to prevent short-curcuit:

attachicon.gifrpi-case-5.jpg

 

Finished product is unobtrusive:

attachicon.gifatari-rpi-sio.jpg

 

It is powered through Atari. All cables in the background are connected to a computer: s-video and power.

 

If using separate power supply for RPi is acceptable, then the whole thing could be as simple as this:

attachicon.gifrpi2sio.png

 

I think this is cost-effective solution for loading Atari programs if you don't mind tinkering with hardware & software a little bit.

 

Enjoy,

RD

I notice on your Github you don't include the original Atari 800, just the XL, have you tried it on the original? I have one I can try it on if not.

Link to comment
Share on other sites

The current firmware for the SDrive does not require a diode any more, one less thing to solder up when building, so I was just curious.

 

 

The UNO2SIO board replaces the diode because the diode didn't work as expected. That probably means that this board is eventually going to have a v2 :-)

  • Like 1
Link to comment
Share on other sites

 

 

The UNO2SIO board replaces the diode because the diode didn't work as expected. That probably means that this board is eventually going to have a v2 :-)

 

I thought I read something in the "issues" on Github that there was something done in the software that allowed for the removal of the diode at one point, as well as your awesome board. It all burs together at some point. lol

Edited by Gavin1968
Link to comment
Share on other sites

I did use gorilla tape to isolate level shifter and connections, but I agree that overall I did a poor job. Wires could be shorter too. Let's consider this proof of concept. Next version should come out better.

 

BTW, this super cap with diodes isn't strictly necessary. I use it because I wanted to eliminate separate power supply for RPi (after all SIO provides +5V). To let RPi survive Atari power on/off cycle I added super capacitor:

attachicon.gifsupercap-rpi-zero-2.png

 

I didn't know about SDrive when I started this project. I came across SIO2BSD first. Advantages? Simplicity and UI. With RPi Zero W I can (or have to in this case) use my phone/tablet to select programs. I think this beats tiny display built into SDrive.

 

It also helps to have good software readily available. It turns out Hias created atariserver that can be enhanced to become a web server for UI. It handles communication duties and transmission runs at turbo speed too.

Here's GitHub page: https://github.com/mikekov/AtariServer

 

This board by Mr Robot looks positively awesome.

 

Thanks for all your comments.

RD

 

I do have a question about the external power, I know for me, with the SDrives, the newer Atari computers provide power fast enough to power the Arduino before the computer boots, but the original A800 does not. So if you want to boot to the SDrive on the 800/400 you must supply external power. Have you tested this on an 800 using SIO power?

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