Using an SD card for patches

anyone tried using the SD card for patch storage… and thus free up a USB port.

what Im thinking is pretty simple:

  • bigger SD card, which is fast (8gb)
  • create the first 4gb partition for the OS, which will still be mount ro by default
  • copy the organelle image to this partition. (Ive already got a backup :wink: )
  • create a second partition, mounted as rw, and use as an alternative to /usbdrive
    (Ive already abstracted this in OrganelleUI, so easy to point it somewhere else)

Id assume, if anything, I’ll get better performance than a USB stick.

I recognise SD cards are not designed to be written to forever, but its unlikely to fail < 2 years, and Im happy to then replace it.
(I sync my patches from the mac anyway, so its all backed up)

thoughts? anyone tried this?

@oweno / @chrisk , Im guessing the reason you didn’t do this by default, was because its much easier for users to move the USB stick to/from a PC/Mac to copy patches etc? or is there another reason?

4 Likes

I have two organelles so i am willing to try it
if we get good R/W times it might solve alot of people’s desires for longer buffers

We went with patches on the USB to keep the root filesystem read-only and provide simple way to load patches. But lately been considering using two filesystems like you mention. I don’t know about performance being better, I didn’t compare, but it would be cool to have the patches internal. The question still remains how to get them onto the device in the first place. swapping the SD card is even more of a pain… one idea is a System script that connects to WiFi then hosts a small web server on the Organelle with an easy drag and drop file manager to add and manage the patches. another is USB slave connection so Organelle just shows up as disk when connected to computer (but this would require new hardware)

By the way you can also download the Organelle SD disk images here:

http://thepeacetreaty.org/organelle/diskimages/

and burn it with this (or the dd command):

3 Likes

ok, so I have this working :slight_smile:

you will need a new version of mother to be able to use the sdcard for patches, which I now have, and will release a beta ‘shortly’… also the instructions below are for those happy with linux, Id hope later we will be able to script these for everyone, to just fire off from the organelle lcd (like the upgrading of OS)

steps required:
a) get a bigger SD card, make sure its fast - Ive used a 32GB I had lying around
(actually smaller are usually faster, so ideally use the smallest that has enough space for you - remember organelle os is currently using 4gb, so an 8gb card will mean you have 4gb for patches/samples etc)
b) install the Organelle image on this card, I use DD, but there are lots of tools that can do this, as @oweno mentioned
c) take the 4gb card out from your organelle and insert your new one
(this is cool, means you have a backup if this goes wrong :wink: )
d) power up organelle, all should be as before.

e) you now need to log into organelle using ssh , then do the following

run disk to create a new primary partition, you can accept the defaults

fdisk /dev/mmcblk0
   
n
p
w

then you need to reboot

reboot

you now need to create a filesystem on the new partition

mkfs.ext4 /dev/mmcblk0p2

now we need to check it works, so we need to create a mount point, which means we need to write to the main disk
by mounting it… then we mount it to check it works

~/scripts/remount-rw.sh
mkdir /sdcard

mount /dev/mmcblk0p2 /sdcard

ok, you can go to the /sdcard and check you can write files there ok

now we want it to mount automatically on startup, so alter fstab

vi /etc/fstab
/dev/mmcblk0p2 /sdcard  ext4 defaults,noatime 0 0

thats it reboot organelle, copy over your patches from your usb card,
then assuming your using my new mother, you can shutdown your organelle, remove the usbcard, and now organelle will use your sdcard :slight_smile:

dev note:.

  • we could script the above, so could be done without logging into organelle

  • @oweno - I think arch linux is using < ~2gb , so perhaps, we could even repartition the supplied sdcard, to give 2gb for patches? … this would be cool, so you know everyone is using sdcard… not sure how practical this is!?

  • Ive changed ‘mother’, so that if /usbdrive/Patches is present, it will use that, if not then it will look for /sdcard/Patches… if thats not present it will assume /usbdrive/Patches (i.e. to give current behaviour)
    this works well I think, since it means you can use the usb drive to ‘override’ the internal patches

Im also planning to do the same behaviour for system/scripts e.g. priority is /usbdrive/system → /sdcard/system → /root.

