Giter Site home page Giter Site logo

moppy2's Introduction

Moppy2

The evolution of the Musical flOPPY controller.

Everything* you need to make your own musical floppy drives!

The wiki has additional information, instructions for getting started, and some other helpful info. If you can't find what you're looking for and have a question or run into trouble and need help just use those links to create a new issue.

Have fun!

* Okay, not everything; you'll need to provide all the hardware.


If you've been here before but you're confused by all the newness, the original MoppyClassic has still been preserved for posterity, but will no longer receive any updates.

moppy2's People

Contributors

dominikpalo avatar lothean avatar muller2002 avatar sammy1am avatar tobiasfrck avatar zwoca avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

moppy2's Issues

Using Moppy Control GUI

Hello, I've managed to sort of get some music going with the Moppy control GUI, but I don't really understand whats its doing, sometimes it doesn't really seem to work.

  1. i) How does MIDI In work? I have loopMIDI set up and have set the MIDI In option to my midi channel, in my DAW I am outputting live midi to that same channel, but I'm not getting anything out of the FDDs.
    ii) I noticed the MIDI In option is greyed out unless you load a file first, why is that?

  2. i) How can I specify which midi channel is played on which device? When I set the "One Device per Channel" option, it generally tends to not work at all, but I do get results if I set it to Device 1.
    ii) in a multi track midi file, I'm not really sure whats going on, because there are channels and instruments, are they different things? How would I go about specifically setting which instrument is played on which FDD?
    iii) What is a sub Address?

  3. I think I just generally don't understand the Mapper at all, is there any documentation on it anywhere? Ideally I would like to use MIDI in feature and understand how to target specidic FFD with specific channel from my daw.

Regardless of all this I've still been having fun with some random files, thank you for sharing this great tool set!

Best,
Nick

Pass Velocity Data

To support volume control (where applicable), velocity data should be passed in the MoppyMessages along with the note number.

No Startup Sound on Initialization

Hey, wondering if you could help. When I upload the sketch there's no startup sound. The stepper is working as I tested it by wiring pins directly to ground first. I'm using an UNO Mega 2560. I'm not sure where to go from here. Also, the .bat file closes immediately after opening so I'm unable to try the GUI to load a MIDI file.

Toccata and Fugue in D Minor midi?

hi sir, my name is tof from belgium, i m a music lover and i love to plug electronics to stuff and make them sound! i followed your tutorial and i have now a bunch of floppy who can sings all together. i m using your soft , midi yoke as a bridge and synthesia to play the songs, the result is really cool; thanks for your tutorial and sharing! i would like to ask you, if you agree, the midi file of Toccata and Fugue in D Minor you played on youtube if you dont mind. i reallly like to see it on my floppy orchestra . thanks a lot for your job, tof.

Round Robin

Hello, please tell me whether it is possible to make raund robin work with 4 FDD instead of 8?

Speculative questions

Hi there, I'm planning to to put together a few moppys when I get back home from holiday, I just read through the instructions and it seems quite straightforward, despite me being very Rusty with Arduino and not good at electronics. I have some questions I wanted to ask before I get started:

  1. i) Does every floppy need to have a ground pin connected to the Arduino's ground pin?
    ii) You mentioned every odd pin is a ground pin on the floppy, so any one of them would be ok to use?
  2. If we are only connecting step and direction pins, how is the head end/start limit considered? How does the Arduino know where the head position is? I haven't looked at the code and I don't know anything about floppy drives, so I don't know if the drive itself automatically will prevent the head from trying to go beyond the limit, is this something I wouldn't need to worry about? How does that work? What happens when the head reaches start/end of the track?

Thanks in advance! I'm excited to try this project!
Nick

Apple Floppies

I’ve found some old apple floppies and they look like they have serial wires and pinnouts. I found some diagrams showing their is a pwm pin but no direction pin. is their a way anyone else knows how to drive them with moppy. (I’d rater not just drive the pwm signal to the motor as that just plays like as a speaker )

Problem with >11 floppies + Question

Hello

There is a problem with the file FloppyDrives.cpp :
Only 11 floppies are supported, 16 are not because of implementation holes.

I fixed everything :
ThomasCyrix.com/files/FloppyDrives.cpp

