------ AM Radio MIDI Player ------ Requirements: an AM/shortwave radio This project plays MIDI music on a nearby AM or shortwave radio (also works with SDRs) 1. Make your browser window as big as possible, and then put the project in full screen mode. 2. Hold your AM or shortwave radio close to your monitor, or the cable going to your monitor if you have one. 3. Slowly tune your radio around through its entire AM and/or shortwave range until you hear the music this project is playing, possibly accompanied by a buzzing sound. 4. Listen, and try out the different modes. Mode 4 should be the highest quality, but it might be quieter. Debugging: - Tune slower so that you are less likely to miss it - Try moving your mouse around the screen quickly, on some computers/monitors this causes the screen to update faster which will produce a better tone. You can also play a video on your screen at the same time, that should have the same effect. - Try holding your radio differently, put it near a different part of your screen, or directly against the cable that connects to your screen. - Try extending your radio's antenna if it has one. - Make sure you are on mode 0, it should produce the loudest (but not the best quality) sound. - If you pick it up one one frequency but it's not great, try multiples of that frequency (or half of it) - Try using a shortwave radio - Be patient Custom Music: If you want to play different MIDI music through this project, use a converter like https://emn178.github.io/online-tools/hex_encode_file.html to convert your .midi/.mid file to hexadecimal (with no spaces), and then click or press space on the project and paste it in, then restart the project. You can also use `xxd -p -c 0 <file.mid>` to convert your MIDI file to hex. If you do not have an AM or Shortwave radio, I highly recommend you get one: - You can easily get an AM+shortwave radio (eg. the Tecsun R-9012) for $15 or less - Shortwave radios are lots of fun, you can listen to number stations from Russia and the like, among many other interesting things. - etc. Comment the laptop/computer/monitor and radio you're using. I'm working on a music editor that will let you write music to play though this project. Most monitors send the pixel data pixel by pixel, row by row over some sort of cable (either internal or external), at a rather high speed. The digital signal on this cable will emit some very small amount of electromagnetic interference, in fact the signal it emits is very similar to analogue television. By changing the color of different rows, you can modulate this signal at a lower, audible frequency that AM and shortwave radios can pick up. There is also often a signal in the VHF band somewhere in the range of 200 MHz to 400 MHz which you could pick up with an SDR (eg. RTL-SDR) if you have one. See https://en.wikipedia.org/wiki/Tempest_(codename) for more information.