cant execute commands on running linux
Harald Seiler
hws at denx.de
Tue Aug 30 13:06:35 CEST 2022
Hi Maik,
On Tue, 2022-08-30 at 12:57 +0200, Maik Nassauer wrote:
> Thank you very much for the help. It works now. Sadly i am not able to
> control the power of the board. It hardly depends on the hardware i get
> from my customers. I ordered a usb hid relais board for integrating it
> independently in tbot.
Yeah, this is a good idea. I know how it is, you can't rely on much
with customer hardware. Our approach is to use switchable 230V outlets,
either USB-controlled (like https://gembird.com/item.aspx?id=7556) or
WiFi-controlled ones using the Tasmota firmware. You can get them quite
cheap these days due to all the smart-home craze.
Relay boards also work, but require a bit more tinkering to integrate.
Especially when hardware comes with an integrated power-supply or
pre-made cables...
One nice advantage of relay boards is: You can also automatically toggle
a jumper on a board with them. For example, to switch the bootsource.
--
Harald
> Greetings
> Maik
>
> On 30.08.22 12:46, Harald Seiler wrote:
> > Hi Maik,
> >
> > On Tue, 2022-08-30 at 12:12 +0200, Maik Nassauer wrote:
> > > Hey all :)
> > >
> > > Thank you very much for tbot, its a realy nice tool <3
> >
> > Glad you like it :)
> >
> > > I cant figure out how to execute commands on the running linux system. I
> > > have to powercycle/reboot the system to get my commands running, because
> > > the LinuxBootLogin is checking for a complete bootup?
> >
> > This is correct, `LinuxBootLogin` waits for the board to boot and then
> > logs in once the login prompt shows up. In general, tbot is usually
> > used in such a setup where the board is freshly booted at the start of a
> > test-run. Ideally, your board config (`MyBoard` class) should use the
> > `board.PowerControl` initializer to automatically control board power.
> >
> > That said, you can also use tbot in an environment where the board is
> > always running. In that case, you should leave the board at the shell
> > prompt and use a Linux configuration like this:
> >
> > class MyBoardLinux(board.Connector, linux.Bash):
> > pass
> >
> > With this config, tbot will assume that the board is already running and
> > waiting at a shell prompt. Of course this means you have to prepare the
> > board beforehand if it wasn't already on.
> >
> > While this is possible, in most cases, I have found it to be better to
> > stick to the powercycling approach. The reason is that little
> > inconsistencies caused by the board staying on will be a pain when
> > debugging hard problems. If you automate powercontrol with a switchable
> > power outlet, the entire test-run is hands-off. Then you can focus on
> > doing something else while tbot is running, which makes it much less
> > annoying to have to wait for the board to boot each time.
> >
> > But I know this heavily depends on the kind of work you do. If you are
> > mostly working on userspace applications, I understand that it might be
> > much more favorable to keep the board powered on at all times. If that's
> > your usecase, I can prepare a full config with a testcase to
> > automatically boot once and then keeping the board powered on for you.
> > I have some scripts locally which do this but I'll have to clean them
> > first before I can show them here...
> >
--
Harald
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-62 Fax: +49-8142-66989-80 Email: hws at denx.de
More information about the tbot
mailing list