Skip to main content

A Python package form the JDS6600 DDS Signal Generator/Counter

Project description

About the Project

The JDS6600 is a 2-channel DDS signal generator with a built-in frequency counter. It comes in a few flafours, one cam generate signals up to 60MHz, the lite version only up to 15MHz The Signal generator can be controlled via a USB port, and via the control panel. This module makes it easier to control the signal generator via the USB port. It abstacts most of functions offered via the remote control. The documentation I have found on the internmanufacturer's website (https://joy-it.net/de/products/JT-JDS6600), is not very clear and it seems that not all options which are available via manual control, are possible via the remote control. I've also found out the the sgnal generator was available from another company, called Hangzou Junce Instruments.

Getting started

Prerequisites

This python package is only supporting Python 3. The only external dependency is pyserial.

Installation

The package can be installed with pip.

pip install jds6600
pip install jds6600[test]

Quick start

Open and close a connection

Remark: Your USB port may be different.

>>> import jds6600
>>> fg = jds6600.JDS6600(port="/dev/ttyUSB3")
>>> fg.connect()
<jds6600.core.JDS6600 object at 0x7f04a951ac50>
>>> print(fg.get_channels())
(False, False)
>>> fg.close()

Or using the with statement

>>> import jds6600
>>> with jds6600.JDS6600(port="/dev/ttyUSB3") as fg:
...     print(fg.get_channels())
... 
(False, False)

Available methods:

>>> fg.get_channels()
(False, False)
>>> fg.set_channels(channel1=True, channel2=True)
'ok'
>>> fg.get_waveform(channel=1)
'sine'
>>> fg.set_waveform(channel=1, value='triangle')
'ok'
>>> fg.get_frequency(channel=1)
0.0
>>> fg.set_frequency(channel=1, value=1e3)
'ok'
>>> fg.get_amplitude(channel=2)
5.0
>>> fg.set_amplitude(channel=1, value=1.23)
'ok'
>>> fg.get_offset(channel=1)
0.0
>>> fg.set_offset(channel=1, value=0.5)
'ok'
>>> fg.get_dutycycle(channel=1)
50.0
>>> fg.set_dutycycle(channel=1, value=20.1)
'ok'

Contributing

If you want to contribute to this project, you're mostly welcome! Just keep a few thing in mind, and it will go smooth.

  1. Fork the project
  2. Create a branch (git checkout -b myfeature)
  3. Check your code using flake8 and mypy
  4. Commit your changes (git commit -m "added a nice feature")
  5. Push your branch to github (git push origin myfeature)
  6. Open a Pull Request

License

Distributed under the MIT License. See LICENSE.txt for more information.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

jds6600-1.1.1.tar.gz (5.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

jds6600-1.1.1-py3-none-any.whl (6.6 kB view details)

Uploaded Python 3

File details

Details for the file jds6600-1.1.1.tar.gz.

File metadata

  • Download URL: jds6600-1.1.1.tar.gz
  • Upload date:
  • Size: 5.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for jds6600-1.1.1.tar.gz
Algorithm Hash digest
SHA256 2330138af9f7c03894a32cd7cc7bf2c4be9aa25d1be63a28b1073630ef520fab
MD5 5aca706c54813b3289a3a4be2eb86397
BLAKE2b-256 13e0efea1fa5cc8a67767d605b6d2366f0460d5bebe03e7f61be857a86ee3cbc

See more details on using hashes here.

File details

Details for the file jds6600-1.1.1-py3-none-any.whl.

File metadata

  • Download URL: jds6600-1.1.1-py3-none-any.whl
  • Upload date:
  • Size: 6.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.12

File hashes

Hashes for jds6600-1.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4b50b88cbcb37bb283691004873b355436095f2324099b86424e6c02ef2cc91d
MD5 d67819d978f4a2b660c570a037d65928
BLAKE2b-256 63d491b360a16d40589d206ce6c0220523f49788a65aac57021cc4707619ae43

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page