I've put together a driver for the TYT TH-8600 that's working for both read/write for memories and basic settings (I haven't yet reversed the 2tone/5tone/dtmf signalling settings). This my first attempt at a driver and I have a few questions:
1. Should I have beta testers of my driver test from my fork prior to submitting a PR, or is there a better/preferred approach to this? 2. The manufacturer's software saves the memory map in a pretty easy to read .icf format. I've noticed that some drivers have a "File" class in addition to the Radio class (for example TYTTH7800File). Is this the mechanism to use to implement the ability for CHIRP to read the manufacturer's memory map files in, if desired? 3. I'm having some issues with tests and am not confident that my driver is actually being tested. This is my first experience with tox, so I'm fumbling a bit. 1. When I run py -3.10-64 -m tox all tests pass, though it takes a really long time to complete. However, I see no mention of my driver in any of the printed output. 2. When I run py -3.10-64 -m tox -e fast-driver all tests pass and it seems to recognize my file as a "touched driver". However, I still see no mention of my driver in any of the tests being run, though I do see mention of some Baofeng models that I haven't touched. Not sure what's going on there. 1. The H777 driver was causing the fast-driver test to fail due to some Chinese characters in the code comments. I had to remove those characters from the H777 driver to get it to run to completion. Not sure how the H777 driver passed. 3. When I run py -3.10-64 -m tox -e driver -- -k th8600 it fails but I'm struggling to understand why: ================================================= test session starts ================================================= platform win32 -- Python 3.10.7, pytest-7.1.3, pluggy-1.2.0 -- C:\chirp.tox\driver\Scripts\python.EXE cachedir: .tox\driver.pytest_cache metadata: {'Python': '3.10.7', 'Platform': 'Windows-10-10.0.22621-SP0', 'Packages': {'pytest': '7.1.3', 'pluggy': '1.2.0'}, 'Plugins': {'html': '3.2.0', 'metadata': '3.0.0', 'xdist': '3.3.1'}} rootdir: C:\chirp, configfile: tox.ini plugins: html-3.2.0, metadata-3.0.0, xdist-3.3.1 created: 8/8 workers 8 workers [0 items]
scheduling tests via LoadScheduling
------------------------------ generated html file: file:///C:/chirp/driver_report.html ------------------------------- =============================================== 1056 warnings in 14.88s =============================================== driver: exit 5 (15.56 seconds) C:\chirp> pytest --disable-warnings --html=driver_report.html -v tests/test_drivers.py -n auto -k th8600 pid=50384 .pkg: _exit> python C:\Python_310_64\lib\site-packages\pyproject_api_backend.py True setuptools.build_meta __legacy__ driver: FAIL code 5 (33.72=setup[18.16]+cmd[15.56] seconds) evaluation failed :( (34.16 seconds)
Any advice is appreciated.
Thanks,
Andy