Also, I can't find a way to simply select or unselected which channel will be active when playing the music.
It was a good feature in the 1st version of Moppy, is an update to add some easy and fast interface about this planned ?

Thanks for your work

Floppy drives current

Hi man!
I really happy for your work here. I'm using Moppy since about a year, and the first version was pretty awesome!
Now I'm gonna upgrade my setup with other floppys and then I tryed Moppy 2.0.1 for see what's new.
But I have a lot of trubles, mainly because after trying 3 kinds of ATX power supplyes and 3 different floppy readers (and also after changing arduino mega to uno and trying different wirings), seems like the PSU can't provide the current for one floppy!

Yes, it's ridicolous, because two months ago I played with 8 floppy drives and a 300W PSU (with 5A on the 5V rail, that's the only voltage I used all the time).

I don't know why without load the PSU has 5.05V, and if I connect the floppy drive and play a sample song sometimes it plays for some seconds (with the green light that changes brightness on every note, that's mean low power supplied) and sometimes it doesen't play at all, but the green light stays at low brightness and the voltage drops to 4.48V!
I don't know what current is flowing, because I my ammeter won't work...

But the question is: Why with Moppy 1 all works nice and now seems like I need a 1200W PSU for hear something?

I tried all different stuff, wiring (like connect other GND pins), but as you read nothing seems work fine.... Maybe it's a my mistake?
Greetings!

Multiple arduino controllers

Is using multiple arduinio controllers possible, i have 9 drives and 2 unos, if i set the device address of one to 0x02, will it work because it is not working for me

Add Track info to MIDIMessages

Adding track info to MidiMessages would allow message routing based on tracks instead of channels (so that you could compose MIDI files for more than 16 individual instruments). However the current implementation of RealTimeSequencer and MidiMessage doesn't pass any track number information via the MidiMessage (i.e. once the message has reached the sequencer we have no idea which track it came from).

Adding support is technically easy (add a trackNumber field to the MidiMessage class and populate it in the RealTimeSequencer), but practically difficult as it would mean needing to reimplement the RealTimeSequencer and the current source license isn't compatible with the goals here.

If anyone happens to know of an alternative implementation of a MIDI sequencer in Java (ideally licensed under the Apache or MIT licences) it might be a lot easier to leverage that code to replace the default Java sequencer.

A3967 support

Hi,
I want to use an unipolar stepper motor in a scanner. I have the stepper connected to an EasyDriver (4.4) but i have no idea on how to make the instrument code. Has anyone done this or are there just some small adjustments to the L298N code?

Thanks in advance

Tobias

(btw. I like the new version of moppy; Can you add to the wiki to open the .bat file with admin perm. bc i had to do it for it to work)

Disable/enable reset after track ends

Hey,
Don't know about you, but I think the auto reset lacks a "checkbox" feature, or like in the first Moppy, with delay and all
Serisously, that's sooooo annoying, it messes up all my audio recordings and my scanners positions (since the L298N does not wind back the scanner to the beginning when resetting for obvious reasons)
Could someone consider making this? I could try but I'm bad at Java and I'd rather not mess up the clean code ;)

Allow toggle of head-movement via MIDI message

Allow toggling of floppy drive head movement via a MIDI message. In two parts:

  • A MoppyMessage command to set the maxPosition value for a subAddress (useful also for remote configuration)
  • A MIDI message to trigger the above message. Suggest using the "Control Change" message type. This message would be interpreted to set the maxPosition either to "2" (which would lock the head in place), or setting maxPosition to... whatever it was before?

Additional note: Setting to "2" would actually cause the head to move back to start and then stay in place, so maybe we need a separate toggle value on the Arduino side.

multi floppy connect with arduino

Hello everybody,
I have a multi sound MIDI file, via Netbeans I want to play, But only one floppy disk works.
Is there anyone who knows what should I do, setting in Netbeans must be changed or there is another alternative?
Thanks

Note Range Limitations

I'm wondering if it is possible to remove the note range limitations on either moppy 2 or moppy classic. I have some instruments that are capable of reaching notes outside the limits, but I'm not really sure how the serializers work so is it a software limit or a hardware limit?

Thanks.

Hard Disk as kick instrument?

Is it possible to use Hard disks with Moppy? I've already used moppy with floppy drives and on youtube I've seen also hdds and printers, but on this repository there's nothing for HDDs. Thanks a lot for your work!