yes, I think this is a great idea… generally have a small web server on organelle, would open up a few options for configuring organelle etc…

also I think WiFi is invaluable , worth the USB slot , mine is so far permanently plugged in.
though I think its important, that we ensure we dont assume its presence when ‘playing organelle’ (e.g. not good idea at gigs ;)) - but great for ‘maintenance’

we probably will also need a ‘backup’ plan, in case the user doesn’t have access to wifi, or wifi network.
perhaps we have another option to do an rsync between /usbdrive and /sdcard
(this is useful for ‘backups’ too!)
this would work quite well, since when you plug in the usb stick, organelle will use patches off it (in preference to sdcard),
so then you to the ‘sync’ option, eject the usbstick… and now you’d be using the sdcard version.
(so users can view it as ‘transferring to internal memory’, which I think is an easy concept to grasp)

3 Likes

Sounds cool. Most of this can be prototyped right now (as you have been doing). And the “sync to internal SD” could be accomplished as a System script. Probably you already know this, but for others: if you create a System folder on the USB, then you put a folder with a script named run.sh, it will show up in the Organelle System menu. (errr still working on documenting these v2.1 features). We have a couple scripts we use here to connect to WiFi and view IP address for example:

So making a script that copies patches to SD card would be rather easy. unfortunately rsync is not installed I don’t think…

On the ETC we use CherryPy for the web based editing interface, but that is mostly because the rest of ETC is written in Python. maybe there are other slimmed down webserver options?

1 Like

I’m having difficulty partitioning the SDcard on Mac. Is there a tool i need to create the partitions? Disk Utility has “partition” greyed out

okay
With a little finesse i got a 5 GB Partition /ORGANELLE and a 10.x GB Partition /Patches on a new 16 GB SD Ultra it’s fast and made for DSLR and video so it should be nice for patches.

I grabbed Etcher after downloading the 2.1 image and I’m etching it on there as we speak

Must i SSH in or can i just log in normally?
I would love a little handholding through this

Patrick

All good here
Thanks!

Thanks for the info on creating another partition on the SD card! You mention that it is necessary to ssh into the Organelle. Is there any reason these commands couldn’t be typed from the console after connecting an HDMI monitor and keyboard/mouse?

You can just use the HDMI and keyboard, no need to ssh.

Attempting this but stuck here, how do I save after altering fstab?

Sorry, worked it out and now rocking a USB-less Organelle experience! :slight_smile:

1 Like

hi @ghostly606!

how did you save and exit?:thinking:

:wq

Thanks YouTube!

1 Like

You need an ESC before any command usually, even if you don’t it’s worth pressing ESC so 4 keystrokes:

ESC : w q

1 Like

Hi All!

Thanks to @thetechnobear for this - I think I got the SD card partitioned.
In order to move my files from usb to SD card, do I have to use the Terminal for that?
If so - a little handholding would be much appreciated.

Also - could you possibly post a link to the new “mother” that you mention that defaults to SD card unless USB is present.

also I’m on v3.0 - on mac osx (in case that’s relevant)

Thanks so much!

The “switch” between USB drive to sd card is automatic/seemless; if the first is preset it goes from there, if “Storage”>eject, sdcard shows up (works from there on)

Copy files over…I did it with with WiFi (cyber duck, FileZilla, sftp) sorry but networks not my strong.

@TheDeadFarmer edit: with HDMI+mouse+keyboard you can copy from “old” USB stick to SD Card (that is the partition holding PATCHES)

Also the web file manager suppose the sdcard, assuming you have WiFi stick , which is highly recommended

In the web file manager I can click “SD card” but when I go to create a folder or paste something that I’ve copied from USB - it doesn’t show up. Wondering if something went wrong when I partitioned.

I just now installed the “organelle_file_manager” from this thread (Organelle Web File Manager) but am wondering if that’s unnecessary after 3.0 and if I should remove it. Using this I don’t even see SD Card showing up as a button or otherwise.

I do have the WiFi stick, it’s the canakit one - works great no problems there.

Thanks for the reply and also @keymanpal ty very much!

yes, this is no longer required, OS 3.0 has the file manager built-in