Keyboard Shortcuts
Likes
- Crestron
- Messages
Search
Re: ONVIF Camera PTZ Control Protocol
Just to see if my word was good, I tried exactly what I proposed, and got results in less than 20 minutes on an Axis PTZ camera.
First minute: I opened ChatGPT and typed "How on a Raspberry Pi in Python can I send PTZ commands to an ONVIF-compliant IP camera?" Second to fifth minute: reviewed the script it gave me, and put my actual camera IP, username, and password in place of its placeholders.? Ran the script.? Got an error. Sixth through tenth minutes: troubleshot "Sender not authorized" error message.? Turns out I have to add a special ONVIF username and password to the camera. Eleventh through fifteen minutes: still got the "sender not authorized" message.? Googled for help, turns out there's also a checkbox I had to click on Axis cameras to unblock something. Sixteenth through seventeenth minute: got an "Unknown Error", turns out the Python script asks the camera for all of its configuration info and never uses it.? Commented that part out, problem went away. Eighteenth minute: ran the script again.? The camera started moving to the right (the sample action that ChatGPT coded) for 10 seconds.? Awesome.? Other than my PTZ cam is now pointed a at wall :) , so, I manually moved the camera back through its web UI. Since I'm done with this script, I need do no further...but to make it talk to Crestron, I would add a UDP listener and add actions for each of the four cardinal directions (or ask ChatGPT how to load a named/numbered preset) and then a SIMPL UDP/IP connection to trigger this from within a project.? I'm too lazy to do this myself, but maybe ChatGPT could do this for me. Working script that simply moves the camera (with no UDP listener)
Not to beat a dead horse, but my next request to ChatGPT was: "Great! Let's modify this script to first 1) remove the request for the configuration information we aren't using, and 2) also listen on UDP port 5555 for packets containing a single string "UP", "DOWN", "LEFT", "RIGHT", and upon receipt, move the camera the named direction." The script it generated did exactly as requested and needed no modifications (beyond re-adding my credentials), and I used a "UDP Packet Sender" app to craft test packets to make it work.? It moves the camera too far per step, but it's easy to see where I can change a number to fix that.? Not pasting it for the sake of brevity unless someone asks (it gets long since ChatGPT made it multi-threaded) I'm into this 30 minutes just for the glee, and have a working solution... that is, if a RasPi is a tolerable addition to the setup. |
SSL errors
system rebooted Jan 25
124. Notice: CIPCommandProcessor.exe # 2024-01-27 09:26:01? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:55575... pending.?
125. Notice: CIPCommandProcessor.exe # 2024-01-27 09:26:11? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:55575... pending.?
126. Error: LogicEngine.exe [App 1] # 2024-01-27 23:13:49? # Did not receive End of Query Acknowledge from device at Slot-05.IP-ID-7C.
127. Notice: CIPCommandProcessor.exe # 2024-01-28 07:53:01? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:56420... pending.?
128. Notice: CIPCommandProcessor.exe # 2024-01-28 07:53:11? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:56420... pending.?
129. Notice: CIPCommandProcessor.exe # 2024-01-28 07:53:21? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:56420... pending.?
130. Notice: CIPCommandProcessor.exe # 2024-01-28 07:53:21? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:56420... closing socket.?
131. Notice: CIPCommandProcessor.exe # 2024-01-28 07:53:31? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:56419... pending.?
132. Notice: CIPCommandProcessor.exe # 2024-01-28 07:53:41? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:56419... pending.?
133. Notice: CIPCommandProcessor.exe # 2024-01-28 07:53:51? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:56419... pending.?
134. Notice: CIPCommandProcessor.exe # 2024-01-28 07:53:51? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:56419... closing socket.?
135. Error: LogicEngine.exe [App 1] # 2024-01-30 11:18:31? # Did not receive End of Query Acknowledge from device at Slot-05.IP-ID-7B.
136. Notice: CIPCommandProcessor.exe # 2024-01-30 16:00:37? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58595... pending.?
137. Notice: CIPCommandProcessor.exe # 2024-01-30 16:00:47? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58595... pending.?
138. Notice: CIPCommandProcessor.exe # 2024-01-30 16:00:57? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58595... pending.?
139. Notice: CIPCommandProcessor.exe # 2024-01-30 16:00:57? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58595... closing socket.?
140. Notice: CIPCommandProcessor.exe # 2024-01-30 16:01:07? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58594... pending.?
141. Notice: CIPCommandProcessor.exe # 2024-01-30 22:42:03? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58831... pending.?
142. Notice: CIPCommandProcessor.exe # 2024-01-30 22:42:13? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58831... pending.?
143. Notice: CIPCommandProcessor.exe # 2024-01-30 22:42:23? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58831... pending.?
144. Notice: CIPCommandProcessor.exe # 2024-01-30 22:42:23? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58831... closing socket.?
145. Notice: CIPCommandProcessor.exe # 2024-01-30 22:42:33? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58830... pending.?
146. Notice: CIPCommandProcessor.exe # 2024-01-30 22:42:43? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58830... pending.?
147. Notice: CIPCommandProcessor.exe # 2024-01-30 22:42:53? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58830... pending.?
148. Notice: CIPCommandProcessor.exe # 2024-01-30 22:42:53? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58830... closing socket.?
149. Notice: CIPCommandProcessor.exe # 2024-01-31 08:04:54? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58946... pending.?
150. Notice: CIPCommandProcessor.exe # 2024-01-31 08:05:04? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58946... pending.?
151. Notice: CIPCommandProcessor.exe # 2024-01-31 08:05:14? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58946... pending.?
152. Notice: CIPCommandProcessor.exe # 2024-01-31 08:05:14? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:58946... closing socket.?
153. Notice: CIPCommandProcessor.exe # 2024-01-31 08:05:24? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58945... pending.?
154. Notice: CIPCommandProcessor.exe # 2024-01-31 08:05:34? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58945... pending.?
155. Notice: CIPCommandProcessor.exe # 2024-01-31 08:05:44? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58945... pending.?
156. Notice: CIPCommandProcessor.exe # 2024-01-31 08:05:44? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:58945... closing socket.?
157. Notice: CIPCommandProcessor.exe # 2024-02-01 00:31:51? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.233:59892... pending.?
158. Notice: CIPCommandProcessor.exe # 2024-02-05 21:49:53? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:65342... pending.?
159. Notice: CIPCommandProcessor.exe # 2024-02-05 21:50:03? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:65342... pending.?
160. Notice: CIPCommandProcessor.exe # 2024-02-05 21:50:13? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:65342... pending.?
161. Notice: CIPCommandProcessor.exe # 2024-02-05 21:50:13? # AcceptSecureClient: SSL Negotiation not complete for 192.168.10.1:65342... closing socket.?
hacker? |
Re: Samsung RS232 Direct Volume commands
¿ªÔÆÌåÓýJust a thought, you could go old skool . . . ? TXA (analog to serial) symbol ? String parameter = \x08\x22\x01\x00\x00? (do not use quotes) ? Volume level is connected to analog input ? Use AOS to generate a pulse on change of volume level, connect to trigger input ? Set format parameter to 258. ? No s+, no PITA, might be too simpl ¡¡¡¡.. ? From: <[email protected]> on behalf of <dontrobthemachina@...> ? Given Jonathons python script, you could use the following to always out the correct string when inputting a volume of 0 - 100: CHANGE VOLUME ? |
Re: Samsung RS232 Direct Volume commands
Given Jonathons python script, you could use the following to always out the correct string when inputting a volume of 0 - 100: CHANGE VOLUME ? |
Re: ONVIF Camera PTZ Control Protocol
This is one of those problems I'd try to solve by using ChatGPT, Raspberry Pi, and Python.? The reason for these is simpl(e): ChatGPT has access to billions of lines of Python code, yet virtually no SIMPL / S+ / S# code, in order to be proficient at giving high quality solutions.? By ChatGPT, I'm referring to the premium version that costs $20/month -- there's a huge quality difference.? ChatGPT will write "hello world" scripts to talk to new hardware and get it about 95% right on the first try, reducing the workload to just filling in that 5% gap.
The basic premise is this:? Can I get ChatGPT to help me write code to get a Raspberry Pi to move that camera the way I'd like?? Generally I can get something new and novel talking in 20 minutes or less to a RasPi, with a fair bit of luck.? When I ask it to write for ONVIF, it already knows how to pull in open-source ONVIF libraries and take advantage of other people's hard work. If I succeed, then it's a simple matter of getting SIMPL to "push the buttons" on that Raspberry Pi over serial or UDP (which works reliably), and then configuring the RasPi to automatically start my middleware upon boot.? Set and forget.? RasPi's weak spots are overheating and corrupting SD cards, both of which are solved just by buying commercial grade (e.g. DIN-rail-mount) RasPi's with inbuilt eMMC memory so that SD cards aren't needed.? Passive cooling works better than fans (because a RasPi with these middleware scripts sits at 0-2% CPU usage all day...they don't generate much CPU heat to need the fan... fans become a mechanical point of failure and I'd like a solution I can set and forget)... |
Re: ONVIF Camera PTZ Control Protocol
Everyone on this tread is asking for a generic ONVIF driver, when I think they should be asking for a Manufacturer specific driver.
I've been using an ICRealtime NVR, and IP module. It actually controls the PTZ cameras better than its own WebGUI. The WebGUI moves it a little roboticly. But when put on the buttons of a HR310, through the module, it drives like an RC Car. |
Re: Samsung RS232 Direct Volume commands
Glad to help. The checksum calculation is a PITA compared to a lot of others, I use this python script for one-off commands:
# Samsung Ex-Link checksum calculator # Jonathan Dean (jonathand@...) # These are some commands VOL_SET_DIRECT = [0x01, 0x00, 0x00] # value is 0x00 to 0x64 POWER_SET = [0x00, 0x00, 0x00] # value is 0x01 for off, 0x02 for on INPUT_HDMI = [0x0A, 0x00, 0x05] # value is 0x00 for HDMI 1, 0x01 for HDMI 2, 0x02 for HDMI 3, 0x03 for HDMI 4 # Set the command you want to use here, either from the predefined ones or build a list of three bytes command = POWER_SET # Set the value you want to use as the argument here value = 2 cmd = [0x08, 0x22, *command, value] cks = (255 - (sum(cmd)) + 1) % 0xff cmd.append(cks) print(f"Checksum is 0x{cks:02X}") print("Full command is " + "".join(f"\\x{x:02X}" for x in cmd)) |
C# Pro Door lock
#programming
#simplsharppro
Does anyone have an example of Home-Connect-DL door lock??
I can't seem to find any info on it. Thanks |
Re: xio cloud deployment steps
I don't feel they did a great job of actually documenting this.
For #2 you are correct, the client needs to create an account then add you as a "Support Provider" under the Settings -> Support Providers tab. You would need to provide them the XIO account number for your companies account that you get by following the XIO cloud link on the crestron home page. I believe this account is auto created for your company. For #1 I would go through the same process to have them create the account then let their trial run out. |
xio cloud deployment steps
I have take all the XiO Cloud courses but have never gone through a formal deployment. I am not clear on the best practice of deploying via XiO Cloud in the following two conditions.
1. Client does no wish to pay for XiO Cloud service but I see benefit of utilizing for quick deployment. Do I simply create a trial version of XiO Cloud, create the rooms, add devices and deploy, and simply let the 60 day trial run up?? 2. If client does wish to pay for service, are they simply adding me (as the programmer etc) to the users of their own person XiO Cloud account (once created after license purchase), which then gives me access to configure the rooms and add as needed? |
Re: Construct and XPanels
I to am dipping my toes into Construct this week. I was sent a test TST-1080 for evaluation and wanted to build out something in Construct before I felt comfortable deploying projects in the wild. I have also had this issue with trying to run an "XPANEL" on my test RMC3 and also my VC4 server. I have been struggling to find any documentation of how to implement ch5z "Xpanels" on processors as well. I am following this topic and hopefully someone with a little more Construct know how hops in.
|