Comments (10)
Hi @ScobbyDoo and I'm happy that you want to try it.
The schematic and PCB design files are in the "hardware" branch: https://github.com/OpenLightingProject/rp2040-dongle/tree/hardware. The files are created using KiCad.
It's basically the baseboard + some baseboard options that you can connect to the base board. I have several ones here, ordered at JLCPCB.
Of course, you can also do a prototyping solution and simply hook up some RS-485-Driver breakout-boards to the RPi Pico board via jumper wires. The connections can be seen in the KiCad-schematics but don't hesitate to ask here if something is unclear.
Each IO board usually contains one I2C-EEPROM to give the base board some information about the IO board (available ports, port direction, .....) but at the moment, the firmware just assumes 16 OUTs
from rp2040-dmxsun.
Oh, and the KiCad-files are automatically rendered to PDFs using GitHub actions. The latest results are here: https://github.com/OpenLightingProject/rp2040-dongle/suites/4741501920/artifacts/130997826
from rp2040-dmxsun.
But hiw do i send command to drive dmx?
Is it standalone system ,or usb , Ethernet option available.
from rp2040-dmxsun.
Since I don't know your skill level, regarding DMX-512 hard- and software, it's a bit hard to guess where to start.
If you flash the firmware to an RPi Pico board, it will reboot and start generating valid DMX data right away. However, it's all ZEROs of course. To get it to send meaningful data, you need to connect the Pico-board to some kind of PC via USB. If the firmware is running properly, the Pico board will look to the PC like an Ethernet network card. So it's not real Ethernet but your PC will see a new network card (if your OS is not too old) and will get an IP address from the Pico board via the DHCP protocol. The exact IP that you need to talk to the board differs from board to board (so we can support multiple boards connected to the same PC) but will be in the range of 169.254.XXX.1. You can see the IP if you run ip addr
on Linux or if you hover the "USB devices" task bar icon on Windows.
Then, you can fire up your favourite web browser and enter the board's IP in the address bar. The web interface of the board should open, showing you the general system status. At the top, there is a item called "Console". If you click there, you will be able to modify the values via the web browser.
The other alternative is to use some kind of DMX-data-generating software such as OLA or QLC+. You can send E1.31 (sACN) or ArtNet frames from that software running on your PC to the Pico board via the virtual Ethernet connection. The Pico board should react to those values and output the data as DMX-512 on one of the GPIOs (depending on universe value in the sACN or ArtNet frames). You should also see the values change on the web interface.
All this can be done without additional hardware. The hardware is only needed if you want to actually connect DMX-512 fixtures, use the wireless modes or want to see the board's status on the status LEDs.
... and I know that I should update the Readme file with all of this information ;)
from rp2040-dmxsun.
So to answer the questions:
It doesn't have a real hardware Ethernet option as of now. Of course, one could attach an SPI or UART-based Ethernet module but it's not yet supported.
It works when connected to a host (PC or RaspberryPi or similar) via USB.
It can also work stand-alone when powered via micro USB connector (power bank or wall-USB power adapter) and when using the wireless module.
from rp2040-dmxsun.
Yes, I'm familiar with artnet & e1.31
I will attach Ethernet(lan8720a) to controller & send data over udp to mcu ,as per calculation (16 x 512 byte ) universes how do i assign those data to specific data lines
Like store first 512 byte to 1st data line
2nd 512 to 2nd data line
& So on , fill full buffer & driver it on rs485 line
Now the point is how do i fill that buffer & drive it?
I suppose memcpy function may works for thatπ
Sorry for silly logics(if their is any)
from rp2040-dmxsun.
Where to you plan to attach the LAN8720a? As I wrote above, the firmware won't recognize or use it. The Ethernet-Emulation uses the USB connection to the host PC. You don't need an Ethernet-cable if you want to send data from your PC to the dongle.
The assignment of the data to the "data lines" is done automatically. In ArtNet and sACN you can specify a "universe id/number". That number is used to decide on which pin the data will be sent/driven. Yes, memcpy is also used in the background but the firmware/code for all that is already done.
To go step by step: Do you have a pico-board connected via USB to your PC with the rp2040-dongle firmware running?
from rp2040-dmxsun.
Oh, and to avoid any mis-understandings: This project is not a library that you should include in you projects. It's a project for a "complete device" on its own. If you simply want to "use it", there's no code that you need to write. Just build/order the hardware and you're good to go.
from rp2040-dmxsun.
@ScobbyDoo : I've prepared a new version of the README: https://github.com/kripton/rp2040-dongle/tree/readme
Check it out and tell me if there's anything unclear π
from rp2040-dmxsun.
For connrcting Ethernet, see #29. Closing this due to inactivity, feel free to reopen
from rp2040-dmxsun.
Related Issues (20)
- Add optional Grove-compatible connectors to IO boards
- Add some sort of source-code-level documentation HOT 5
- Implement configurable patching via the web interface
- Demo version of the website HOT 2
- Re-investigate on zeroconf / mDNS HOT 2
- Naming HOT 1
- uf2-file HOT 2
- WebUI: Update react from 17.x to 18.x
- Support Web interface, Art-Net, E1.31 and EDP via WiFi on the Pico W HOT 6
- Use libartnet for Art-Net tx/rx instead of own implementation HOT 1
- Design a "direct GPIO to XLR" board
- WebUI: Use websockets instead of http polling/API HOT 3
- DHCP request not acked HOT 10
- slot configuration not completely implemented HOT 1
- Replace kicad-exports with KiCad CI/CD template
- rp2040-dmxsun - system compilation error HOT 12
- Web-UI compilation should be integrated properly
- pico rp2040 ethernet branch build failure (tcpecho_raw.h not found) HOT 18
- pico only blinks HOT 15
- No new .uf2 build last 5 months HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rp2040-dmxsun.