Lissajous Curve
![Lissajous-1.jpg](/proxy/?url=https://content.instructables.com/FH5/CM84/LEBEGN2D/FH5CM84LEBEGN2D.jpg&filename=Lissajous-1.jpg)
This Instructable illustrates the production of Lissajous Curves on a small 320x240 pixel display using MicroPython and the Pimoroni Pico Graphics system of producing graphics.
Supplies
Raspberry Pi Pico microcontroller - I used a Pico Lipo
Pimoroni Pico Display 2 - 320x240 pixel display
Thonny Editor - free download
USB cable
The Video
![Lissajous Curve](/proxy/?url=https://content.instructables.com/FX4/EIHM/LEBEGN54/FX4EIHMLEBEGN54.jpg&filename=Lissajous Curve)
Have a look at the video. The first half requires no user input and shows different numbers of nodes on the x and y axis. The second half is more dynamic and demonstrates what happens to the curves as you change the number of nodes by pressing the buttons and the phase shifts.
x and y are defined by a pair of equations:
- sin(nt + a), cos(kt + b) or
- sin(nt + a), sin(kt + b) or
- cos(nt + a), cos(kt + b) or
- x = cos(nθ), sin(k&theta)
You can see how they work by looking at the code and the video.
I hope you enjoyed it. Comments and discussion welcome.
Downloads
Potentiometer Control
![DSCN4623.JPG](/proxy/?url=https://content.instructables.com/F3P/SVQT/LEE9C24U/F3PSVQTLEE9C24U.jpg&filename=DSCN4623.JPG)
The buttons only allow you to control two variables, n and m. I decided to switch control to 3 10 K Ohm potentiometers so that we could control the phase shift as well as the number of nodes in the x and y directions. The new layout is shown in the picture.
![DSCN4628.JPG](/proxy/?url=https://content.instructables.com/F0V/QZ0E/LEE9C25K/F0VQZ0ELEE9C25K.jpg&filename=DSCN4628.JPG)
The new version can still show the moving curves automatically but also allows the user better control of the phase shifting.