ESP32 Command Station

Atani Dec 10, 2017

  1. Travis Farmer

    Travis Farmer TrainBoard Member

    352
    320
    14
    not knocking your work, but i am just wondering when the DCC++ project went from open source, with DIY hardware, to "buy it from you" hardware. maybe i missed something, being away for so long, and i am willing to admit i am possibly way off base (having only read a little bit).
    You do great work Atani, don't get me wrong. it just kinda rubbed me the wrong way.

    anyway, just reading back through some posts, see what i have been missing.

    ~Travis (new avatar, didn't like the skull anymore)
     
  2. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    First, this is *NOT* DCC++. Second, there is no requirement to purchase from me as I'll be making the PCB files available for anyone who wants to order them on their own.

    About the same way your post is rubbing me right now likely.
     
  3. Travis Farmer

    Travis Farmer TrainBoard Member

    352
    320
    14
    right... neglected to read the subject line fully... sorry about that.
    my current monitor is only about 10 - 12 inches diagonal, so the print is pretty fine.

    again, sorry. :(

    ~Travis
     
  4. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    No worries, it happens :) This should likely not be under the DCC++ forum since it is not a derivative of DCC++ though it does provide similar functionality.

    Yikes, time for an upgrade :)
     
  5. Travis Farmer

    Travis Farmer TrainBoard Member

    352
    320
    14
    Trying not to hijack the thread, but my laptop has passed on to the big computer salvage yard in the sky, and lost all my hard-drive data as well.
    I happened to recently purchase a Raspberry Pi 4B 4GB, so i am using that with the only monitor i happen to have for my PC.

    anyway, back on topic, does it connect to a DCC++ base station, or in some way rely upon one? if so, close enough to fit here, IMO.

    ~Travis
     
  6. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    It is a standalone Command Station that can talk the same text protocol that DCC++ uses. This was implemented initially to interface with JMRI but with LCC being enabled by default now (on development branch, highly unstable!) the DCC++ text protocol is not really used except for legacy throttles that do not talk via LCC or WiThrottle (coming soon)
     
  7. Travis Farmer

    Travis Farmer TrainBoard Member

    352
    320
    14
    oh, i see. i think i was working on something like that quite some time ago. recently i had the idea of using MQTT for layout control. i will study the LCC wiki, see what it is about, though i am a bit taken by the MQTT protocol, i try to find a way to use it with all my projects lately. :)

    ~Travis
     
  8. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    MQTT does have many usages but there are a lot of people who run into issues with it on the ESP32 due to buggy libraries.

    https://openlcb.org will have a lot of info for you to digest :) It covers everything except the DCC connection to the trains, but even that is going to be covered very soon (Traction Protocol, currently a draft but very usable and in use by TCS).
     
    Travis Farmer likes this.
  9. David Calderwood

    David Calderwood New Member

    3
    0
    1

    I have just come across this thread and I am reading it with interest. Do you know if the DCC++ ESP32 code can be made compatible with the M5Stack range of modules, particularly as they include a wide range of interfaces and have a built in LCD display.

    thanks
     
  10. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    I can't guarantee that it would be usable but the code should compile cleanly. The M5Stack has a lot of great features but there are a number of issues that come with that system (WiFi instability has been one big issue I've seen reported multiple times in the arduino-esp32 GitHub repo..). There are other issues which will likely prevent it's usage but if you can make it work I'll add it as a supported configuration with the right setup.
     
  11. David Calderwood

    David Calderwood New Member

    3
    0
    1
    Thank you, I have an M5Stack FIRE on order. I do a lot of Arduino projects and my plan is to get my head around the FIRE and then port my known projects first. If i'm happy with this a DCC++ is next on the list.
     
  12. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    An interesting device for sure. Looking at this, it would appear that you might have some luck via the external 30 connector but you would not be able to use SPI since you would need at least six pins for the DCC signal (SIG, SENSE, EN... for OPS and PROG each). I'd recommend the following setup for pins:
    ADC1 = OPS-SENSE
    ADC2 = PROG-SENSE
    DAC0/AUDIO_L = OPS-EN
    DAC1/AUDIO_R = PROG-EN
    MOSI = OPS-SIG
    MISO = PROG-SIG

    Since the FIRE uses PSRAM (likely a WRover module inside) GPIO 16 and 17 will not be usable.

    The "free" pins on the 30 pin connector would be:
    GPIO2 (IO6)
    GPIO5 (IO7)
    GPIO34 (ADC0/IIS_IN)
    GPIO18 (SCK)
    GPIO0 (IO11/IIS_MCLK/BOOT)
     
  13. David Calderwood

    David Calderwood New Member

    3
    0
    1

    Thanks, good starting point. I will post as I make progress.
     
  14. trimarco232

    trimarco232 New Member

    5
    1
    4
    Hi Atani,
    just had a look at your pcb : amazing ! you'll have great succes with it !
    will you make the kicad files available ?
    because I'd like to make a few changes, in order to use my stock of smd resistors and capacitors, instead of buying 100 of each of them, put 1 in place and leave the 99 others definitively in a box ...
    Thanks
     
  15. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    Thanks! Yes the KiCad files will be made available as well as a set of Gerber files that are "ready for manufacturing" (same files that I am using for it in fact!). Once I have completed my testing and have the second set of PCBs in hand I'll share the files so others can manufacture their own PCBs etc.

    Many SMD R and C should fit the footprints I believe with little adjustments (holes are through plated as well). I'm also planning a v2 board which will be SMD only but that is going to be a bit in the future as I'm looking at shifting to the WROVER instead of the WROOM-32 based modules (I'll be going with bare chip vs a plugin module for v2).
     
  16. trimarco232

    trimarco232 New Member

    5
    1
    4
    ok, thanks, great !
    glad to be the first aware of a v2 board coming, but I can't wait
    I will wait for the v1 files, do my stuff (and show you if you want)
     
  17. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    I'd definitely be interested in what tweaks you make to the board :)
     
  18. trimarco232

    trimarco232 New Member

    5
    1
    4
    a suggestion : replaces the 2n7000s and resistors with a 1/2 lm339 :
    scan_railcom_en.jpg
    (the second 1/2 lm339 replaces the lm393)
     
    Atani likes this.
  19. Atani

    Atani TrainBoard Member

    1,469
    1,756
    37
    I'll run this through a thorough review and also have it reviewed by the EE who is designing the TCS CS.. The circuit I'm using now is the same as the one in the TCS CS.

    I had originally went with the LM339 but didn't have a use for the second set and opted for dropping to the LM393 instead, which had a bonus effect of reducing the PCB footprint a bit.
     
  20. Travis Farmer

    Travis Farmer TrainBoard Member

    352
    320
    14
    slightly related to your thread... is there a library available for LCC on Arduino? (the LCC PDF is quite a big bite for my laptop to open... still loading...) i found the library with your name tagged to it for ESP32, but it isn't compatible with Arduino (my comfort zone). i can fall-back to MQTT, but i was thinking it may be better to use LCC for cross-compatibility.

    ~Travis
     

Share This Page