Chords

What is happening with multiple notes at the same time (chords) within a single midi channel? Is there a way to separate these notes over different sub channels?
Thanks -- Chris

On board midi keyboard

I was wondering if it would be possible to add a virtual keyboard inside the program. I figure it would be easier to test the sound of different interments and be more interactive for displays. Also could it be possible to add a playlist feature like the previous moppy drive so that displays do not have to custom midi tracks to play multiple songs.

I cannot open the .bat file

I click to open the .bat file the command line shows up for half second then dissapears and nothing happens. I tried it on my desktop and it opened first try but i want to use my laptop for this project, what could it be?

L298N Support

Hello!
I'd like to contribute and create code for "L298N" H bridges to be compatible but there's no resources to help me... (understanding the arduino code mostly)
Do you plan on adding some ?

Can't get 2.0 to work

Hi,
so I've set up my project with the old Moppy at first due to finding more tutorials about it, now I've switched to 2.0 as it seems it gives me a bit more control. Anyways, I can't seem to get it to work and I don't quite know why.
I can start the batch to get and interact with the UI, no problem. When I select my Arduinos port, the floppies also make a short sound when they reset their head, so they definitely react to it, or at least the Arduino is accepted by the software. I see that in the MoppyConfig there's supposed to be some startup sound? I don't get anything like that.
When I load a midi file (either one of the samplesongs or a selfmade MIDI taht worked with the original Moppy), the floppies do nothing whatsoever. The output via Windows Midi Mapper works flawlessly, though.
I didn't change anything on my setup which worked with the original Moppy project; 5 floppies and an Arduino Uno. I've uploaded the latest Moppy.ino to the Arduino, and I still have the Timerone library installed.

Have I missed anything obvious? Any idea what the problem is? Thanks!

Merge with Moppy 1?

With all of the brouhaha over what to do with the old repository and how to get users to switch over to the 'new' version... have you considered ditching the "Moppy2" repo and just merging the history into the original Moppy repo? I'm not a git expert, but I believe it's possible to do.

5.25" drive heads colliding with head stops

So I've done up a setup, with both 3.5 and 5.25 drives. The 5.25 drive heads bang against their endstops for awhile instead of immediately reversing, causing a grating rattling BRRRRRT in the middle of my song(s). This doesn't happen for the 3.5" drives, and doesn't happen at all on one or two songs.
Am I doing something wrong? The DIR pin is definitely connected, since the drives DO reverse direction, but they're always doing it quite a bit after the head hits the end.

Floppy drive too silent..

Hello, i have a box of 25 floppy disk drives.. but i only finded 4 that actually do a decent sound.
i mean, the others barely emit a sound at all
anyone knows how to fix this?
(All the floppy disk drives are working, the motors work but they barely make any sound at all)

HDD arm as kick drum?

hey, new to github and moppy. is there a pre-made bit of code that I can use to assign MIDI drums to HDD arms? arent MIDI drums on their own channel? thanks.

Issues uploading arduino code

Hi all, just started with musical floppy drive projects, and while following the moppy 2.0 wiki startup guide I downloaded the arduino zip and tried to upload the iso, only to get an undefined loop error, and this error seemingly is only solved by adding a void loop(){} and void setup(){} to the code. Is this necessary or is it something else that I'm doing wrong that needs to be fixed? Thanks in advance

Arduino Mega 2560 with 16 Drives

I have an arduino mega 2560. I have 16 drives connected but can't get all of them to work, only 8 of them work. How can I get this to work?

L298N Nema 17 stepper motors overheating

I'm able to use moppy on the stepper motors but I'm wanting to know if there's a way of preventing the motors from overheating when idle? I'm having to disconnect them after just 10 mins since the motors get too hot to touch.

Motor Shield

Hello,

is it possible to use the original Arduino motorshield instead of the L298N?
I'm a little bit confused about the schematic of the motorshield, because its not wired like the inputs in the L298N.h

how to connected the wire of the floppy

I have got the floppy worked and can hear the sound ,however I can not see the light blinking,could you please show me how the wire connected,and the PCB 、SCH file,Thanks very much

Connect more than one driver ?

Hello !
I'm stuck in the same situation since a few week ago.
I connect all the driver to the Arduino Card like it says in the project (first driver : on 2&3 pin, seconde driver: on 4&5 etc..) and there all wired with an ATX Alimentation..

