DCC++ Update Project 2020

FlightRisk Feb 16, 2020

  1. Atani

    Atani TrainBoard Member

    1,471
    1,770
    37
    Same here. With the ~1V+ drop by the L298 (and other h-bridge chips) it is critical to have a higher voltage and almost all decoders will work with it without issues.

    This will result in ~10.5V on the rails for most usages. This would work for N/Z but the locos may run rather slowly.

    It would really depend on the scale but I would suggest having around 15VDC as the track supply or even higher for HO or larger.
     
  2. FlightRisk

    FlightRisk TrainBoard Member

    548
    237
    14
    Are you talking about using the C++ and Make workflow? Either tell me what to do or set it up if you would rather.

    Also, you mentioned using issues. How does that work? I was going to ask a different question, but see you just created our first issue ;)
     
  3. Atani

    Atani TrainBoard Member

    1,471
    1,770
    37
    https://github.com/DCC-EX/BaseStation/pull/5

    Once this has been merged all future PRs will automatically start a test build and we can review them there. There is a problem with the ESPAsyncTCP code not working with the latest ESP8266 code, I'll ping the dev and see if he can sort it out or suggest a fix. For now it is setup to only build the AVR code and you can see a successful run here: https://github.com/DCC-EX/BaseStation/actions/runs/49069853
     
    Last edited: Mar 3, 2020
  4. FlightRisk

    FlightRisk TrainBoard Member

    548
    237
    14
    Excellent work Mike! Thanks. I added my review. We can probably merge.

    Separate question are you using the terminal like with git bash to work on your local machine or are you using GitHub Desktop? I want to work with someone to expand on the CONTRIBUTING.md file with steps on how to contribute and probably want to cover both methods to clone, branch, edit, PR, etc. Plus I need it myself to remember it all ;)
     
    Last edited: Mar 4, 2020
  5. Atani

    Atani TrainBoard Member

    1,471
    1,770
    37
    I was using the GitHub web interface for that PR. I normally do almost all work via command line or inside vscode.

    Sent from my ONEPLUS A5010 using Tapatalk
     
  6. Roger Beschizza

    Roger Beschizza TrainBoard Member

    58
    8
    3
    I have drawn a schematic which I think sets out the Arduino set-up for JMRI running from what I understand from the videos I have seen and is what I think has been decided as a start point. I'm not sure where the PC, Keyboard and mouse fit in so they are not connected to anything. This is my first stab at my own set-up so your comments appreciated as to the correctness of what is included and a note of what isn't. Ideally, I would like to run it all from a PC - eventually.

    If you see this in time I can give you access to the document which I will tidy up in due course.

    I have a hospital visit tomorrow for some planned minor surgery so may not be on here for a few days. Rest assured I will return.

    R-
     
  7. Keith Ledbetter

    Keith Ledbetter TrainBoard Member

    279
    195
    12
    Roger we've found your calling for the project! I really like it. Hopefully you can extend to other setups and scenarios as it's great documentation and importantly graphical update to the original that we can use for our project.
     
  8. Roger Beschizza

    Roger Beschizza TrainBoard Member

    58
    8
    3
    Yes, I see a similar image for each set-up. Someone else will have to put them in the repository though, still can't figure that out. R-
     
  9. FlightRisk

    FlightRisk TrainBoard Member

    548
    237
    14
    I was just thinking about this today. I will create a folder under docs for resources. Under that will be Photoshop/gimp files, images, etc. That way we can have originals of things to recreate or change graphics without destroying image quality by compressing multiple times. If anyone has preferences for folder names, let me know.

    I'll send you some help on pushing things up to GitHub. Have you used the terminal by installing git bash? Or installed GitHub Desktop which is a visual interface that will be easier to understand? If not, no matter. You can upload images and files just like you would here or a photos app. The GitHub web interface even has drag and drop. The only differences are you can add a description and click a button to tell one of us to "pull" it in for you. That's a pull request or "PR". This will be a great place for you to start learning! When you feel comfortable, you can merge things in yourself. 25mb limit per file for the GUI. Using the command line we can go up to 100mb. They think if you know command line you deserve perks ;)
     
  10. Dex

    Dex TrainBoard Member

    55
    30
    5
    Sorry for the absense guys i been working getting stuff for my layout. Since we are discussing requirements for a basic system and getting it up and running I think its important to link to multiple power supplies what motor shield to run with specific locomotive counts. I am looking now to upgrade my motor sheild from the base one and no idea which ones work and do not and i have been researching for a while. So i am not sure if any of this has been said but help with that and wiring diagrams will be really helpful. Also I have my local hobby guy i go to for a lot of my train items and he also states that people who run DCC++ burn things up due to shorts or electrical issues. Maybe if we can dispell this notion and help alleviate the fear that may come from a do it yourself system we may be able to gain more traction in the marketplace and make the manufacturers come down in pricing on DCC CS. Just my 2 cents. I will also start on the installer the main thing is the arduino compiler with libraries and obtaining source code from git once that is done flashing a .hex bin file from C# is absolute cake. So it for sure is possible just need to find what i need may just need to use git to obtain all required libraries. I will be looking more into it. I am really excited for this project as a new modeler and a seasoned Developer. Please let me know what else i can assist with i will be trying to dedicate some time each week to help with this project.
     
  11. Keith Ledbetter

    Keith Ledbetter TrainBoard Member

    279
    195
    12
    I think the power needs and voltages by scale, # trains etc would also be useful with links to by based on your setup caveat being they are only guidelines and not promises they'll be optimal for your layout. This one would cover most cases except when you need more than 4 A and no one is going to be doing that on our "basic" version.

    https://www.amazon.com/gp/product/B07Z4RBW7D/ref=ox_sc_saved_title_1?smid=AA0YO4F2UD50F&psc=1

    On a separate note @Sumner and I have developed the documentation that is in very basic but all you need format pulling llots of info together into 2 basic pages. One covering JMRI setup and specifically with a Pi and one focusing on the hardware setup and loading the Arduino sketch. It also has links to provide either a flashed micro SD card for the Pi and/or I have volunteered to do the Arduino load/trace cut, jumpers, etc with profits going to trainboard and jmri as we think this may well get more people into DCC++ EX.

    It will need work and edits over time but I think it's a great start (sumner can provide the link as he is hosting on his site at this point) but I think we should wait to "go public" with it until we have our first DCC++ EX code officially published unless others disagree
     
  12. FlightRisk

    FlightRisk TrainBoard Member

    548
    237
    14
    @Sumner, @Keith Ledbetter, @Roger Beschizza Let's try to coordinate better on the docs. And maybe put copies of things on Github in a folder I'll create. I keep feeling like we are re-inventing the wheel. I have found literally dozens of sites all with almost the same information just presented differently. Have you looked at the Wiki and such on the original DCC++ Web page? Locoduino? Train Electronics? Clubcaldes? They all have a variation of what Gregg's initial work. For example, there are many different versions of tutorials or a "quick start" with art, photos, etc.:

    Here: https://sites.google.com/site/dccppsite/
    and Here: https://sites.google.com/site/dccppsite/the-system
    and Here: https://gregstrainyard.com/wp-content/uploads/2017/05/dcc_pp.pdf
    and this tutorial: http://www.motorhomesites.org.uk/dcc-arduino-with-jmri-raspberry-pi/
    Dave Bodnar: http://www.trainelectronics.com/DCC_Arduino/DCC++/index.htm
    I love these folks: https://www.locoduino.org/spip.php?article187
    and of course, who could forget Sumner: http://1fatgmc.com/RailRoad/DCC/page-1.html ;)

    Everything we need has already been written, clipped, drawn or photographed. I think we just need a good editor. I have been working on distilling things down when I have free time. But I don't have the skills of someone who is an actual book editor. I do have expert skills in Photoshop, so can create just about any image we need from other images and have experience with Fritzing, which is how Locoduino looks to have created their graphic art version of the Arduino, Motor Shield and wiring. If nothing else, we can get ideas of how to present the information from how all these others did it.
     
    John W Zerbe, Keith Ledbetter and Dex like this.
  13. Keith Ledbetter

    Keith Ledbetter TrainBoard Member

    279
    195
    12
    Yes fully agree. there is almost nothing new needed. As you say the key is linking and simplifying but we shouldn't reinvent the wheel. Honestly out of what you've posted Gregg's original DCC++ stuff and locoduino are my favorites. I think a big part of this is linking to the best information rather than recreating the wheel as you say. I think Sumner and I agreed we wanted something that if folks wanted "plug and play" we could provide so we made those pages quickly but I agree we should probably not create anything more until we agree what we need, who will work on it. Can it just be linked rather than created, is it out of scope, etc. Is it possible to manage thispiece with Github actions so we don't step on each others toes.

    I was really hoping someone who is either an editor or a technical writer could help us organize, here's hoping one sees this and volunteers
     
    FlightRisk likes this.
  14. Sumner

    Sumner TrainBoard Member

    2,846
    6,004
    63


    True and I'm glad they are out there or I wouldn't be up and running now.

    I thought the purpose of this effort that you guys are working on was to fix any known bugs in Gregg's DCC++ and then work on enhancements taking it further into the future.

    My effort has been in a different direction. Like others providing some links to anyone who wants to get up and running now and also helping by getting a SD card out there with the image file for the Pi that has the operating system on it and JRMI. The Pi should still work when you have updated versions of DCC++ up and running. The image card for the Pi will bring in users that were put off before by having to be somewhat computer literate.

    Likewise Keith isn't trying to effect the development of DCC++ but again offering to help on the hardware side by offering the option of an Arduino/Motor Shield that comes with DCC++ loaded onto it, the traces cut and what ends up to be pretty much a plug and play DCC++ system.

    Neither he nor I are making anything on this. The extra few dollars we are making above what is being charged will go to TrainBoard and JMRI as donations. He is suggesting waiting on the pre-loaded Arduino until you have the basic DCC++ EX version up and running. My effort with helping users with the Pi has nothing to do with DCC++. I have a card that went out the other day to someone who wants a Pi computer with JRMI on it to connect to his Digitrax system and didn't want to go through the software side of getting the Pi up and running. Others could use the Pi with the present version of DCC++ like I'm using and others are using and could switch to DCC++ EX when it is available. At least now we have something to run trains with.

    Dex is also pursuing an option that will help people setup the DCC++ EX when it is available. If he wants to work on that side of things alone at this point I'd have no problem with that.

    I haven't gotten involved with what you guys are doing as I'm an ex basic programmer and would be of no use programming an Arduino at this point,

    Sumner
     
    Last edited: Mar 5, 2020
  15. Mani

    Mani TrainBoard Member

    76
    15
    4
    Hi Guys,

    I have designed a PDF to provide instructions for Simple setup. Base station with PC. This is can be one of the pages of How to instruction guide.
    Currently I am imagining these sections in the instruction guide.
    1. The Hardware, Tools, Software
    2. How to instructions (this page)
    3. Compiling and uploading DCC++ sketch
    4. How to connect base station to JMRI
    5. Appendix 1: Installing JMRI (or provide a link to JMRI DCC++ section)
    6. Appendix 2: FAQs
    I can keep working on other pages if anyone can provide me some inputs just like how Roger provided his presentation. Let me know if you all are ok with this approach and design.

    All comments are welcome.

    PS: I also have new Logo for "DCC++ EX". What do you think?
     

    Attached Files:

  16. Dex

    Dex TrainBoard Member

    55
    30
    5
    @Mani I just looked it over the only thing I really see missing is cutting the traces for VIN on the motor shield to avoid damage to the Arduino. It's a great start though for those using the uno.

    @Sumner I will be looking into things today the main Dev issue is downloading the required libraries for Arduino but I'm confident will figure it out.
     
  17. FlightRisk

    FlightRisk TrainBoard Member

    548
    237
    14
    Thanks for the synopsis. And it's good to keep track of everyone's goals and help where we can. Not sure quite yet how to coordinate it all, but no rush to have everything done this week ;) The first priority is the stable DCC++, next is DCC-EX as you said, the latter of which will be ongoing. Collecting all the available resources and determining which ones to borrow from, which ones to reference, which ones to let stand on their own, and what might be missing that we need to add is something I am trying to take on. I am hoping someone with good collating or editing skills will come onboard to help at some point.

    We will need testers soon to make sure that DCC++ "Classic" is working so we can move on to DCC++ EX.

    Great job on the "no trace cut, no imaging, no sketch uploading" option. I can't wait to see how much interest is there. It seems that if all you have to do is connect 2 or 4 wires to 1 or 2 tracks, it will open up another market for people to move to DCC++

    It is possible to organize this on GitHub. Projects could be in repositories and be modified just like we would code. But perhaps the easiest way to start tracking is to use GitHub "Projects". We started off using Taiga HERE and while that is great, it isn't somewhere people would look. Since we are tracking everything in GitHub for the Code and Docs, we have started moving it to "The DCC++ EX Project Task List". I'm still trying to figure out the automation which allows things to automatically appear there when an issue is created or a pull requests is generated. But just as a project board, it will do a lot we need it to do.
     
    Sumner likes this.
  18. FlightRisk

    FlightRisk TrainBoard Member

    548
    237
    14
    Again, how to integrate all this? What is the value add? Does it go on a web page somewhere, or is it a separate medium? So people who like web pages get info there and people who want to print something out or like a document format use that?

    @Mani Can you send me your graphic logo? Did you create that? We have a logo too so I thought I'll post both images here and see which one people like the best. Thanks for taking the time to do that. I was wondering if the current logo I made may look too much like JMRI and another one I've seen after the fact and then I saw yours. It is more impressionistic.
     
    Sumner likes this.
  19. Mani

    Mani TrainBoard Member

    76
    15
    4
    I think we can add more users (along with roles, I do not know if this is possible. My Github knowledge is limited) and start assigning issues. We can use grouping or tagging the issues to categorize them if possible.

    Sent from my GM1901 using Tapatalk
     
  20. Mani

    Mani TrainBoard Member

    76
    15
    4
    I really do not know what the plan is, for End user guide. This can be the guide for DCC++ Classic, and will be available in both versions, web page and PDF. If people want to print they can download and use (Can also ask for little donation ($1) for that. which is optional ?).

    I am ok to provide HTML version for this with more details if needed.
     

Share This Page