SJS-ONE

Posted on July 16th, 2012


Info
Tech Specs
Purchase
Sound Demos
Downloads
Support / Troubleshooting
After-market modifications

SJS-ONE General Informations


SJS-ONE is a software defined 8-bit mono synthesizer with a dual (series) switch-cap filter.

Technically, there is nothing outstanding in the design besides perhaps the very capable MAX261 filter which we are, as far as we know, the only ones to use at this point in a DIY-synthesizer.

But the synthesizer has some interesting history that has certainly colored its development and ultimately its sound. The initial version was developed as an instructional workshop for a synth-event called SyltJam in 2011. The workshop idea was to show people how quickly you can design the basic hardware and software required to produce a platform for versatile audio and music generation.

As it turned out, people liked its sound much more than I had anticipated so we decided to refine the design – which more or less involved adding peripheral components to increase configurability and improve on stability and ESD, ground-mismatch and noise sensitivity while keeping the actual design minimal and simplistic.

Its beginnings are as humble as its production – less than 50 of these have been made available and all parts are hand assembled and hand soldered, while the manual is hand drawn and cases hand painted.

Perhaps the most unique aspect of this synth is the choice of digital platform – the Arduino. We did not want to build something static and opted to keep the Arduino instead of adding an on-board microcontroller. Why? Because this will make it so much easier for you to modify the functionality of the synth firmware provided by us, or to write your own software with a completely unique sound using the vast community support that is available for the Arduino platform. To make everything as simple as we possibly can, we have written a library to provide easy access to all underlying hardware operations. All aspects of the synth can be fully controlled by designing your own custom firmware and we sincerely hope that people will share their firmware in the spirit of the open source and hardware that inspired us to drive this project from idea to final product.

Whether you are a musician looking for a unique sound, a digital electronics/microprocessor enthusiast or an interactive audio designer we are certain you will find this little device to your liking.

Every single synth is unique in its sound due to slight coloring by the simplistic R-2R resistor network that builds the analog waveforms, as well as variations in the filter. Not using a carefully tuned DAC was a deliberate design choice as it emphasizes the individuality that is the backbone of what we at DevSound believe in – and rest assured, despite their differences they all sound equally good!

Explore the demo songs for just a few demonstrations of what the original software is capable of, but don’t forget that there is endless opportunity to redesign the synth to produce any type of output you’d like.

Technical Specifications

 

Host board: Arduino Uno
ATmega328 16MHz
2KB RAM
32KB Flash ROM
Power supply: USB-B 5V DC
2.1mm center-positive barrel 6-12V DC
Output circuitry: 8-bit R-2R ladder DAC
Filter: MAX261
Analog output: ±2.5V signal level (external amplifier required)
Software defined parameters: Waveform
Filter modes
Filter resonance
Filter cutoff
Filter connection (LP, BP, HP)
Filter bypass

Purchase

You can purchase the SJS-ONE from the DevSound Shop.

Sound Demos

 

Demo 1: First ever recorded demo with the Supersaw Software, while it was still under development. A fairly long acid-spirited jam. Single SJS-ONE + some retro drumsamples sequenced in Cubase.
Demo 2: A catchy chip-like tune. Several layers of Supersaw + some generic retro drumsamples recorded in Cubase.
Demo 3: Ambient tune using only the SJS-ONE Supersaw. Delay & reverb added.
Demo 4: 100% SJS-ONE, drumstix & supersaw layered. Delay & reverb added.
Demo 5: A few single shots directly from the drumstix software!
Demo 6: A nice old-school mod-file played by the experimental mod-player firmware.

Downloads

Arduino Library
This goes in your arduino/libraries directory.

SyltFirmware – Drumstix A generic drum & sfx synth
SyltFirmware – Supersaw A supersaw/pulse wave synth
Theese go just about anywhere and open with the Arduino IDE for downloading to your SJS-ONE synthesizer.

All design files, latest software, experiments and doodads are available as a git repository on github.com/stg/SyltJamSynth2011.

• Programmers/editors for Pure Data (free download): DrumstixSupersaw

• Programmers/editors for Max4Live: DrumstixSupersaw

• Template for iPad MIDI Touch app by Audiofreq: miditouch preset for Supersaw

Support / Troubleshooting

Q: This thing only works if I wiggle the PCB around…
A: Check your soldering – half assed solder joints can glitch and mess things up in all sorts of ways. Did you put tape on the USB port to prevent short circuits?

Q: My synthesizer works, but it’s very noisy. What can I do?
A: Don’t use a computer to power the synth, computer USB ports are notoriously noisy. Switching to an external 9V battery or 6-12V power supply via the barrel connector will remedy this problem.

Q: I’m using a mono connector and I only get sound if I pull it half-way out (that’s what she said).
A: Yep. So sorry about that. Rookie mistake. Mono connectors will short audio to ground. The synth won’t break or anything, but you’ll have to switch to a stereo connector. If you absolutely can’t do that, you’ll have to cut a few traces on the board to disconnect the offending channel.

Q: My synthesizer does not work at all – help!
A: In all honesty, it is extremely difficult to troubleshoot a piece of malfunctioning electronics without being able to probe around in it. Therefore we have developed a unique solution for guiding you step-by-step through a professional troubleshooting session. We highly recommend you try it (even if you don’t have a problem with your SJS-ONE because it’s pretty cool)!

The troubleshooter will show you exactly what you should expect at every single point in the circuit. Note that oscilloscopes may display things slightly different or have different settings from those displayed in the troubleshooter. It may be a good idea to have someone who knows oscilloscopes around to help if you are unsure.

