Welcome to MattzoBricks › Forums › MattzoTrainController for Bluetooth (MTC4BT) › Lights not working
- This topic has 12 replies, 3 voices, and was last updated 1 year, 6 months ago by R. v/d Meulen.
-
AuthorPosts
-
-
January 3, 2022 at 18:38 #4545Dirk SchäferParticipant
Hi everybody,
I managed to set up the MTC4BT successfully for the three different kinds of configurations of my locos:
1. one PU-Hub with one motor
2. one PU-Hub with two motors
3. two PU-Hubs, each with one motorI started to try the lights on the third configuration, but nothing happens (neither automatic light during driving nor manual light by Rocrail functions). The serial monitor of VSC gives the following message when the F0 button is clicked:
“[1] MQTT: Received ‘fn’ command’ but couldn’t read ‘fnchangedstate’ attribute.”Below is the controller_config.json I am using at the moment. I have tried to delete the “espPins” and “fn” sections, but this had no effect. What am I missing?
Thanks for your help.
Kind regards
Dirk{
“name”: “MTC4BT_60052”,
“espPins”: [
{
“pin”: 5,
“inverted”: false,
“attachedDevice”: “light”
},
{
“pin”: 23,
“inverted”: false,
“attachedDevice”: “light”
}
],
“fn”: [
{
“name”: “status”,
“device”: “espPin”,
“pin”: 23
}
],
“locos”: [
{
“address”: 16052,
“name”: “L60052”,
“speedStep”: 10,
“brakeStep”: 20,
“bleHubs”: [
{
“type”: “PU”,
“address”: “90:84:2b:03:45:0b”,
“channels”: [
{
“channel”: “A”,
“attachedDevice”: “motor”,
“direction”: “forward”
},
{
“channel”: “B”,
“attachedDevice”: “light”,
“direction”: “forward”
}
]
},
{“type”: “PU”,
“address”: “90:84:2b:15:f3:94”,
“channels”: [
{
“channel”: “A”,
“attachedDevice”: “motor”,
“direction”: “reward”
},
{
“channel”: “B”,
“attachedDevice”: “light”,
“direction”: “forward”
}
]
}
],
“fn”: [
{
“name”: “f0”,
“device”: “bleHub”,
“address”: “90:84:2b:03:45:0b”,
“channel”: “B”
},
{
“name”: “f1”,
“device”: “bleHub”,
“address”: “90:84:2b:15:f3:94”,
“channel”: “B”
}
]
}
]
} -
January 6, 2022 at 09:48 #4647RayKeymaster
Hi Dirk,
Nice to hear you have trains running on MTC4BT! Have you uploaded this configuration to the controller and tested it? The second PU has a bad direction value for channel A. It says “reward” where you probably mean “reverse”? It will probably have the effect that that motor runs in “forward” mode, as that’s the default.
Other than that your config itself looks fine. And obviously that doesn’t resolve the lights issue. I need to look into that some more.
-
January 6, 2022 at 10:03 #4648Dirk SchäferParticipant
Hi Raymond,
thank you for your answer.
Yes, I uploaded and tested the configuration and it worked well for the motors (both engines running in the same direction). But your right, it should be “reverse” and not “reward”. I think I mixed this up during the testing. I will correct that in the config file and check what happens.
Meanwhile, I tested it for onl one locomotive with PU and one motor and one light, but the result was the same. Do I have to configure something other than the address of the locomotive in ROCRAIL?
-
January 6, 2022 at 10:26 #4649RayKeymaster
There is nothing else to configure in Rocrail for functions to work, accept for the loco address.
-
January 7, 2022 at 18:10 #4678Dirk SchäferParticipant
Hi everybody,
in the meantime I tried another ESP32 I previously used as a MTC4PU (AZDelivery ESP32 NodeMCU Module WLAN WiFi Dev Kit C) and programmed it with the MTC4BT firmware and the config-file above including the correct direction. The result was the same as before (motors running, but no light).
Then I connected the ESP32 to my standard power supply (5V, 3A) and connected two LEDs to pins 0 and 23. Pin 23 is already assigned to the status LED in the config file. Additionally, I assigned pin 0 of the ESP32 to function F3 and I changed the functions of the lights of the PU-Hubs to F1 and F2. This means that functions F1, F2 and F3 are assigned. This resulted in the following:
1. With functions F1 and F2 the lights attached to the PU Hubs can be activated manually.
2. No lights are activated while driving.
3. Activating function F3 has no effect on the LED at ESP-Pin 0.
4. When I accidentially activated function F0 the following message in the serial monitor appeared:
“[1] MQTT: Received ‘fn’ command’ but couldn’t read ‘fnchangedstate’ attribute.”This is a progress as I can now activate the lights on the trains and the problem is reduced to the function F0 and the autolights while driving.
May the fact that I am using an older version of ROCRAIL server (v2.1.1332 of January 2021) have an effect on this?
Kind regards,
Dirk -
January 11, 2022 at 08:45 #4694RayKeymaster
Hi Dirk,
I don’t think the ESP or the Rocrail version has anything to do with it. Last night I found a bug in de code that stopped f0 from working when assigned to a light on a hub. You already verified f1 (or higher) does work, right? If so, this bug (f0 not working) will be fixed with the next release of the firmware.
Cheers,
Ray- This reply was modified 2 years, 10 months ago by Ray.
-
January 11, 2022 at 10:42 #4701Dirk SchäferParticipant
Hi Ray,
that sounds great. Thank you.
Yes, f1 or higher works. It is f0 and autolights while driving that are not working. I tested it with several AZDelivery ESP32 NodeMCUs and three different PU hubs where the result was always the same.
Cheers,
Ray -
January 11, 2022 at 11:10 #4702RayKeymaster
We do know auto-lights is not working. That’s a known issue we hope to fix in the next firmware release as well.
-
April 10, 2023 at 17:39 #6257R. v/d MeulenParticipant
Hello everbody,
I have a problem with the lights of the trains. Light are not working, while using the latest firmware version. Train motors are working well. Trying to use the functions in rocrail for the lights of the train, but aren’t responding. What could be the problem while the lights are configured and also the f2 function is configured for the lights. Is this related with the settings in rocrail or something else. Thanks in advance if someone could help me with it.
R. v/d Meulen
Here is a part of my controller_config.json file.
{
“name”: “MTC4BT_1”,
“locos”: [{
“address”: 1,
“name”: “OrangePasFront”,
“bleHubs”: [{
“type”: “SBrick”,
“address”: “d0:cf:5e:52:be:3b”,
“channels”: [{
“channel”: “A”,
“attachedDevice”: “motor”,
“direction”: “forward”
},
{
“channel”: “B”,
“attachedDevice”: “motor”,
“direction”: “forward”
},
{
“channel”: “C”,
“attachedDevice”: “light”
}
]
}
]
},
{
“address”: 2,
“name”: “OrangePasBack”,
“bleHubs”: [{
“type”: “SBrick”,
“address”: “d0:cf:5e:53:99:e0”,
“channels”: [{
“channel”: “A”,
“attachedDevice”: “motor”,
“direction”: “backward”
},
{
“channel”: “B”,
“attachedDevice”: “motor”,
“direction”: “backward”
},
{
“channel”: “C”,
“ättachedDdevice”: “light”
}
]
}],
“fn”: [{
“name”: “f2”,
“device”: “bleHub”,
“address”: “d0:cf:5e:53:99:e0”,
“channel”: “C”
}]
},
{
“address”: 3,
“name”: “GreenPasFront”,
“bleHubs”: [{
“type”: “SBrick”,
“address”: “68:0a:e2:af:1b:8d”,
“channels”: [{
“channel”: “B”,
“attachedDevice”: “motor”,
“direction”: “forward”
},
{
“channel”: “C”,
“attachedDevice”: “light”,
“direction”: “forward”
}
]
}]},
{
“address”: 4,
“name”: “GreenPasBack”,
“bleHubs”: [{
“type”: “SBrick”,
“address”: “d0:cf:5e:52:b7:f9”,
“channels”: [{
“channel”: “B”,
“attachedDevice”: “motor”,
“direction”: “backward”
},
{
“channel”: “D”,
“attachedDevice”: “light”,
“direction”: “forward”
}
]
}]},
{
“address”: 5,
“name”: “Maersk”,
“bleHubs”: [{
“type”: “SBrick”,
“address”: “d0:cf:5e:52:be:70”,
“channels”: [{
“channel”: “A”,
“attachedDevice”: “motor”,
“direction”: “forward”
},
{
“channel”: “C”,
“attachedDevice”: “motor”,
“direction”: “backward”
}
]
}]}
]
} -
April 10, 2023 at 17:49 #6258RayKeymaster
Hi R. v/d Meulen,
With the latest MTC4BT firmware the direct fn function configuration is no longer supported. You should use the new and more flexible event driven configuration. You can check the options and syntax here:
Cheers,
Raymond -
April 16, 2023 at 16:22 #6278R. v/d MeulenParticipant
Hello everbody, I tried to use the the new configuration for the trains including lights. I have put all the information in the controller config file and the lights are working. After exceeding the 4k limit for the files. I tried to put the loco configuration in different files. Controller.config file look like this: {
“name”: “MTC4BT_1”,
“pwrIncStep”:10,
“pwrDecStep”:10,
“locoConfigs”: [
“/loco_HEFront.json”
]
}And the loco_HEFront file like this:
{
“address”:1,
“name”: “OrangePasFront”,
“bleHubs”: [
{
“type”: “SBrick”,
“address”: “d0:cf:5e:52:be:3b”,
“channels”: [
{
“channel”: “A”,
“attachedDevice”: “motor”,
“direction”: “forward”
},
{
“channel”: “B”,
“attachedDevice”: “motor”,
“direction”: “forward”
},
{
“channel”: “C”,
“attachedDevice”: “light”,
“direction”: “forward”
}
]
}],
“events”: [
{
“triggers”: [
{
“source”: “rr”,
“eventType”: “fnchanged”,
“identifier”: “f1”,
“value”: “on”
},
{
“source”: “loco”,
“eventType”: “dirchanged”,
“value”: “forward”
},
{
“source”: “loco”,
“eventType”: “dirchanged”,
“value”: “backward”
}
],
“actions”: [
{
“channel”: “C”,
“pwrPerc”: 80
}
]
},
{
“triggers”: [
{
“source”: “rr”,
“eventType”: “fnchanged”,
“identifier”: “f1”,
“value”: “off”
},
{
“source”: “loco”,
“eventType”: “dirchanged”,
“value”: “stopped”
}
],
“actions”: [
{
“channel”: “C”,
“pwrPerc”: 0
}
]
}
]
}After installing the files on the esp32. I get the message that 0 locos have been discovered. What am I missing?
R. v/d Meulen
-
April 17, 2023 at 20:51 #6279RayKeymaster
Hi R. v/d Meulen,
Your config files look valid by me, so I’m thinking that’s not the issue.
At controller startup a message is displayed stating:
Setup: Number of locos to discover hubs for: 3
In this case the controller has found three loco’s in the (combined) controller configuration files.
What does your controller output to serial/logging at startup?Cheers,
Ray
-
-
April 18, 2023 at 20:59 #6280R. v/d MeulenParticipant
The output is as follows:
1] Setup: Starting MattzoTrainController for BLE…
[1] Setup: Loading network configuration…
Syslog: Server:
Syslog: Hostname: MTC4BT_1
Syslog: Appname: MTC4BT_1
[0000] [1] Logging: Configured.
[0001] [1] Setup: Loading controller configuration…
[0002] [1] Config: Read controller name: MTC4BT_1
[0003] [1] Config: Read ESP pin configuration (0).
[0004] [1] Config: Read loco configuration (0).
[0005] [1] CTRL: Local channels initialized.
[0006] [1] Setup: Initializing BLE…
[0007] [1] Setup: Controller configuration completed.
E (3390) wifi_init_default: netstack cb reg failed with 12289
[1] Wifi: Connecting [1] MQTT: Connecting to
[0009] [1] Setup: MattzoTrainController for BLE running.
[0010] [1] Setup: Number of locos to discover hubs for: 0
[0011] [1] Minutes uptime: 0.00
[0012] [1] Messages in queue: 0
[0013] [1] Memory Heap free: 129472 max alloc: 108532 min free: 129048
[0014] [1] Ticker started
[0015] [0] Wifi: Connected
[0016] [0] OTA: Initialized.
[0017] [0] MQTT: Subscriber configuring last will…
[ 2626][E][WiFiUdp.cpp:183] endPacket(): could not send data: 12It seems that sonmthing goes wrong with the wifi connection.
Kind regards,
R. v/d Meulen
-
-
AuthorPosts
- You must be logged in to reply to this topic.