With the Java interface, are we must connect each driver on different output or a single output (com3 for exemple ARDUINO Card) ?

Two drivers are connect to my project but only once work..

Thanks for helping !

Gus

Assigning specific channels to different devices?

Ok... I must admit not only is the new layout a bit confusing but I have several set up issues.

  1. I have 2 Arduinos connected to one system.

  2. The built in Arduino Leonardo is assigned to 6 floppy drives on comm port 5.

  3. The external Arduino uno is assigned to 4 nema 17 l298n stepper motors on comm port 6.

  4. Drums are played via stereo speakers.

The interface makes it hard to assign the channels to them. Any ideas how I can solve this?

Setting up HDD as a kick drum

Would I need to alter the code and how would I wire it to the HDD from the Arduino? Do I wire straight to the hard drive motor?

Can't find a .bat or executable in the moppy2.0-master?

Just downloaded the moppy 2.0 files from github, and even after having done so twice there seems to be no .bat or executable file in any of the folders to get it started? Have used moppy before but might just be missing something obvious here

(Error) Can't upload Moppy.ino to Arduino Uno clone

Hello guys, almost 2 days im trying to make it work without success....I followed everything as described, the floppy is wired to the arduino the right way,it makes some sounds when i powerup the arduino but when i try to Verify and Upload the Moppy.ino in the ArduinoIDE it gives me the following error:

PS. if i select Arduino/Genuino Uno from the Boards menu, it Verifies the code but can't upload it to my "WAVGAT UNO R3" . My "WAVGAT UNO R3" works just fine with other codes(used it for lot of projects without troubles).
error

ARDUINOIDE ERROR:

Arduino: 1.8.8 (Windows 10), Board: "WAVGAT UNO R3"

Warning: platform.txt from core 'Arduino AVR Boards' contains deprecated recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{build.path}/{archive_file}" "{object_file}", automatically converted to recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{archive_file_path}" "{object_file}". Consider upgrading this core.
sketch\src\MoppyNetworks\MoppySerial.cpp: In member function 'void MoppySerial::readMessages()':

sketch\src\MoppyNetworks\MoppySerial.cpp:75:40: error: invalid conversion from 'uint8_t* {aka unsigned char*}' to 'char*' [-fpermissive]

     Serial.readBytes(messageBuffer + 4, messageBuffer[3]);

                                    ^

In file included from C:\Users\E D\Documents\Arduino\hardware\WAV\avr\cores\lgt8f/HardwareSerial.h:28:0,

             from C:\Users\E D\Documents\Arduino\hardware\WAV\avr\cores\lgt8f/Arduino.h:205,

             from c:\users\edeffd~1\appdata\local\temp\arduino_build_317588\sketch\src\moppynetworks\moppyserial.h:10,

             from sketch\src\MoppyNetworks\MoppySerial.cpp:1:

C:\Users\E D\Documents\Arduino\hardware\WAV\avr\cores\lgt8f/Stream.h:76:10: note: initializing argument 1 of 'size_t Stream::readBytes(char*, size_t)'

size_t readBytes( char *buffer, size_t length); // read chars from stream into buffer

      ^

exit status 1
Error compiling for board WAVGAT UNO R3.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

Compatibility with Arduino Pro Micro

Good day,
I was looking through my stuff and found I only have an Arduino Pro Micro, I was wondering if it would have the correct specs to work with moppy2?
It says its 5v, 16mhz, does that mean it would be using 5v TTL?
And since its so small, I'm wondering if the rest of the specs might be limiting in some way?
I'll try it out since I have it here, but wanted to check just in case.
Thanks!

Connections

I have a question about where i can connect all the floppys, i know the pinout of the floppy itself but where i do connect its pinout to the arduino pins, and it would be good to know all the pins that i can connect in a arduino uno,

MIDI Input and Output support

Add the ability for MoppyControl to accept MIDI events from an MIDI In source instead of a midi file, and the ability to add MIDI Out ports as a "device". (This might require converting MoppyMessages back into MIDI Messages since much of the mapping and routing relies on the MoppyMessage format).

I don't understand the steps

I am doing this as a project due Friday and I can't turn it in late because the quarter is ending. I can't seem to get any of this to work. SOMEONE PLEASE HELP!

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.