Git Product home page Git Product logo

wifred's Issues

Support of 28 Speed Steps

wiThrottle should support DCC decoders with 28 speed steps.

There should be a selection after the DCC address with at least the options "128", "28" speed steps.
May be this could extended to all options available on a Loconet command station (14, 128 DAC, 28 DAC, SX, ...).

I assume that this requires an extension of the wiThrottle protocol, selection of speed steps in the wiThrottle server is much to complicated for the average user.

There are many (older) decoders (like Lenz LE103, LE040) that does not work with 128 speed steps but are still used. Also there are some decoders that support speed table only when used with 28 speed steps.

register with throttle name in DNS

wiFred registers in DNS (by DHCP) with somethings like "esp32s2-3D733E".
Instead the throttle name as entered should be used.

This would help calling the configuration page on systems without mDNS (e.g. Win7).

To test a Fritzbox (like 7590) can be used. The device shows as name "esp32s2-3D461A". Also
"nslookup esp32s2-3D461A" or "nslookup esp32s2-3D461A.fitz.box". But
"nslookup <throttle name>" should work.
On other APs without a DNS (like WRT54GL) this will not work.

I assume calling a setHostname() should help,

Firmware revision used: 2022-10-16-71ca8c3-master
AFAIK older versions of firmware showed the correct throttle name.

Configure wiFred via USB port

  • Understand all key/value pairs already allowed via HTTP GET
  • Add "list" option to output entire configuration (XML?)
  • Mostly important to quickly connect wiFred to new/previously unknown WiFi network

Hidden SSID

wiFred doesnot connect to a WLAN with hidden SSID.

Switching SSID to hidden is essiantial on exhibitions and meetings when to expect many mobile phones that are trying to connect to every WLAN they see.

I have tested with FW 2022-10-16 and Fritzbox 7590 and FRITZ!OS 07.29.

Has anyone tested this on DCC++EX?

Any WiThrottle device should work, but since we don't broadcast our info to WiThrottle and expect WiThrottle to ask and get back our ID string, some throttles may need to account for that. Creating a DCC++EX Command Station from an Uno or Mega is easier than building a throttle, so I was hoping someone already tested or could make a CS with an Arduino and Motor Shield they may have already. It can be tested with just an Arduino, a WiFi shield or ESP-01S and a computer connected as a serial monitor since we can turn on wifi and Withrottle diagnostics and watch if commands are being sent back and forth. That way you don't have to have a motor shield and actually use it as a CS connected to a track.

Rotary Encoder support

Would it be possible to implement support for a rotary encoder instead of a potentiometer?

The button could be used for fast switching to speedstep 0.

Esp32-S2 upgrade to esp32-s3

The eps32-s2 modules are in the meantime NRND. So long term procurement could become difficult.
Maybe it's worth to do an upgrade to esp32-s3 modules, when the next PCB redesinge is necessary.

This would also enable to implement Bluetooth communication as alternative option in the future.

wiFRED use with command stations equipped with the WiThrottle protocol

It seems not very practical to have to use computer with JMRI for connection to the Train command station. There might be several ways how to use the wiFRED operating on WiThrottle protocol, either using the Digitrax LNWI unit to connect it to the LocoNet used to standard FREDs, or to use some command station equipped with the wifi and WiThrottle protocol, such as YaMoRC YC7100 or YC7100, TCS-2. Probably as well the ESU Smart Control.
It is only necessary that it would exist a way of easy wifi connection to the LNWI or command stations mentioned above.

Extended PCB silkscreen for LEDs

Mark the color of the LED directly on the PCB for easier assembly.

Better footprint documentation to see the orientation of the LED in the silkscreen.

Add a website to "real reboot" handler

Possibly include link back to config page

void restartESP()
{
String resp = String("\r\n")
+ "<title>WiFred Reboot</title>"
+ "Rebooting wiFred...";

server.send(200, "text/html", resp);
ESP.restart();
}

Very verbose behaviour on (re)connect

Using f force function to refresh all functions on (re)connect, makes the conversation much more verbose than necessary.

Any good reason at all to use force..?

Selection of long/short address should be removed

Selection of long or short address should be removed in configuration panel.

On Loconet only short adresses are used for range 1..127. Long adresses are not supported in this range.

The option is confusing and can be done automatically from address (if (a<128) "short" else "long")

Anti-twist protection for toggle switch

The direction toggle switch has a washer with a bent over edge. This can be used to fix the switch inside the PCB so it can not twist.
Therefore a new hole is needed next to the existing hole for the switch.

Handle "Steal" commands

Right now, the wiFred just ignores them.

It should notify the user of the request and block the throttle until the user deactivates that loco again.

Maybe it should also notify the server that it takes back the loco request? TBD.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.