• Steps 1 to 4 can be performed with a multimeter (and any firmware)
• After this you have to download the troubleshooting SyltFirmware and reprogram your SJS-ONE using this sketch.
• Then, for step 5 and onward, you will need an oscilloscope! Sorry, a multimeter just won’t cut it, but if you absolutely can not gain access to an oscilloscope, consider trying something like ZelScope.
• If all else fails – send us an email and we will try our best to help you!


Launch the SJS-ONE troubleshooter

After-market modifications

This is a very hack-friendly device – and we do endorse hacking!

In due time, we will try to document a few hacks right here and just to give you an idea of a few modifications that can easily be carried out:

  • Active power filtering (better noise immunity, improved noise floor)
  • DAC replacement (well, why not – everyone else is doing it!)
  • External audio input (use the SJS-ONE as a midi-programmable filter)
  • Filter series/parallel switch (mechanical – very easy! or via software)
  • Integration with analog modular synths

Licence

The hardware is licensed under:
Creative Commons Attribution-NonCommercial-ShareAlike 3.0 Unported License.

Creative Commons License

The software is licensed under: GNU Public License.

18 Responses to “SJS-ONE”

  1. mr fix-its Says:

    The possessive form of “it” is “its” (no apostrophe).
    It’s = it is

  2. Roni Says:

    What the last guy said. Please. Humour us.

  3. SJS-ONE – new 8-bit mono synthesizer : Steelberry Clones Says:

    [...] Link: http://devsound.se/2012/sjs-one [...]

  4. stg Says:

    wish = command… stuf

  5. Ben Says:

    Can the SJS-One be used with an Arduino Duemilanove (ATmega328) board? Without having dug very far, I get the impression that the main difference between the UNO and the Duemilanove lies in the USB-serial chip used.

  6. Tom K Says:

    As a more generic question, will this shield work with any shield compatible Arduino/Freeduino? Don’t see why it shouldn’t. The Diavolino :

    http://evilmadscience.com/productsmenu/tinykitlist/180

    is a nice, inexpensive ($12) shield compatible Arduino clone.

  7. Pakir Says:

    We’ve only tested it with the Uno, but it might work with other clones.
    Give us a few days, and we’ll have a more concrete answer…

  8. Pakir Says:

    I just testad it with a Diecimila with an ATMEGA168, and it worked flawless…
    It should work with any Uno or Diecimila compatible clone as well.

  9. Marc Nostromo Says:

    We just soldered it and ran it on a Diecimila 168 with no problem. Seems to work but I’m confused about the filter settings. Would it be possible to get the current CC mapping for the mode parameter ?

    All in all a general description of the filter disposition would be awesome because I don’t feel like reading IC spec sheets to play with an instrument :)

    Looking forward to dive in !
    /M

  10. Marc Nostromo Says:

    Also, does it stack moar waves in mono mode ?

  11. Pakir Says:

    If you’re looking for the midi-cc’s, they’re to be found at github:

    https://github.com/stg/SyltJamSynth2011/tree/master/arduino-sketches/supersaw_sylt
    and
    https://github.com/stg/SyltJamSynth2011/tree/master/arduino-sketches/drumstix

    Short answer: Modes change at intervals of 22, that is:
    Low pass: 0-21
    Phat low pass: 22-43
    Band pass: 23-65
    Phat band pass: 66-87
    High pass: 88-109
    All pass (phaser): 110-127

    For a clear overview of all parameters, download the programmers for PureData or Max4Live (programmer for VVVV might be done soon).

    Best of luck to you Marc! We’d love to hear any sounds you get from the synth, or any hacks/mods you come up with! :D

    …Does it stack more waves in mono mode? No, don’t think so.. Not at the moment. Might be something for you to try your hands at? ;)

  12. Marc Nostromo Says:

    Thanks for the information, I’ll work from there and let you guys what I might end up with !

  13. Audiofreq Says:

    Here’s an SJS-One MIDI Touch template for iPad. It controls all CC#’s listed in the SJS-One MIDI imp chart. There are 2 note trigs purely for demoing, but it works best as a 2nd layer of control on top of notes played by a background sequencer in IOS (like Little MIDI Machine), or via outboard MIDI gear.
    IOSmidi forum logins are slow to be approved, it seems. Once I’m in I’ll post there in its proper place – until then: http://www.mediafire.com/?bje37m5a5ay67
    SuperSaw MIDI info chart: https://github.com/stg/SyltJamSynth2011/blob/master/arduino-sketches/supersaw_sylt/midi_info.txt

  14. Audiofreq Says:

    I tweaked a few things in version 2 of the free MIDI Touch iPad app template, and made a quick demo video http://www.youtube.com/watch?v=nKNuuweDbXA
    Template download link is in the description – open the link on the iPad to import the template into MIDI Touch. It adds a whole new layer of controlling CC data when running a MIDI seq in either the background from another CoreMIDI app, or externally while patched to a multiport MIDI interface.

  15. Pakir Says:

    Audiofreq: Cool! I’ve added a link to the template under downloads!

  16. devsound.se » SJS-One modular expander Says:

    [...] – Would it not be nice if the SJS-One could be controlled by and control your analog modular [...]

  17. SJS-ONE Arduino-based Synth | cnco cnco Says:

    [...] SJS-ONE is an open source 8-bit mono synthesizer from Devsound in Sweden that uses an Arduino as it’s brains. Looks to be nicely hackable (i.e. within the reach of the less geeky). This entry was posted in Uncategorized and tagged DIY, hardware, synth on July 30, 2012 by cnco. [...]

  18. cnco cnco — SJS-ONE Arduino-based Synth Says:

    [...] SJS-ONE Arduino-based Synth → July 30th, 2012 • ∞ [...]

Leave a Reply