Basic Sequencer For Your Synth Rack

Sequencers are useful for bringing regular structure to your music, particularly if you enjoy noodling around with rackmount synthesizers. [little-scale] is here to share an ADC Binary Gate sequencer for your setup.

In a quest for ever greater minimalism, the build relies on a barebones ATMega328p without an external oscillator. Instead, the chip’s internal RC oscillator is used instead. It’s possible to still use this with the Arduino IDE, as [little-scale] shares here.

The music production begins with a clock input signal, which is patched in from elsewhere in the rack synth. The sequencing is controlled with potentiometers. There are four potentiometers, and four corresponding output channels.  The pots are all read with the onboard analog to digital converters, and the position transformed into an 8-bit value, from 0 to 255. Our best understanding is that the 8-bit number is then used as the sequence to follow. For example, if the potentiometer is set to 255, which is 11111111 in binary, the sequencer will trigger on every beat. If instead the potentiometer was turned to around 2/3rds of the maximum, and the ADC reads a value of 170, in binary this is 10101010 which would trigger on every second beat.

It’s an interesting way to sequence several channels with the bare minimum of input devices. While it may not be the most intuitive system, it really suits the knob-and-dial noodling so relished by rackmount fanatics. Be sure to check out the video below for [little-scale]’s rackmount sounds and impressively pretty videography.  Never before did breadboards look so good.

New to rack mount synths? Check this one out.

 

 

 

When Is A 10-bit A/D An 8-bit A/D?

Marketing guys love bigger numbers. Bigger is better, right? After all, Subway called it a “footlong” not an 11-incher. So when it comes to analog to digital (A/D) conversion, more bits are better, right? Well, that depends. It is easy to understand that an A/D will have a low and high measurement and the low will be zero counts and the high will result in the maximum count for the number of bits. That is, an 8-bit device will top out at 255, a 10-bit at 1023, and so on.

The question is: are those bits meaningful? The answer depends on a few factors. Like most components we deal with, our ideal model isn’t reality, but maybe it is close enough.

Continue reading “When Is A 10-bit A/D An 8-bit A/D?”

Hackaday Prize Entry: Dynamometer For Post Stroke Rehabilitation

For those who have suffered a stroke, recovery is a long and slow process that requires rehabilitation to start as early as possible. Quite often, secondary stroke attacks complicate matters. Spasticity — muscle contraction and paresis — muscular weakness, are two of the many common after-effects of stroke. Recovery involves doing repeated exercises to strengthen the muscles and bring back muscle memory. Benchmarking progress becomes difficult when caregivers are only able to use qualitative means such as squeezing tennis balls to monitor improvement. To help provide quantitative measurements in such cases, [Sergei V. Bogdanov] is building a Dynamometer for Post-Stroke Rehabilitation. It is an Open Source, 4-channel differential force gauge for measuring and logging the progress of the patient. The device measures, graphs, and logs the force exerted by the four fingers when they push down on the four force gauges.

The device consists of four strain gauges obtained from cheap kitchen scales. The analog outputs from these are fed to HX-711 24-bit ADC boards. An Arduino Nano processes the data and displays it on two banks of eight-digit LED modules. [Sergei] also experimented with a 20×4 character LCD in place of the LED display. In the standalone mode, the device can only indicate the measured forces on the LED (or LCD) display which is calibrated to display either numerical values or a logarithmic scale. When connected to a serial port and using the (Windows only) program, it is possible to not only view the same information but also save it at regular, set intervals. The data can also be viewed in graphical form.

The project page provides links to their Arduino code, Windows monitor program as well as build instructions. Check out the related assistive technology project that [Sergei] is working on — A Post Stroke Spasticity Rehab Helper.

Continue reading “Hackaday Prize Entry: Dynamometer For Post Stroke Rehabilitation”

8-Channel ADC For The Raspberry Pi

The Raspberry Pi is a powerful embedded computing platform. However, for all its Linux-based muscle, it lacks one thing that even the simplest 8-bit microcontrollers usually have – analog-to-digital conversion. There are a great many ways to rectify this shortcoming, and [Chris Burgess] has brought us another – with an 8-channel ADC for the Raspberry Pi.

