Comments (4)
Are you seeing this with motors used in switches? Do other motors work fine for you? I am using L-motors and 88008 motors as well as Spike prime motors for switches and they work fine for me. I haven't tested non-train motors on trains yet though. But I didn't have an issue with using the DCMotor class for motors with encoders up until now.
Can you post the logs as found here?
Windows: `%APPDATA%/Godot/app_userdata/brickrail-gui/logs`
Linux: `~/.local/share/godot/app_userdata/brickrail-gui/logs`
Also which pybricks firmware version are you using? The releases come with firmware binaries in release/firmware
in case a pybricks update breaks some things.
Using the rotation sensor to track a specific speed is definitely something to look at, but I would need to think about how to integrate it with the marker speeds. I am currently using marker speeds to compensate for the fact that a train needs more power to go up a hill and less to go downhill, but if the train has a rotation encoder it will behave differently in these cases.
For experimenting with the python programs, you should be able to just modify the files in the release/ble-server-<platform>/hub_programs
folder and a restart of brickrail should detect the change and download the new program to the hub automatically (hopefully, please report if this doesn't work). For trains, only the smart_train.py
file is actually used as well as the layout_controller.py
A dev environment may be setup something like this:
- Download Godot 3.X and open the project
brickrail-gui/project.godot
- Create a python 3.10 environment in
.env/
and activate it (I am using anaconda for this, which might actually be required, not sure there) - install the dependencies in requirements.txt via
pip install -r ./requirements.txt
from brickrail.
Confirmed with new pybricks firmware, I will ask upstream whether that is a regression or intended.
https://github.com/orgs/pybricks/discussions/1364
from brickrail.
This was confirmed to have been unintended behaviour from the beginning, so I added the try except block to account for it. Thanks for reporting!
from brickrail.
Thanks for the help! So far, I have determined that the pybricks firmware v3.3.0b4-6-g7aca502e bundled with brickrail works fine. Something about the current version doesn't -- not sure if this is a regression in pybricks or a deliberate change. I am still in the process of setting up a layout and seeing what works and what doesn't, I will continue to experiment with this over the next week and report back on how things go.
from brickrail.
Related Issues (20)
- [Feature] automatic crossing motors HOT 3
- [Bug] redownload is not triggered when only io_hub module changes
- layout controller port reassignment not working
- keep a number of ble-server logs
- ble-server log paths not setup correctly when server manually connected HOT 9
- [Feature] proper semver for layout file versions
- [Bug] disconnecting hubs does not turn off control devices
- [Feature] multiple motors/hubs per train HOT 3
- [Bug] hubs turning off while connected crashes BLEServer HOT 2
- [Feature] deactivate trains/hubs HOT 3
- [Bug] server connection not working first time on ubuntu HOT 2
- [Bug] renaming hub doesn't update references
- [Bug] install python deps from lock file HOT 1
- [Feature] better handling of issues during automatic connection when enabling control devices HOT 1
- Disable on Block (Station Mode) is bypassed when running in Random Mode)
- [Feature] PC Sound support
- '.\ble-server-windows\ble_server.exe' is not recognized as an internal or external command, operable program or batch file. HOT 2
- [Bug] duplicate messages in message log
- [Feature] accelerate route download
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 brickrail.