Closed nuriabonetm closed 1 year ago
Hi Nuria, that looks like your guppy config isn't correct. This is set in the caller settings section of the config TOML. If you post just that section I can see if it looks correct.
Hi Alex, we tried two settings, first we had what you suggest: [caller_settings] config_name = "dna_r9.4.1_450bps_fast" host = "127.0.0.1" port = 5555
But we got a different and stopped even before now.
Then we saw in another issue that the host should be another, so we changed it to [caller_settings] config_name = "dna_r9.4.1_450bps_fast" host = "ipc:///tmp/.guppy" port = 5555
Should we try something else?
thanks! Núria
From your readfish environment can you run:
python -c 'from pyguppy_client_lib.pyclient import PyGuppyClient as PGC; \
c = PGC("ipc:///tmp/.guppy/5557", "dna_r9.4.1_450bps_fast.cfg"); \
c.connect(); print(c)'
Could you also run:
ls -ltrh /tmp/.guppy
please post the output here.
Also, for reference the first config using 127.0.0.1
is an old way of connecting with Guppy this requires the server be started with the --use_tcp
flag. The second way uses a TCP socket which is the default for guppy.
Hi Alex, sorry I didn't answer before. I was away a few days. I've run the code you asked for and this the output keeps giving the same error, again and again until I cancel: [guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [timed_out] Timeout waiting for reply to request: LOAD_CONFIG
The anser for the other: ls -ltrh /tmp/.total 0 srwxr-xr-x 1 minknow minknow 0 ene 4 18:07 5556 guppy
Does this give you a clue on what is happening?
thanks! And happy new year!
núria
Hey Núria, I think the problem is the permissions on the 5556 file - If you have set this up manually on a computer - i.e it's not on an ONT box like the GridION, you will need your User account to have write permissions on the socket.
You can either add yourself to the minknow
group and give the group write permission of give everyone write permissions which is a bit less secure.
To add yourself to the group and change the permissions -
sudo usermod -a -G minknow $USER
# Change the permissions
sudo chmod 775 /tmp/.guppy/5556
You will then have to logout and back in for the user/group changes to take effect!
Alternatively you can just Yolo it and run
sudo chmod 777 /tmp/.guppy/5556
Which means any User has all permissions on this file. I don't recommend this approach though!
Once you have done that if you run the above Python command changing the IPC port to 5556 rather than 5557
python -c 'from pyguppy_client_lib.pyclient import PyGuppyClient as PGC; \
c = PGC("ipc:///tmp/.guppy/5556", "dna_r9.4.1_450bps_fast.cfg"); \
c.connect(); print(c)'
Theoretically you should be good to go!
Rory
Hi Rory,
thanks for your help.
With just changing the permisions for the user it still didn't work but with the second option, something has changed.
I still get an error but now it's a different one:
guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
Traceback (most recent call last):
File "
By the way I'm doing this tests without the MinIon running. So I tried now to run an experiment and do readfish targets --device MN27944 --experiment-name "2022-12-16targetchry" --toml /home/admin/human_chr_selection.toml --log-file Ru_test.log
And got this error:
guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
Traceback (most recent call last):
File "/home/admin/miniconda3/envs/readfish/bin/readfish", line 8, in
Any new ideas?
thanks! Nuria
Hi Nuria,
I think this is a version mismatch between ont-pyguppy-client-lib
, the python library that enables ReadFish to talk to Guppy and the install version of Guppy.
If you open a terminal and run
guppy_basecall_server --version
You should get something like this back
Guppy Basecall Service Software, (C) Oxford Nanopore Technologies plc. Version 6.1.5+446c35524, client-server API version 11.0.0
The important part is the first three numbers of the version, in this case 6.1.5
.
If you then activate your ReadFish python environment and run
pip list
You will see a list of installed python packages. I suspect the entry for ont-pyguppy-client-lib
won't be the same version.
To fix this, simply run
pip install ont-pyguppy-client-lib==X.X.X
where X.X.X
is the version from the Guppy command above. So in this example the correct command would be:
pip install ont-pyguppy-client-lib==6.1.5
.
The final thing to keep in mind is some versions of Guppy don't have a corresponding version of ont-pyguppy-client-lib
. In this case you will get an error message which looks like
ERROR: Could not find a version that satisfies the requirement ont-pyguppy-client-lib==6.4.5 (from versions: 5.1.9, 5.1.10, 5.1.11, 5.1.12, 5.1.13, 5.1.15, 5.1.16, 5.1.17, 6.0.0, 6.0.1, 6.0.4, 6.0.6, 6.0.7, 6.1.1, 6.1.2, 6.1.3, 6.1.5, 6.1.6, 6.1.7, 6.2.1, 6.2.11, 6.3.2, 6.3.4, 6.3.7, 6.3.8, 6.3.9, 6.4.2)
ERROR: No matching distribution found for ont-pyguppy-client-lib==6.4.5
Select the closest version for you Guppy version from the list given, moving down.
So if you had Guppy version 6.4.1
installed, you would install ont-pyguppy-client-lib==6.3.9
, as the closest lower version.
Then you should be able to run
python -c 'from pyguppy_client_lib.pyclient import PyGuppyClient as PGC; \
c = PGC("ipc:///tmp/.guppy/5556", "dna_r9.4.1_450bps_fast.cfg"); \
c.connect(); print(c)'
as before and it should succesfully connect.
Good luck!
Rory
It's working!!! Thanks a lot for your help! You were right, the version was different, after changing it, everything works.
Just, an extra question. The speed of mapping is a bit higher than 0.4: 2023-01-17 19:18:57,355 ru.ru_gen 15R/0.50858s 2023-01-17 19:18:57,834 ru.ru_gen 17R/0.47959s 2023-01-17 19:18:58,333 ru.ru_gen 16R/0.49804s 2023-01-17 19:18:58,848 ru.ru_gen 21R/0.51518s 2023-01-17 19:18:59,365 ru.ru_gen 16R/0.51708s
Do you think we can use it that way, or there's something we can do to improve the performance?
Thanks again! Núria
HI Nuria - really sorry that I missed this!
I think that should be fine - It's only a problem if the number of reads started to climb, as well as the time for a batch of reads. In terms of improving performance, that's more of an experimental setup question, although we are working on improving performance in the code at the moment!
You could double check that the reference contains only sequences you need. For example, if you were enriching chromosome 20 in the human genome, you could run the experiment using a reference which only contained Chromosome 20.
I'm going to close this issue for now, but please reopen it if you need anymore help!
Rory
Hi, I am having the same issue, and I have tried all the things @Adoni5 suggested but they do not work...
The versions of guppy server are the same 6.5.7
$ ls -ltrh /tmp/.guppy total 0 srwxr-xr-x 1 minknow minknow 0 May 29 16:17 5555
$ python -c 'from pyguppy_client_lib.pyclient import PyGuppyClient as PGC; \ c = PGC("ipc:///tmp/.guppy/5555", "dna_r9.4.1_450bps_fast.cfg"); \ c.connect(); print(c)' [guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [timed_out] Timeout waiting for reply to request: LOAD_CONFIG
please let me know your thoughts on this!!!
I suspect there is a linux permissions error here (depending on what user you are running as).
https://github.com/LooseLab/readfish/issues/221#issuecomment-1375673490
Could be worth checking the permissions here and trying the "you only live once" advice to see if that fixes it.
Hi, I believe I was able to connect now:
$ python -c 'from pyguppy_client_lib.pyclient import PyGuppyClient as PGC; \
c = PGC("ipc:///home/tilgnerlab/5555", "dna_r9.4.1_450bps_fast.cfg"); \
c.connect(); print(c)'
PyGuppyClient(address='ipc:///home/tilgnerlab/5555', config='dna_r9.4.1_450bps_fast', align_ref=None, bed_file=None, barcodes=None, status.connected, )
However, while running the simulation, the target
function still has issue:
$ readfish targets --device MS00000 \
--experiment-name "RU Test basecall and map" \
--toml /home/tilgnerlab/readuntil/readfish_files/human_chr_selection.toml \
--log-file ru_test.log
2023-05-29 16:47:09,783 ru.ru_gen /home/tilgnerlab/miniconda3/envs/readfish/bin/readfish targets --device MS00000 --experiment-name RU Test basecall and map --toml /home/tilgnerlab/readuntil/readfish_files/human_chr_selection.toml --log-file ru_test.log
2023-05-29 16:47:09,784 ru.ru_gen batch_size=512
2023-05-29 16:47:09,784 ru.ru_gen cache_size=512
2023-05-29 16:47:09,784 ru.ru_gen channels=[1, 512]
2023-05-29 16:47:09,784 ru.ru_gen chunk_log=None
2023-05-29 16:47:09,784 ru.ru_gen command=targets
2023-05-29 16:47:09,784 ru.ru_gen device=MS00000
2023-05-29 16:47:09,784 ru.ru_gen dry_run=False
2023-05-29 16:47:09,784 ru.ru_gen experiment_name=RU Test basecall and map
2023-05-29 16:47:09,784 ru.ru_gen func=<function run at 0x7f2cfb53ad30>
2023-05-29 16:47:09,784 ru.ru_gen host=127.0.0.1
2023-05-29 16:47:09,784 ru.ru_gen log_file=ru_test.log
2023-05-29 16:47:09,784 ru.ru_gen log_format=%(asctime)s %(name)s %(message)s
2023-05-29 16:47:09,784 ru.ru_gen log_level=info
2023-05-29 16:47:09,784 ru.ru_gen max_unblock_read_length_seconds=5
2023-05-29 16:47:09,784 ru.ru_gen paf_log=None
2023-05-29 16:47:09,784 ru.ru_gen port=None
2023-05-29 16:47:09,784 ru.ru_gen run_time=172800
2023-05-29 16:47:09,784 ru.ru_gen throttle=0.4
2023-05-29 16:47:09,784 ru.ru_gen toml=/home/tilgnerlab/readuntil/readfish_files/human_chr_selection.toml
2023-05-29 16:47:09,784 ru.ru_gen unblock_duration=0.1
2023-05-29 16:47:09,784 ru.ru_gen workers=1
2023-05-29 16:47:09,792 ru.ru_gen Initialising minimap2 mapper
2023-05-29 16:47:12,690 ru.ru_gen Mapper initialised
2023-05-29 16:47:12,862 ru.ru_gen This experiment has 1 region on the flowcell
2023-05-29 16:47:12,863 ru.ru_gen Using reference: /home/tilgnerlab/readuntil/hg38-ont.mmi
2023-05-29 16:47:37,751 ru.ru_gen Region 'select_chr_12_start' (control=False) has 2 contigs of which 0 are in the reference. There are 4 targets (including +/- strand) representing 4.58% of the reference. Reads will be unblocked when classed as single_off or multi_off; sequenced when classed as single_on or multi_on; and polled for more data when classed as no_map or no_seq.
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [timed_out] Timeout waiting for reply to request: LOAD_CONFIG
PS, simulation using a configuration test cell gives me run error so I am currently using a "position simulation".
Hi @jennieli421 - Sorry I was on holiday last week. Could you share the contents of your TOML file? The conditions.X sections don't matter, just the caller settings and connection settings for guppy.
From the python snippet it does indeed look like you can connect. Sorry if you have already done this, but whenever a computer or MinKNOW is restarted, it recreates the 5555 socket file with the default permissions that don't allow anyone but the minknow
user to connect.
Dear Team,
Thank you for your awesome readfish tool. I am trying to run the readfish validate human_chr_selection.toml
according to the tutorial (https://looselab.github.io/readfish/getting-started). However, I received the LOAD_CONFIG error as pointed out in this thread.
Initialising Caller[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL
2024-01-25 10:46:42,362 readfish.validate Caller could not be initialised, see below for details
2024-01-25 10:46:42,362 readfish.validate Server response not formatted correctly: <result.bad_reply: 14>
2024-01-25 10:46:42,362 readfish.validate Initialising Aligner
2024-01-25 10:46:47,696 readfish.validate Aligner initialised
2024-01-25 10:46:47,696 readfish.validate Skipping descriptions due to errors.
I checked that the guppy-basecaller version as well as the ont-pyguppy-client-lib version are the same
guppy_basecaller -v
: Guppy Basecalling Software, (C) Oxford Nanopore Technologies plc. Version 6.5.7+ca6d6af, minimap2 version 2.24-r1122
pip list
Package Version
---------------------- ------------
about-time 4.2.1
alive-progress 3.1.5
attrs 23.2.0
cattrs 23.2.3
click 8.1.7
exceptiongroup 1.2.0
grapheme 0.6.0
grpcio 1.60.0
importlib-metadata 7.0.1
iniconfig 2.0.0
mappy 2.26
mappy-rs 0.0.7
minknow-api 5.8.1
more-itertools 10.2.0
numpy 1.26.3
ont-pyguppy-client-lib 6.5.7
packaging 23.2
pip 23.3.2
pluggy 1.3.0
protobuf 4.25.2
pyfaidx 0.8.0
pyRFC3339 1.1
pytest 7.4.4
pytz 2023.3.post1
readfish 2023.1.1
readfish_summarise 0.2.5
rtoml 0.10.0
setuptools 69.0.3
tomli 2.0.1
typing_extensions 4.9.0
wheel 0.42.0
zipp 3.17.0
I also tried
python -c 'from pyguppy_client_lib.pyclient import PyGuppyClient as PGC; c = PGC("ipc:///tmp/.guppy/5555", "dna_r9.4.1_450bps_fast.cfg"); c.connect(); print(c)'
because ls /tmp/.guppy
yielded 5555
. I still got the same error.
The only section that I changed in the https://raw.githubusercontent.com/LooseLab/readfish/master/docs/_static/example_tomls/human_chr_selection.toml file is the file path to the .mmi file.
I would like to know what else to try in order to make the readfish validate
step run successfully. I look forward to your response.
Are you running on a Linux box or an ont device (GridION or promethion?) Sent from my iPhone
Thanks for your prompt response. I am running this on a GridION X5.
Thanks for your prompt response. I am running this on a GridION X5.
On Thu, Jan 25, 2024 at 11:09 AM mattloose @.***> wrote:
Are you running on a Linux box or an ont device (GridION or promethion?) Sent from my iPhone
On 25 Jan 2024, at 10:07, Ayorinde_Afolayan @.***> wrote:
Dear Team,
Thank you for your awesome readfish tool. I am trying to run the readfish validate human_chr_selection.toml according to the tutorial ( https://looselab.github.io/readfish/getting-started). However, I received the LOAD_CONFIG error as pointed out in this thread.
Initialising Caller[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL[guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [bad_reply] Could not interpret message from server for request: LOAD_CONFIG. Reply: INVALID_PROTOCOL2024-01-25 10:46:42,362 readfish.validate Caller could not be initialised, see below for details2024-01-25 10:46:42,362 readfish.validate Server response not formatted correctly: <result.bad_reply: 14>2024-01-25 10:46:42,362 readfish.validate Initialising Aligner2024-01-25 10:46:47,696 readfish.validate Aligner initialised2024-01-25 10:46:47,696 readfish.validate Skipping descriptions due to errors.
I checked that the guppy-basecaller version as well as the ont-pyguppy-client-lib version are the same
guppy_basecaller -v : Guppy Basecalling Software, (C) Oxford Nanopore Technologies plc. Version 6.5.7+ca6d6af, minimap2 version 2.24-r1122
pip list
Package Version---------------------- ------------about-time 4.2.1alive-progress 3.1.5attrs 23.2.0cattrs 23.2.3click 8.1.7exceptiongroup 1.2.0grapheme 0.6.0grpcio 1.60.0importlib-metadata 7.0.1iniconfig 2.0.0mappy 2.26mappy-rs 0.0.7minknow-api 5.8.1more-itertools 10.2.0numpy 1.26.3ont-pyguppy-client-lib 6.5.7packaging 23.2pip 23.3.2pluggy 1.3.0protobuf 4.25.2pyfaidx 0.8.0pyRFC3339 1.1pytest 7.4.4pytz 2023.3.post1readfish 2023.1.1readfish_summarise 0.2.5rtoml 0.10.0setuptools 69.0.3tomli 2.0.1typing_extensions 4.9.0wheel 0.42.0zipp 3.17.0
I also tried python -c 'from pyguppy_client_lib.pyclient import PyGuppyClient as PGC; c = PGC("ipc:///tmp/.guppy/5555", "dna_r9.4.1_450bps_fast.cfg"); c.connect(); print(c)' because ls /tmp/.guppy yielded 5555. I still got the same error.
I would like to know what else to try in order to make the readfish validate step run successfully. I look forward to your response
— Reply to this email directly, view it on GitHub< https://github.com/LooseLab/readfish/issues/221#issuecomment-1909806074>, or unsubscribe< https://github.com/notifications/unsubscribe-auth/AB6SR5BHHK6FRZ7XZKHNWUTYQIVEJAVCNFSM6AAAAAATFZA2SGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBZHAYDMMBXGQ>.
You are receiving this because you commented.Message ID: @.***>
This message and any attachment are intended solely for the addressee and may contain confidential information. If you have received this message in error, please contact the sender and delete the email and attachment. Any views or opinions expressed by the author of this email do not necessarily reflect the views of the University of Nottingham. Email communications with the University of Nottingham may be monitored where permitted by law.
— Reply to this email directly, view it on GitHub https://github.com/LooseLab/readfish/issues/221#issuecomment-1909811573, or unsubscribe https://github.com/notifications/unsubscribe-auth/AKISK4M5SJH7KHUWVOYNOITYQIVOJAVCNFSM6AAAAAATFZA2SGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTSMBZHAYTCNJXGM . You are receiving this because you commented.Message ID: @.***>
--
Ayorinde O. Afolayan Postdoctoral Research Scientist, Institute for Infection Prevention and Control Medical Centre - University of Freiburg Breisacher Straße 115B - 79106 Freiburg im Breisgau Germany
+234 7039331157, +49 761 270-82025 ORCID ID: https://orcid.org/0000-0003-1405-2365
My stop-gap solution:
I noted that I needed to "start server on port: ipc:///tmp.guppy/5555" using guppy_basecall_server --log_path /var/log/guppy/ -c dna_r9.4.1_450bps_fast.cfg --device cuda:all --port /tmp/.guppy/5555
before the readfish validate
section worked. It seems strange that I would have to do this. Stopping the guppy_basecall_server command run (using Ctrl C) led to the disappearance of the 5555 socket (ls /tmp/.guppy
showed nothing) and error in readfish validate
re-run.
Caller could not be initialised, see below for details The provided guppy base-caller socket address doesn't appear to exist. Please check your Guppy Settings. ipc:///tmp/.guppy/5555
Am I doing something wrong?
What version of MinKNOW are you running?
Guppy version 6.5.7 is very outdated now and was the last version of guppy
shipped on ONT devices ( I think ). I suspect that you are now on dorado
on your box.
Can you run dorado_basecall_server --version
?
That is what is shipped with the current minknow, (dorado v7.2.13
) at the time of writing. I expect that if you update your ont_pyguppy_client_lib
to whatever the output of that is, the error will disappear.
Let me know if that doesn't help! Rory
Thank you very much for your help. The installed version of MinKNOW is v23.11.7
and minknow-api
is 5.8.1
.
I have updated my ont_pyguppy_client_lib
to the v7.2.13
output as it is the current version of the dorado_basecall_server
. However, I encountered another error about the caller not being initialized because The provided guppy base-caller socket address doesn't appear to exist. Please check your Guppy Settings. ipc:///tmp/.guppy/5555
.
I checked ls /tmp/.guppy
but it appears that the 5555
socket is missing. How can I get this back?
I managed to re-generate the 5555
socket using guppy_basecaller --print_workflows
, and re-ran the readfish validate
step again. However, I encountered the error
[ont/error] basecall_service::BasecallClient::worker_loop: Connection error. [timed_out] Timeout waiting for reply to request: LOAD_CONFIG
. Any suggestion to help in solving this issue permanently will be much appreciated.
Hi,
This is quite confusing. Your version of minknow should not have guppy_basecaller available. You should now be running dorado.
What you are doing is running a version of guppy in the background but this won't work for readfish as you have configured readfish with a connection to dorado (which is correct).
SO....
Have you rebooted your GridION since updating minKNOW? I would suggest doing this and then checking if the dorado service is running on reboot - to do this type:
sudo systemctl status doradod
Please let us know the output of that command.
Thanks. I rebooted GridION yesterday after updating minKNOW. After running sudo systemctl status doradod
, I see:
● doradod.service - Service to manage the dorado basecall server.
Loaded: loaded (/lib/systemd/system/doradod.service; enabled; vendor preset: enabled)
Drop-In: /etc/systemd/system/doradod.service.d
└─override.conf
Active: active (running) since Thu 2024-01-25 08:48:33 CET; 24h ago
Docs: https://community.nanoporetech.com/docs/sequence
Process: 760 ExecStartPre=/usr/bin/nvidia-smi (code=exited, status=0/SUCCESS)
Main PID: 1586 (dorado_basecall)
Tasks: 154 (limit: 76964)
Memory: 4.2G (high: 8.0G limit: 8.0G)
CGroup: /system.slice/doradod.service
└─1586 /opt/ont/dorado/bin/dorado_basecall_server --log_path /var/log/dorado --config dna_r10.4.1_e8.2_400bps_fast.cfg --ipc_threads 2 --port /tmp/.guppy/5555 --dorado_download>
Jan 25 08:48:36 GXB03102 dorado_basecall_server[1586]: Use of this software is permitted solely under the terms of the end user license agreement (EULA).
Jan 25 08:48:36 GXB03102 dorado_basecall_server[1586]: By running, copying or accessing this software, you are demonstrating your acceptance of the EULA.
Jan 25 08:48:36 GXB03102 dorado_basecall_server[1586]: The EULA may be found in /opt/ont/dorado/binJan 25 08:48:36 GXB03102 dorado_basecall_server[1586]: Config loaded:
Jan 25 08:48:36 GXB03102 dorado_basecall_server[1586]: config file: /opt/ont/dorado/data/dna_r10.4.1_e8.2_400bps_fast.cfg
Jan 25 08:48:36 GXB03102 dorado_basecall_server[1586]: model file: /opt/ont/dorado/data/dna_r10.4.1_e8.2_400bps_fast@v4.1.0
Jan 25 08:48:36 GXB03102 dorado_basecall_server[1586]: Starting server on port: ipc:///tmp/.guppy/5555
Jan 25 12:17:25 GXB03102 dorado_basecall_server[1586]: Config loaded:
Jan 25 12:17:25 GXB03102 dorado_basecall_server[1586]: config file: /opt/ont/dorado/data/dna_r10.4.1_e8.2_400bps_5khz_hac.cfg
Jan 25 12:17:25 GXB03102 dorado_basecall_server[1586]: model file: /opt/ont/dorado/data/dna_r10.4.1_e8.2_400bps_hac@v4.2.0
OK.
So could you please restart your GridION again. Then run the command:
sudo systemctl status doradod
If that shows the same output (with dorado active and running) could you then try (in the python/conda environment where you have installed readfish) running the python one liner:
python -c 'from pyguppy_client_lib.pyclient import PyGuppyClient as PGC; \ c = PGC("ipc:///tmp/.guppy/5555", "dna_r9.4.1_450bps_fast.cfg"); \ c.connect(); print(c)'
And let us know the output from that.
Thanks
Thank you very much.
The output from the python one-liner is:
PyGuppyClient(address='ipc:///tmp/.guppy/5555', config='dna_r9.4.1_450bps_fast', align_ref=None, bed_file=None, barcodes=None, status.connected, )
I also just tried the readfish validate
and it works! Thank you.
Dear Team,
I do have another issue. I tried to analyze the results using readfish stats
with the --toml
and --fastq-directory
arguments. However, I see an error
(Channel 72 not found in Channel Map or', ' Barcode barcode48 not found in toml human_chr_selection.toml')
My toml file has the same content as the original human_chr_selection.toml file except for the file path to the reference mmi file. I suspect that I have to create a TOML table named barcodes
and specify each of the barcodes within the toml file. Is this the way to go? Alternatively, could it be that the file path to the --fastq-directory
is wrong? In this case, I specified the filepath to the run directory (e.g., /data/AFO_V3
) or the file path to the fastq_pass directory (e.g., /data/AFO_V3/sample1/20240125_1411_MS00000_id_XXXXX/fastq_pass
). I also tried to specify the file path to a specific barcode directory hosting fastq files (E.g., /data/AFO_V3/sample1/20240125_1411_MS00000_id_XXXXX/fastq_pass/barcode01
). However, I still encountered the same error.
Hi @ayoraind I've opened a new issue (#325) and locked this thread. Please open new issues rather than commenting on old ones.
Hi everyone, We are testing Readfish "Testing basecalling and mapping". It seems there may be a problem in communication between ReadFish and Guppy. This is the error we are getting: [guppy/error] basecall_service::BasecallClient::worker_loop: Connection error. [timed_out] Timeout waiting for reply to request: LOAD_CONFIG
We execute the following command: /home/admin/miniconda3/envs/readfish/bin/readfish targets --device MN27944 --experiment-name "2022-12-16targetchry" --toml /home/admin/human_chr_selection.toml --log-file Ru_test.log
And after the toml verification we got the error above. Minknow 5.3.1 Guppy 6.3.8
Does anyone have a clue on what is happening? If you need more information just ask.
Many thanks! Nuria