For the ADC, [Chris] chose the MCP3008, for its low cost and availability. In this configuration it offers 10-bit resolution and a maximum sampling rate of 200 kilosamples per second. Adafruit has a great guide on working with the MCP3008, too. With such a useful resource to hand, [Chris] was able to spin up a PCB to interface the chip to the Raspberry Pi using SPI. [Chris] took care to try to make the board to the official HAT specifications. As far as the physical aspects go, the board is to spec, however [Chris] omitted the EEPROM required for auto-configuration purposes. That said, the pads are on the board if someone wants to take the initiative to install one.

It’s a tidy build that provides something sorely missing from the Raspberry Pi, for a reasonable cost. [Chris]’s goal was to build something that would enable the measurement of analog sensors for a robot project; we’d love to hear your ideas for potential uses in the comments!

STM32 Analog Converter Phase Noise

[Avian] has been using STM32 ARM processors to sample RF for a variety of applications. At first, he was receiving relatively wide TV signals. Recently, though, he’s started dealing with very narrow signals and he found that his samples had a lot of spread in the frequency domain that he didn’t expect.

What followed was some detective work that resulted in a determination that phase noise was the culprit. But why? [Avian] took some measurements and noticed that the phase noise almost exactly matched the phase noise specification for the STM32’s phase locked loop (PLL).

Unfortunately, there didn’t seem to be a good way to avoid using the PLL without major changes to the rest of the circuit. However, it was quite the learning experience and something to be aware of when counting on built-in converters for high-accuracy measurements.

One of the best things about this post is the references to more information. There’s a great explanation of phase noise, as well as a specific application note about clock jitter and analog converters.

We’ve talked about phase noise in direct digital synthesis a few times. But usually, it is pretty obvious like when you are asking a CPU to double as an RF transmitter. [Avian’s] post was a bit more of a detective story.

Hackaday Prize Entry: High Speed Sampling For The Raspberry Pi

The Raspberry Pi has become a firm favorite in our community for its array of GPIOs and other interfaces, as well as its affordable computing power. Unfortunately though despite those many pins, there is a glaring omission in its interfacing capabilities. It lacks an analogue-to-digital converter, so analog inputs have to rely on an expansion card either on those GPIOs or through the USB port.

Most people remain content with simple ADCs such as Microchip’s MCP3008, or perhaps a USB sound card for low frequency moving targets. But not [Kelu124], he’s set his sights on something much faster. The original Pi is reputed to be capable of handling a 10Msamples/s ADC, so he thinks its faster successors should be able to work much faster. To that end, he’s created an ADC pHAT which he thinks should be good for twice that figure.

The choice of silicon is a CA3306E, a 6-bit device that’s rated at 15Msamples/S. It’s something of a dated device as is shown by its DIP package, and a quick look through major suppliers shows it to be no longer available. Happily though, when you look at his GitHub repo it emerges that he’s also producing a board based on the ADC08200, so his software is targetable at other chips.

Whether or not you need your Pi to serve as video digitizer or high-speed instrument, it’s useful and interesting to take a look at a board like this one in action. We often don’t use the raw power of our single board computers, and this project proves that should we ever need to, we can.

If ADCs interest you, take a look at [Bil Herd]’s series on delta-sigma ADCs.

Thanks [Fustini] for the tip.

Tearing Into Delta Sigma ADCs Part 2

In part one, I compared the different Analog to Digital Converters (ADC) and the roles and properties of Delta Sigma ADC’s. I covered a lot of the theory behind these devices, so in this installment, I set out to find a design or two that would help me demonstrate the important points like oversampling, noise shaping and the relationship between the signal-to-noise ratio and resolution.

Modulator Implementation

modulatorCheck out part one to see the block diagrams of what what got us to here. The schematics shown below are of a couple of implementations that I played with depicting a single-order and a dual-order Delta Sigma modulators.

schematicBasically I used a clock enabled, high speed comparator, with two polarities in case I got it the logic backwards in my current state of burn out to grey matter ratio. The video includes the actual schematic used.

Since I wasn’t designing for production I accepted the need for three voltages since my bench supply was capable of providing them and this widget is destined for the drawer with the other widgets made for just a few minutes of video time anyway. Continue reading “Tearing Into Delta Sigma ADCs Part 2”