/HS602

Information and simple, cross-platform Python scripts to control HS602 capture device(s), manufactured by "maxmediatek", sold under many different names/brands. Mirrored at https://git.phillw.org/mpmc/mpmc-HS602

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

HS602

Information and Python module (and soon a GUI) to control the HS602 capture device, manufactured by "maxmediatek" and sold under many different names/brands.

Codacy Badge

Features

  • Multi-platform - works anywhere there's Python3!
  • Almost all the features of the Windows Shareview application.
  • Device discovery.
  • Streaming toggling (start, stop streaming).
  • Set/Get various parameters, rtmp, colour, source, bitrate, and more - that Shareview can't do.
  • Can be used to control a HS602 encoder over the Internet. Although I wouldn't recommend it, it's too insecure!
  • Simple and easy to understand/use (hopefully ;) ).
  • Versions 0.1.1>= are PEP8 compliant.
  • Minimal requirements, uses just socket, concurrent.futures (for callbacks (coming soon)) and gettext (for optional translation).

Install

Python 3.2 or later required.

Linux

  • Make sure you have pip3 installed, then run.. pip3 install --user git+git://github.com/mpmc/HS602.git@master
  • Remove --user to install globally (requires root or sudo).
  • Upgrade by running pip3 install --user --upgrade hs602

Windows

Example Usage

Linux

  1. Once installed via pip, make a copy of example.py.
  2. Modify it to your liking nano examply.py.
  3. Run it! In your terminal, navigate to where your file is, e.g. cd ~/example.py, chmod it chmod +x example.py then run ./example.py.

Windows:

  1. Make a copy of example.py and place it somewhere you can easily find it, then right click and choose Edit with Python IDLE.
  2. Modify it to your liking.
  3. Run it! In Python IDLE, click Run -> Check Module then Run -> Run Module.

If you get ModuleNotFoundError: No module named 'hs602' you need to copy example.py to the same location as the hs602 (folder).

/hs602
/hs602/copy_of_example.py
/hs602/hs602/controller.py

Improvements?

  • I'm In the process of writing an app using the fantastic appJar.

I'm always happy to receive suggestions, fixes or whatever.

Device Debugging/Serial Connection

On my device (the Maplin variant) the serial/UART pins are populated. You need a TTL UART converter - I used a "USB 2.0 CP2102 To TTL UART Module 6Pin Serial Converter".

Connect the dupont wires/cables in the following order (facing the back of the SD card slot):

[ 1 ][ 2 ][ 3 ][ 4 ]

  • 1 = VCC (5V)
  • 2 = TX
  • 3 = RX
  • 4 = GND

If you want to be extra careful don't connect the VCC (5V) wire & use the USB connection for power. Also note that powering via serial (without external power) with an Ethernet cable will cause a crash after a few minutes.

Tip: If your device is like mine it'll have a square pin (on the underside) that indicates VCC (5V).

Use your favourite software to connect at 115200 baud/speed with parity set to EVEN (this is listed under serial in PuTTY).

Links

XDA developers' forum thread