Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 02 14:29
    GitLab | Pete 'mash# Morgan pushed 19 commits to OpenPLC_v3
  • Nov 25 08:24
    GitLab | Pete 'mash# Morgan pushed 1 commits to OpenPLC_v3
  • Nov 25 08:17
    GitLab | Pete 'mash# Morgan pushed 2 commits to OpenPLC_v3
  • Nov 23 00:42
    GitLab | Pete 'mash# Morgan pushed 111 commits to OpenPLC_v3
  • Nov 05 19:38
    GitLab | Garret Fick pushed 83 commits to OpenPLC_v3
  • Aug 18 12:05
    GitLab | Pete 'mash# Morgan pushed 1 commits to openplc_firmware
  • Aug 17 21:50
    GitLab | Pete 'mash# Morgan pushed 1 commits to openplc_firmware
  • Aug 17 21:49
    GitLab | Pete 'mash# Morgan pushed 1 commits to openplc_firmware
  • Aug 17 21:25
    GitLab | Pete 'mash# Morgan pushed 1 commits to openplc_firmware
  • Aug 17 21:24
    GitLab | Pete 'mash# Morgan pushed 1 commits to openplc_firmware
  • Aug 16 20:52
    GitLab | Pete 'mash# Morgan pushed 102 commits to OpenPLC_v3
  • Aug 13 21:20
    GitLab | Pete 'mash# Morgan pushed 99 commits to OpenPLC_v3
  • Aug 12 17:11
    GitLab | Pete 'mash# Morgan pushed 1 commits to openplc_firmware
  • Aug 12 16:55
    GitLab | Pete 'mash# Morgan pushed 2 commits to openplc_firmware
  • Aug 12 16:01
    GitLab | Pete 'mash# Morgan pushed 3 commits to openplc_firmware
  • Aug 12 04:57
    GitLab | Pete 'mash# Morgan pushed 3 commits to openplc_firmware
  • Aug 11 22:25
    GitLab | Pete 'mash# Morgan pushed 1 commits to openplc_firmware
  • Aug 09 18:27
    GitLab | Pete 'mash# Morgan pushed 1 commits to OpenPLC_v3
  • Aug 09 08:09
    GitLab | Pete 'mash# Morgan pushed 3 commits to OpenPLC_v3
  • Aug 09 05:35
    GitLab | Pete 'mash# Morgan pushed 8 commits to OpenPLC_v3
Pete 'mash# Morgan
@pedromorgan_gitlab
This is part of my cunning plan to create the "cookbook" site which will link all the stuff together. (my dream)
we just setup redirects on the links.. no problem there..
the sitemap.xml etc will help there big time..
But this is the problem i forsee. .and where trying to help with eg the firmware..
So atmo the main openplcproject.com links to downloads and zips
and using gitlab knocks out the tarballs.. etc https://openplcproject.gitlab.io/openplc_firmware/platforms_index.html
Garret Fick
@garretfick
It will eventually get there, but I'm focused on the minimum set of things that I need to do to push out a release before the end of the year.
From that perspective, I'm only focusing my time on two things:
  1. integration testing
  2. updated docs for the changes that have been made
Pete 'mash# Morgan
@pedromorgan_gitlab
Garret Fick
@garretfick
That's part of it, but not all. I'm updating the user (not API) docs right now
Garret Fick
@garretfick
Just want to put out what I'm proposing for integration tests
https://github.com/garretfick/OpenPLC_v3/tree/feature/INTEGRATION_TEST
I need to get modbus tests implemented first, but it is coming soon
Feedback is appreciated
Thiago Alves
@thiagoralves
Where is your user documentation for the changes?
Is it in your repository?
Garret Fick
@garretfick
Nope, for more it is just in the changed files
But it is quite small
Garret Fick
@garretfick
@thiagoralves Have you ever checked if the response from write coils is correct? For some reason, it is always coming back true. However, it is correctly interpreting the write message and the read response updates based on the write message?
# Set the coil to true
resp = client.write_coil(0, True, unit=unit)
self.assertEqual(1, resp.value)
time.sleep(1)

# Validate that the coil now reports true
rr = client.read_coils(0, 1, unit=unit)
bit_value = rr.getBit(0)
self.assertTrue(bit_value)

# Write the value false to the coil
client.write_coil(0, False, unit=unit)
# THIS FAILS??? self.assertEqual(0, resp.value)
time.sleep(1)

# Validate that the coil now reports false
rr = client.read_coils(0, 1, unit=unit)
bit_value = rr.getBit(0)
self.assertFalse(bit_value)
That's my very simple test - it is very strange that the marked part is failing - I'm almost thinking it is a pymodbus error, but that's hard to believe
Thiago Alves
@thiagoralves
It depends on what your ladder program is doing
Garret Fick
@garretfick
It never sets that value
Thiago Alves
@thiagoralves
PLC logic always superseed modbus requests
Garret Fick
@garretfick
Next step is probably wireshark
Thiago Alves
@thiagoralves
Are you sure? That would be the only reason why it would get stuck on true
Garret Fick
@garretfick
It is very strange, but it isn't stuck on true. The value does change
It is just the response message from the write request that is somehow not right
Thiago Alves
@thiagoralves
Weird
Garret Fick
@garretfick
Yeah, it is very strange
Thiago Alves
@thiagoralves
Try downloading radzio modbus (a free modbus poll program)
Garret Fick
@garretfick
Because the old (and new) code both just don't touch those parts of the message. It just echos back the request
Thiago Alves
@thiagoralves
Then you can check the status of the coil in real time
Garret Fick
@garretfick
No worries... I'll capture the packets
Thiago Alves
@thiagoralves
Also, check the monitoring page on the runtime to see if the coil is changing
Garret Fick
@garretfick
I added debug messages in the runtime, and that part suggest all is ok
thanks :)
Thiago Alves
@thiagoralves
By old code do you mean the code on the master branch?
It only echoes the beginning of the request, the actual data is gotten from the buffers
Garret Fick
@garretfick
Woo hoo! Integration tests are ready for a pull request. They don't cover all capabilities yet, but I'm working on it
thiagoralves/OpenPLC_v3#118
I did discover (and fix) multiple issues where capabilies had diverged
The current tests are implemented in one massive file. I'll be splitting it up in a follow up change as I'm next focusing on the modbus master
Thiago Alves
@thiagoralves
Wow... you never rest?
Garret Fick
@garretfick
Nope. I even managed to have two days of skiing Fri and Sat
Garret Fick
@garretfick
image.png
For the sake of general interest, that is my current roadmap that fits with some of the work I've been doing
Key things you might see, beyond features, are being able to put together an "official release" every 4 months. What that means isn't defined, but the basic idea is to develop capabilities that enable more continuous delivery capabilities (even if only released periodically)
Garret Fick
@garretfick
@pedromorgan_gitlab can you point me to the slice code for your website changes?
Garret Fick
@garretfick
I think I found it... had a local copy from a long time ago
Pete 'mash# Morgan
@pedromorgan_gitlab
@garretfick its in the www refactor thiagoralves/OpenPLC_v3#79