Comments (6)
Same problem on beaglebone black booting from uSD. This misses even the autoboot prompt, so cannot pass the 'U-Boot' test
U-Boot SPL 2020.04 (May 14 2024 - 07:57:58 -0600)
WDT: Not found!
Trying to boot from MMC1
Loading Environment from FAT... ** No partition table - mmc 0 **
Loading Environment from MMC... *** Warning - bad CRC, using default environment
U-Boot 2020.04 (May 14 2024 - 07:57:58 -0600)
CPU : AM335X-GP rev 2.1
Model: TI AM335x BeagleBone Black
DRAM: 512 MiB
MMC: OMAP SD/MMC: 0, OMAP SD/MMC: 1
Loading Environment from FAT... MMC: no card present
Loading Environment from MMC... *** Warning - bad CRC, using default environment
<ethaddr> not set. Validating first E-fuse MAC
Net: eth0: ethernet@4a100000
Warning: usb_ether MAC addresses don't match:
Address in ROM is de:ad:be:ef:00:01
Address in environment is 34:84:e4:e7:f2:ef
, eth1: usb_ether
Press SPACE to abort autoboot in 2 seconds
from labgrid.
labgrid-client console
uses microcom as a telnet/RFC2217 client. That means, that the console is started after the strategy has reached to selected state (here: -s start
). So any serial output from the board in the time between the completion of the state transition and microcom connecting is lost.
Usually, this is not a problem, as the strategy leaves the board in a "stable" state (at the bootloader promt, at the linux prompt, powered off, ...). So I'd suggest handling the bootloader autoboot interruption in the Strategy, by activating a UBootDriver with a config matching your UBoot setup.
Alternatively, you can try keeping a labgrid-client console
open in second shell and running the setup from the first shell. Depending on your ser2net
version, it might support multiple parallel connections.
In the longer term, we'd like to replace microcom with something built on top of the SerialDriver/ConsoleDriver, so that a connection activated earlier can be used and no data is lost. That would also be a prerequisite for triggering actions from labgrid-client console
(e.g. cycle power).
from labgrid.
Thanks for the info.
In fact it turns out that the extreme loss for bbb was due to a serial adaptor failure:
[306094.679130] pl2303 ttyUSB14: pl2303_set_control_lines - failed: -32
Re the terminal, perhaps this terminal code from tbot would help?
https://github.com/Rahix/tbot/blob/master/tbot/machine/channel/channel.py#L1019
from labgrid.
Re the terminal, perhaps this terminal code from tbot would help?
https://github.com/Rahix/tbot/blob/master/tbot/machine/channel/channel.py#L1019
While we can't use that code due to the license, we'll likely need something similar. Internally, it was not urgent enough to find time for this (compared to other things like the move away from crossbar/authbahn). :/
from labgrid.
OK, I implemented a simple internal terminal, which fixes this problem. I will come up with a PR at some point
from labgrid.
See here:
from labgrid.
Related Issues (20)
- Dealing with a transient serial port HOT 4
- Recovery and reset on the same relay HOT 3
- write_file does not properly escape file names HOT 5
- Exception when sending "purge" to a remote serial driver HOT 4
- linux shell prompt not found HOT 6
- ManagedFile uses `/var/cache/labgrid/..` sync path even when resource is remote HOT 5
- add option to use `scp` instead of `rsync` in `ManagedFile` for syncing files to minimal targets
- linter warnings since pylint 3.2.0 HOT 1
- Use black or ruff formatter HOT 1
- Remote NetworkPowerPort HOT 1
- SerialDriver: BindingErrors hidden by AttributeError caused by not (yet) set target HOT 1
- Timeout Parameter for "labgrid-client reserve" HOT 1
- Labgrid exporter ser2net fails with Invalid accepter port name/number
- Ad-hoc TFTP server driver HOT 2
- grpc error HOT 9
- ImportError: cannot import name 'identity_realm_name_category' from 'autobahn.wamp.message' HOT 2
- (grpc) No module named 'labgrid.remote.generated' HOT 1
- How to best add support for tp link switches?
- Assume port 20408 for GRPC exporter HOT 2
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 labgrid.