RaSCSI Version 21.10 Is released!!

eric

Administrator
Staff member
Sep 2, 2021
942
1,542
93
MN
scsi.blue
I've been playing around with it and it's nothing short of amazing! AFP with DDP setup in seconds. Networking wifi or eth is trivial. Just a ton of polish and new features!

Also a pre-made image is avalible on this page, just flash it and you're done - or upgrade your current one by running easy install again.


Markdown (GitHub flavored):
## RaSCSI Capabilities
* Add Daynaport SCSI/Link Ethernet adapter functionality
* WLAN support for the Daynaport network adapter
* Removable media drive support
* Support for DVD images
* Support for CD-ROM drives with 512 bytes per sector
* Support for generic MO drives (not just the Sharp X68000 standard configurations)
* Support for up to 32 SCSI LUNs (Logical Units)
* Built-in creating, renaming and copying of image files
* Configurable device identifier (vendor, product, revision)
* Configurable sector sizes, depending on the device (256, 512, 1024, 2048, 4096 bytes)
* Configurable default folder for image files
* Dynamically configurable reserved device IDs, typically used for the SCSI initiator ID
* More flexible handling of device capacities
* Made RaSCSI more tolerant of odd image file sizes, ignoring trailing bytes
* Device files (/dev/*) can be used as image files
* Secure shutdown of RaSCSI by detaching all devices before terminating

## rasctl Capabilities
* Several new options added
  * -C FILENAME:FILESIZE Create an image file in the default image folder
  * -D     Detach all devices.
  * -E FILENAME Display information on an image file.
  * -F IMAGE_FOLDER Set the default image folder.
  * -I     Gets the list of reserved device IDs.
  * -L LOG_LEVEL Set the rascsi log level
  * -h HOST The rascsi host to connect to, default is 'localhost'.
  * -e     List all images files in the default image folder.
  * -N     Lists all available network interfaces provided that they are up.
  * -O     Display the available rascsi server log levels and the current log level.
  * -m     List all file extensions recognized by  RaSCSI  and  the  device types they map to.
  * -R CURRENT_NAME:NEW_NAME Rename an image file in the default image folder.
  * -p PORT The rascsi port to connect to, default is 6868.
  * -r RESERVED_IDS Comma-separated list of IDs to reserve.
  * -s     Display  server-side settings like available images or supported device types.
  * -T     Display all device types and their properties.
  * -v     Display the rascsi server version.
  * -V     Display the rasctl version.
  * -X     Shut down the rascsi process.
  * -d FILENAME Delete an image file in the default image folder.
  * -x CURRENT_NAME:NEW_NAME Copy an image file in the default image folder.
  * -b BLOCK_SIZE Specify a custom block size for the drive to attach.
  * -n VENDOR:PRODUCT:REVISION The INQUIRY data for the device that is presented to the bus.
* Options with new functionality
  * -f Now takes parameters for certain device types, f.e. the Daynaport adapter
  * -t Now takes 'rm' for Removable devices, and 'daynaport' for the Ethernet adapter
  * -c Now takes two new commands: u(nprotect) and s(how)
  * -u Now takes unit number up to 31 (previously 0-1)
* rasctl also runs on an x86 Linux and can connect to the RaSCSI server on the Raspberry Pi
* Added code for a RASCTL.X native app for the Sharp X68000 (from RaSCSI 1.52 by GIMONS)

## RaSCSI Web UI
* Automatic loading of a **default** configuration upon startup, eliminating the need to hack rascsi.service for default configurations
* Flexible Daynaport network adapter configuration
* Real-time file uploading using the Dropzone library
* Bumped max size of uploaded files to 4GB from 2GB
* Validation of file to upload **before** transferring
* Drive properties files that store vendor/product and block size information for easy management of bespoke drives
* A wizard for creating named drive images and properties files, with profiles for UNIX workstations and Macs
* The ability to select a device type when attaching images that RaSCSI failed to autodetect the type for
* Support for attaching up to 32 LUNs per SCSI ID
* Allow non-standard image sizes to be attached, but warn about the file size discrepancy
* A more informative table of attached devices
* The ability to display detailed information about attached devices
* The ability to unzip individual files within a zip archive
* AppleShare integration for easy downloading of files into a shared directory
* Made logging level configurable through the Web UI
* More flexible log viewer in the Web UI
* Display current RaSCSI version in footer
* Broadly improved help text, hidden under expandable blocks to reduce clutter
* Thorough form input validation
* Preventing destructive actions, such as deleting or overwriting images in use
* Significantly improved error handling and verbosity of action response messages
* IPv6 support
* Mobile style sheet
* Computer and smartphone favicons
* Sundry fixes that caused the nginx web server to fail to start in certain environments
* Bumped several Python library versions

## OLED Screen
* Virtualized Python runtime environment with venv
* Start script and systemd service configuration
* Support for displaying more than 4 lines of information, through a scrolling routine
* Optimized the information shown on screen for better usability
* Show RaSCSI version instead of system time
* Support for configurable screen orientation (0 or 180 degrees)
* Introduced the *Type Writer* font by Mandy Smith for improved legibility
* Startup and shutdown splash screens
* Graceful shutdown and signal handling
* Bumped several Python library versions

## Easyinstall
* Merged and streamlined install/update scripts for RaSCSI and the Web UI
* Better error handling and flexibility running the script in different environment and on local git branches
* Added install script for the OLED Screen software
* Added wired and wireless network configuration scripts for the Daynaport network adapter
* Added a Netatalk installation script for running an AppleShare server in parallel with RaSCSI
* Command line option '-c' to install STANDARD or FULLSPEC versions
* Command line option '-r' to pick the run choice number from the menu non-interactively

## Technical Improvements
* Functionality and stability improvements for Atari ST, UNIX workstations, Apple IIGS, etc.
* Implementation of numerous additional SCSI commands
* Improved compatibility with the current SCSI standard
* Client/Server interface based on Google Protocol Buffers, allowing clients to send commands and receive messages from the RaSCSI backend
* All clients (rasctl, RaSCSI Web UI, OLED monitor) are using the new architecture for greatly expanded functionality and reliability
* Detailed information on RaSCSI server properties
* Configurable RaSCSI server port
* More concise error messages
* Improved logging and configurable log level
* Improved command validation and error analysis
* Fixed issues with Linux-68k
* Support for 64 bit Raspberry Pi OS and Ubuntu
* Extensive code cleanup, improved object-oriented approaches
* 100% translated source code strings and comments
* Outdated documentation has been updated and moved to wiki (and removed from the repo)
* Restored the rasdump and sasidump tools for dumping physical SCSI/SASI disk images
* Deprecated baremetal support

## Special thanks
Thank you to all the members of the RaSCSI community. A special thanks to:
* @erichelgeson - Thank you for reviewing pull requests, creating the initial sd-card configuration and being a general awesome guy
* @uweseimet - Your updates to the RaSCSI code have made it much more maintainable and understandable
* @rdmark - The web interface has made tremendous improvements since the last release

## New Contributors
* @quentinmit made their first contribution in https://github.com/akuker/RASCSI/pull/88
* @phrax0 made their first contribution in https://github.com/akuker/RASCSI/pull/86
* @uweseimet made their first contribution in https://github.com/akuker/RASCSI/pull/110
* @rdmark made their first contribution in https://github.com/akuker/RASCSI/pull/205
* @dburr made their first contribution in https://github.com/akuker/RASCSI/pull/230
* @No0ne made their first contribution in https://github.com/akuker/RASCSI/pull/241
* @nsafran1217 made their first contribution in https://github.com/akuker/RASCSI/pull/280
* @karrots made their first contribution in https://github.com/akuker/RASCSI/pull/297
* @mynameistroy made their first contribution in https://github.com/akuker/RASCSI/pull/367
* @Pacjunk made their first contribution in https://github.com/akuker/RASCSI/pull/372
* @hsiboy made their first contribution in https://github.com/akuker/RASCSI/pull/394

**Full Changelog**: https://github.com/akuker/RASCSI/compare/v20.12.0...v21.10.01
 
  • Like
Reactions: Patrick

RetroViator

Tinkerer
Oct 30, 2021
83
104
33
retroviator.com
That's great! I have a kit waiting for me on my bench. I think I'll pair it with the new Pi Zero 2 W.

I looked on the Open Retro SCSI Discord, and no one was talking about hardware changes, so I assume my incomplete kit is capable of taking advantage of the new goodness. (?)
 

Byte Knight

Tinkerer
Oct 21, 2021
99
76
18
That would be what I'd expect, you should be able to login (pi/raspberry) or browse to the web ui.
Thanks - I needed for the login to figure out the IP address of my Pi. All was going well until I tried unzipping one of the disk images and accidentally hit "unzip all", and now I can't connect to the web UI. Reinstalling now...
 
Last edited:

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
Thanks - I needed for the login to figure out the IP address of my Pi. All was going well until I tried unzipping one of the disk images, and now I can't connect to the web UI. Reinstalling now...

How much disk space did you have left when you started the unzip, and roughly how large was the file(s) to unzip? The one thing I can imagine would bring down the Web UI like this is running out of disk space... (Although it could be something else too of course; I just can't think of anything.)

If you run into the problem again, please post the output from:
sudo journalctl -n 100
BTW, if you get the OLED screen for your RaSCSI it will print the Pi's ip address on the screen for your convenience once it has started up fully. :)
 

Byte Knight

Tinkerer
Oct 21, 2021
99
76
18
How much disk space did you have left when you started the unzip, and roughly how large was the file(s) to unzip? The one thing I can imagine would bring down the Web UI like this is running out of disk space... (Although it could be something else too of course; I just can't think of anything.)

If you run into the problem again, please post the output from:

BTW, if you get the OLED screen for your RaSCSI it will print the Pi's ip address on the screen for your convenience once it has started up fully. :)
It's a 32 GB microSD, so I don't think it was that. I accidentally hit "unzip all" and may have done a reboot before it finished unzipping all the files...

I also permanently brought down the web UI by unmounting the included System 7.5.3 HD image. Here's the output from journalctl:

IMG_5296.jpg IMG_5297.jpg
 

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
It's a 32 GB microSD, so I don't think it was that. I accidentally hit "unzip all" and may have done a reboot before it finished unzipping all the files...

I also permanently brought down the web UI by unmounting the included System 7.5.3 HD image. Here's the output from journalctl:

View attachment 452 View attachment 453
These logs don't show much RaSCSI activity apart from launching, so hard to say exactly what's going wrong I'm afraid.
The one thing that stands out is a "under-voltage" warning, which could explain why RaSCSI isn't able to run reliably. Are you using a power supply rated for at least 2.5 amps?
 

Byte Knight

Tinkerer
Oct 21, 2021
99
76
18
These logs don't show much RaSCSI activity apart from launching, so hard to say exactly what's going wrong I'm afraid.
The one thing that stands out is a "under-voltage" warning, which could explain why RaSCSI isn't able to run reliably. Are you using a power supply rated for at least 2.5 amps?
Tried it with my 2.5A CanaKit power supply and same result - simply unmounting one of the default HD images brings the web UI down. This is with the SCSI to Ethernet adapter mounted in slot 6 and HD image in slot 5.
 

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
Tried it with my 2.5A CanaKit power supply and same result - simply unmounting one of the default HD images brings the web UI down. This is with the SCSI to Ethernet adapter mounted in slot 6 and HD image in slot 5.
When the Web UI goes down, are you able to otherwise use the network interface(s) on the Pi, say over ssh? The one suspicious message near the end there is about how the IPv6 address for eth0 is unreachable, which seems to indicate that there's something wrong with the networking, triggered when the rascsi_bridge and ras0 interfaces are brought up by RaSCSI for the DaynaPort adapter.

There are two troubleshooting venues that I can think of: First, have you already ran either of the network forwarding configuration scripts in easyinstall.sh? And if so, which one (wired or wireless), or both? If not, please run the one that's appropriate for your setup and see if that makes a difference.
Secondly, if your Pi has more than one network interface (e.g. wlan0 in addition to eth0) you can try to disable one of them. See instructions on RaSCSI wiki.

Anyhow, since this troubleshooting thread is getting quite long, I suggest you come over to our Discord channel for some synchronous troubleshooting.
 

nottomhanks

Tinkerer
Oct 31, 2021
119
51
28
Can you fit the RaSCSI with the Pi Zero inside of an SE/30 or a Color Classic? I’d love to have an SD and networking solution all in one.
 

rdmark

Moderator
Staff member
Oct 3, 2021
164
230
43
Can you fit the RaSCSI with the Pi Zero inside of an SE/30 or a Color Classic? I’d love to have an SD and networking solution all in one.
Yes, in the SE/30 for sure, and most likely the CC too (I just haven't seen anyone do it yet) as long as you find a good way to secure it in place in there.
@PotatoFi prints and sells brackets for the SE + SE/30 to use with full-sized Pis. Something similar can be done for the Zero for sure.
 

T-Man

Tinkerer
Oct 30, 2021
35
27
18
Yes; nice update; took a while BUT using a HEADLESS PI ZERO complicated it. First flashed the image from the above GitHub sight to the SD card using "Raspberry Pi Imager" (use last option "use custom"). Used notepad on a windows machine to make an empty text file named "ssh" and placed in top directory on card then made another text file named "wpa_supplicant.conf" copy and pasted:

country=US
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1

network={
scan_ssid=1
ssid="your_wifi_ssid"
psk="your_wifi_password"
}

into it (editing the name of your network and password into to the right spot) and placed in top directory on the card. I couldn't get it to work with textedit on MacOS.

Then put the card into the Pi Zero and turned it on.Then looked for a new device on my network for an ip address.

Then went to terminal on my mac and Typed "ssh [email protected]" where all of the XXX is your IP address. Change password as recommended with log on. Once this was completed, I was then able to use the Web interface for the RASCSI.

It took a couple of tries; if you erase the card or refresh and start over , terminal sometimes will not let you log in secondary to security preferences and you may have to highlight your home folder on your mac and hold down command and shift and . so you can see hidden folders and delete prior information regarding ssh hosts (I just deleted all files in hidden folder .ssh)

lots of detail here: