Comments (15)
I know this is a little different, but it would be nice if there was a standard protocol for wired handhelds
from commandstation-ex.
@matt-hu wired handhelds are kind of a legacy item at this point with all the WiFi throttles coming out. We could consider supporting LocoNet or Xpressnet to get support for some wirex throttles, but not everyone will be happy and you'll probably end up with crazy bloat
from commandstation-ex.
There is not "the" standard for throttles. I think these are the major players:
- X-Bus (Multimaus)
- LocoNet (Digitrax and other license holders)
- Z21 (LAN/Wifi protocol to the Z21)
- CanBus (Märklin *)
All but the LAN based need a special bus hardware and then all of them need a interpreter and logic for that "language". To cram this into an Arduino may be possible but needs considerable programming and when the manufacturer of the throttle changes the protocol slightly in a firmware update to support problems. So I'd recommend to interface the throttle protocol on a "real" computer with standard software. JMRI has for example some of these components already implemented and can interpret and translate between different throttle protocols (at least to some extent).
Regards,
Harald.
(*) Different from the CanBus Zimo which is niche.
from commandstation-ex.
Ok, fair comments. I suppose wired interfaces are really a legacy thing now and wireless should be the way forward...
from commandstation-ex.
from commandstation-ex.
@davidcutting42 sorry, thats what I meant!
from commandstation-ex.
David, I would pose an argument on the wireless technologies. I am using NRF nodes and those nodes can control turnouts, accessories, signaling and block detection. And at a speed faster then serial is capable of. 2mps. I do believe there are other technologies out there as well.
from commandstation-ex.
Not arguing that wireless stuff has its place. But in large setups, a technology like LCC can be used to reduce the number of wireless points you need to connect to. You could still have wireless stuff, just consolidated by some sort of bus. Also keep in mind that nobody really cares how fast the bus is running - we're not streaming video or anything like that.
All that said, we will need to support both the wired and wireless setups. It's just a question of which tech to back. Wireless stuff is easier to support, particularly if no extra hardware modem is required, hardware buses require you to choose and then stick with it.
from commandstation-ex.
The number of points could be debatable. If you consider that something like a nano by itself using i2c and pcf9685 boards can control in theory over 900 turnouts that shows the power available. My thought is that the base CS handle the engines and if needed, the DCC codes that other devices might need. Allow a buss, say a serial bus, to connect to the outside world. Let the outside world system control the functions of the devices. A proper system can handle everything from turnout angles to lighting systems being turned on or off to controlling routes. CS does not have to do that. All CS needs is to know what is what. Is it a turnout, is it a signaling system saying to stop an engine because of a conflict. All that overhead can be handled and only the info needed by CS sent to it. By the way, love the discussion. Just think, we are sitting here thinking about how we can improve and expand a hobby and make it so many more people get involved.
from commandstation-ex.
@marada1 Interesting The RF24 ( if thats the NRF you refer to ) is operating in the same frequencies as WiFi. How big is the density of RF24 emitters you can sustain without any impact on nearby WiFi networks and vice versa and even among themselves ? How many RF24 modules can i operate in // lets say on lets say 2m2 surface without having them shooting each other ?
from commandstation-ex.
I was concerned about interference as well but that does not seem to be a problem. There are around 200 channels available to use with the NRF2401 boards. As for density, in theory you can run over 1200 nodes in one network. The way we keep them from clashing with one another is by first in the transmit packet say which node the message is for and second, what function we are looking to do. If I knew how to embed a video I could show 5 nodes working together.
from commandstation-ex.
Send the video link on discord that may be easier. I am interested to see that one :) how do you address the nodes ? I guess they don't have an IP address :)
from commandstation-ex.
Just wondering if this topic is still being discussed with LCC and EXRAIL out now? Personally, on a large layout, I would like to see physical cat5 wiring using Ethernet to wire all the accessories and switches. With LCC, it seems to need a CAN bus which can be expensive. With I2C we have distance limitations. Ethernet between the command station and remote IO-Extenders would be awesome.
from commandstation-ex.
We have been working closely with LCC and you can find the status on that project in Discord. There is a channel just for #LCC we can make you a member of.
We don't have any real limitations with I2C. Depending on the configuration, there can be an issue with pullup resistance that you have to tune in some cases, but we can also work around that with a cheap I2C multiplexor board. We have EX-IOExpander which uses an arduino as its own accessory controller and extender. And we have tested using our RS422 extender board with CatX cable until we ran out of cable at 220 meters. Team member Henkk on Discord can give you the scoop, Paul also. We need to put all that into one simple tutorial page.
from commandstation-ex.
We have been working closely with LCC and you can find the status on that project in Discord. There is a channel just for #LCC we can make you a member of.
We don't have any real limitations with I2C. Depending on the configuration, there can be an issue with pullup resistance that you have to tune in some cases, but we can also work around that with a cheap I2C multiplexor board. We have EX-IOExpander which uses an arduino as its own accessory controller and extender. And we have tested using our RS422 extender board with CatX cable until we ran out of cable at 220 meters. Team member Henkk on Discord can give you the scoop, Paul also. We need to put all that into one simple tutorial page.
Yes, please make me a member of the LCC channel. I am setting up a test board for our club layout. I would like to duplicate the work done with Henkk and Paul. BTW, I am happy to write the tutorial page too.
from commandstation-ex.
Related Issues (20)
- [Feature Request]: Wireless DCC communication Battery driven Locs (gardenrailway) HOT 2
- [To Do]: ARDUINO UNO R4 WIFI HOT 1
- [Support Request]: Unable to use Analog pin A6 and A7 as sensors on Arduino Nano HOT 3
- Servo operated turnouts
- Watchdog on DCC-EX protocol connection
- v5 : sensors not working with Rocrail (whereas 4.1 does) HOT 1
- Error message 'Could not pull latest updates from GitHub'
- [Feature Request] Simulate simple I/O in IO_PCA9685pwm
- Incorporate Track Modes into OLED Display HOT 2
- JR command does not include default roster 0.
- [Feature Request]: Add EEPROM Functionality to ARDUINO_ARCH_ESP32 HOT 4
- boucle de retournement
- Network IO extender via Ethernet
- Ethernet not obtaining IP address HOT 3
- Operate KATO Turnouts using Ex-CommandStation HOT 1
- Support for Nextion touch HMI displays HOT 3
- Dcc-ex and Traincontroller HOT 2
- Exrail to I2C for turnout control? HOT 1
- Readme.md has dead link HOT 1
- Installation Error HOT 5
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 commandstation-ex.