0

From the Forums: Bryon Miller’s Homemade Feather M0 Oscilloscope | #MakerTools

Thanks to Bryon for sending this in! Check out the ‘scope in operation below and the source code is available here on GitHub.

I have built an oscilloscope using a Feather M0 and 3.5 inch tft display (pid:2050). You can see it in operation at https://www.youtube.com/watch?v=s2gPyz4bXjo. I realize I could get a Chinese kit cheaper than even the cost of the display but what fun would that have been.

BACKGROUND:
I’m pretty happy with the way it is right now but I want to take the scope to the next level. The current problem I’m trying to address has to do with showing individual points across the screen. When looking at a relatively slow-moving signal it is satisfactory to put a pixel at each location representing the time value and the voltage value. But if the signal has a high slew rate (relative to the sweep speed) the voltage at “this” point in time can be quite a bit different that the voltage at the previous point in time. This makes for pixels that are quite a distance apart and thus a display that is difficult to see. I believe the solution is to draw a line between the points rather than just lighting up individual points.

THE PROBLEM:
Trouble is drawing lines seems really slow. I’m using SPI since I don’t have the pins to use the 8-bit interface. I’m using SW SPI since my early speed testing showed SW to be quicker. But when I went back to look over my speed testing I rediscovered when I draw individual points SW SPI is indeed faster. But if I draw a line, HW SPI is faster (as long as the line is straight). A straight line is one that has either x1==x2 or y1==y2. I understand that the HX8357 library takes advantage of features of the controller chip that allow drawing n consecutive points faster than n individual points. What I don’t understand is why there would be a difference in speed advantage of SW SPI vs HW SPI for lines vs points.

You can find the GitHub repo here.


Featured Adafruit Products!

NewImage

3.5″ TFT 320×480 + Touchscreen Breakout Board w/MicroSD Socket – HXD8357D: Add some jazz & pizazz to your project with a color touchscreen LCD. This TFT display is big (3.5″ diagonal) bright (6 white-LED backlight) and colorful! 480×320 pixels with individual RGB pixel control, this has way more resolution than a black and white 128×64 display, and double our 2.8″ TFT. As a bonus, this display has a resistive touchscreen attached to it already, so you can detect finger presses anywhere on the screen. Read more.


Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, or even use Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for MakeCode, CircuitPython, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.

Join 8,500+ makers on Adafruit’s Discord channels and be part of the community! http://adafru.it/discord

CircuitPython – Python on Microcontrollers is here!

Have an amazing project to share? Join the SHOW-AND-TELL every Wednesday night at 7:30pm ET on Google+ Hangouts.

Join us every Wednesday night at 8pm ET for Ask an Engineer!

Follow Adafruit on Instagram for top secret new products, behinds the scenes and more https://www.instagram.com/adafruit/


Maker Business — Rethink Robotics closes shop. Long live collaborative robots #makerbusiness

Wearables — Cleaning is key

Electronics — Serial overkill

Biohacking — Biohacking Resources – Books, Talks and Podcasts

Python for Microcontrollers — CircuitPython @ Hackaday SuperCon #ICYMI @circuitpython @micropython @ThePSF #Python

Get the only spam-free daily newsletter about wearables, running a "maker business", electronic tips and more! Subscribe at AdafruitDaily.com !



No Comments

No comments yet.

Sorry, the comment form is closed at this time.