Need help sending 1 hex byte at a time through UART. #10925
Unanswered
donmerchant
asked this question in
RP2040 / Pico
Replies: 3 comments 3 replies
-
|
Sorry those dark large commands are commented out in my code and showed up here for some reason. |
Beta Was this translation helpful? Give feedback.
1 reply
-
|
I have no experience using DMX at all, but shouldn't you send binary data over the UART ? |
Beta Was this translation helpful? Give feedback.
0 replies
-
|
I found my answer after much searching. As mentioned above, yes it would need to be sent as binary data. As an example this works: Question solved. |
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
I'm working on DMX with Raspberry Pico. I have a pico board with RS485 hat and trying to communicate with a Chauvet RGB T6 par light. I've tried some code from Jostein Lower https://github.com/jostlowe/Pico-DMX and Clacktronics https://github.com/clacktronics/pyb_dmx but can't get either of them to work.
I have also programmed a Parallax Propeller 1 and gotten it to work and also have an ADJ DMX Controller that also works that I use as a reference. So I connected my Saleae logic analyzer to see what the output looks like. The only difference I can see between the Propeller / ADJ and the Pico programs is that on the Propeller and ADJ traces there is a MARK TIME AFTER SLOT after each byte sent in the packet that is not present in either of the Pico programs.
Josteins program is written in PIO and C (?) which I'm not educated enough to try and modify. So I've been playing with the Clacktronics version trying to send just 1 byte at a time and have the MARK TIME AFTER SLOT between each. No luck.
The problem I'm having is being able to send just 1 hex byte. For some reason I can't get it to be a hex number. Here's some code I tried:
Maybe someone here can help me out understanding what I need to do?

Here's a screenshot showing the MARK between the stop of one byte and start of the next.
Beta Was this translation helpful? Give feedback.
All reactions