How to I disable login prompt when connecting to the Dev Board via serial console? - google-coral

I can't use mdt as I have already disabled ssh on the dev board. When connecting to the board via serial, I often get stopped with a login prompt, this makes it hard to write automated tasks. Any suggestions?

Good question!
Please open this file:
/lib/systemd/system/serial-getty#.service
And change the ExecStart=... line to this:
ExecStart=-/sbin/agetty --autologin mendel --keep-baud 115200,38400,9600 %I $TERM
Then reboot and serial console won't be showing a login prompt any more.

Related

Watson is already running. Second session cannot be started

I have installed IBM watson studio but when i attempt to open it, I am getting an error stating " Watson is already running. Second session cannot be started"
This problem is a result of Watson Studio being logged on two devices at the same time.
Please take the following steps:
You will need to log out from one device to use on another.
You can perform this on myibm.ibm.com
Login in to https://myibm.ibm.com/dashboard/
Click 'Manage' on IBM Watson Studio Desktop
Click on head next to 'Manage devices'
Manage Devices is a way to help the you remotely log out of one device in order to log in from another (and has the same effect as Sign out and Exit from within the SPSS Client). You simply click here 'Deactivate' and you should be able to use software on another computer.
Please let me know about further issues.
It happened to me after I updated to the new version. I had to kill the process from the task manager and now the studio doesn't start up and actually 'show' unless it was Run As Administrator. Try that out, kill the process and re-run it but as admin.

roslaunch activation failure what should i do?

i tried to launch the sdk package by typing
roslaunch dji_sdk sdk.launch
however every time i get this error:
... logging to /home/dji/.ros/log/b31d5e94-fec0-11e9-9835-74da38ebc18f/roslaunch-manifold2-18825.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://manifold2:41911/
SUMMARY
PARAMETERS
/dji_sdk/align_time: False
/dji_sdk/app_id: 1079440
/dji_sdk/app_version: 1
/dji_sdk/baud_rate: 921600
/dji_sdk/enc_key: 39d353a8e9ad01b6c...
/dji_sdk/serial_name: /dev/ttyUSB0
/dji_sdk/use_broadcast: False
/rosdistro: kinetic
/rosversion: 1.12.13
NODES
/
dji_sdk (dji_sdk/dji_sdk_node)
auto-starting new master
process[master]: started with pid [18835]
ROS_MASTER_URI=http://localhost:11311
setting /run_id to b31d5e94-fec0-11e9-9835-74da38ebc18f
process[rosout-1]: started with pid [18848]
started core service [/rosout]
process[dji_sdk-2]: started with pid [18856]
STATUS/1 # init, L56: Attempting to open device /dev/ttyUSB0 with baudrate 921600...
STATUS/1 # init, L66: ...Serial started successfully.
ERRORLOG/1 # getDroneVersion, L1503: Drone version not obtained! Please do not proceed.
Possible reasons:
Serial port connection:
SDK is not enabled, please check DJI Assistant2 -> SDK -> [v] Enable API Control.
Baudrate is not correct, please double-check from DJI Assistant2 -> SDK -> baudrate.
TX and RX pins are inverted.
Serial port is occupied by another program.
Permission required. Please do 'sudo usermod -a -G dialout $USER' (you do not need to replace $USER with your username). Then logout and login again
ERRORLOG/1 # activate, L1387: Unable to initialize some vehicle components![ERROR] [1572843926.785053218]: drone activation error
[ERROR] [1572843926.785190956]: Vehicle initialization failed
^C[dji_sdk-2] killing on exit
[rosout-1] killing on exit
[master] killing on exit
shutting down processing monitor...
... shutting down processing monitor complete
done
here is the steps that i followed to activate the drone:
source devel/setup.bash
catkin_make
rosed dji_sdk sdk.launch
where i edit the baud rate/app id/ enc key/ and serial name.
app_id: 1079440
baud_rate: 921600
serial_name: /dev/ttyUSB0
enc_key: 39d353a8e9ad01b6c659111904bae57ebb138785aa5159699383f28da3f56563
and i continued with the following commands:
roslaunch dji_sdk sdk.launch
its where i got the error.
i'm using USB-TTL cable to connect manifold 2-c with M210 RTK V2, also i got the permission first before typing any code by typing :
usermod -a -G dialout $USER
and then log out and log in
then i typed :
sudo chmod 666 /dev/ttyUSB0
to read and give permission to serial port.
TX (green wire) and Rx (white wire) and ground (black wire) there were put respectively.
so now what should i do?
Some USB-TTL cable doesn't support 921600 baudrate,I suggest you using FT232R USB-TTL cable
You need to enable SDK in the DJI Assistant 2 and set the drone buadrate 921600
There are too many possibility
Please refer my previous answers and check them one by one
DJI A3 Onboard SDK problem (No connection)
Information you have given is not enough, there could be many possibilities. Please go through with the following checklist (this is what first comes to my mind, if I remember sth new, I`ll add it in)
The list is meant for error such as Drone version not obtained or new device error or first success connection(get firmware) then failed activation for Both DJI OSDK and DJI OSDK-ROS. Assuming you already enabled the API control, then check
Does UART on RPI is enabled? if not, enable it. Are you using the correct serial ID as well? If not, set it right. Recommend using /dev/serial/by-id/usb-XXX method
Does Baud rate in DJI assisatnt2 is same as the one in the USERCONFIG file of OSDK? if not, make it same
Did u give permission to the serial device e.g sudo chmod a+rw or sudo usermod -a -G dialout $USER or set the udev rule . If not choose a way to get it right.
FTDI series problems
4.1 Did you use this FTDI cable successfully on other platform before?(to make sure tx rx is correct)
4.2 Is this FTDI 3.3V? If not, high chance your FCU board is already burned. Send it back for repair.
4.3 Measure the voltage on Tx and RX pin while everything is connected, is it being pulled up at 3.3V? if less than 3 then there is a serious communication issue.
4.4 Is there EMI generator around?( this one happen to me once, took me 2 weeks to isolate the issue, EMI cause unreliable connection)
4.5 As an additional test, prob the tx and tx by Y cable using real-term to see if you can see any proper communication happening.
Did u forget to turn on the RC ? If so turn it on while calling the sdk.launch
GO app side issue
6.1 Did u connect the Go app while running sdk.launch? If not connect by GO app, connect it as it will pop up sth.
6.2 Did you login to your account which creates the app id?If not, login to it.
6.3 And is your account being banned for flying in the non-authorized area before(e.g caught by DJI aeroscope/Flyhub) and police is actually going after you? If so, stop playing the drone and surrender urself in. Normally it should be max of one year Jail time, but if you resist, the punishment can be more deadly.
Did u give authority from GO app? click ok or confirm on the GO App once you run sdk.launch in the RPI. Once you launch the sdk, the Go app will pop up sth, Did u do/experience it? After changing the firmware, you should experience this again.
Did u tried the hardware with the 3.8 with a Normal X86/X64 Intel PC/notebook with Ubuntu 16/18 before? is it working? ( rule out hardware / connection issue ) If can work, then its RPI issue. If can not, high chance drone/RC side. I do have couple RPI burn down experience b4.
Did u have valid/correct app id and enc key? double check it. If not, enter is correct.
Is the voltage supplied to A3 stable and clean?
Have you tried this way of calling? /the_sample_u_wish_to_run UserConfig.txt /dev/ttyACM0 (this is what I gathered from other peoples experience)
Which version of RPI you are using, if you are using 2 series, the high chance you have to use https://github.com/dji-sdk/Onboard-SDK/tree/raspberrypi-support with older version firmware. I only tested with RPI 3B. Can not guarantee the function of other versions. That's why number 8 is important to isolate the issue.
Are you calling the sdk.launch from somewhere else? make sure you only call it once and prevent it from being calling again. Make sure the serial port is not occupied.
Make sure API is enabled in DJI assistant2. Close everything power on and connect to DJI assistant 2 again to verify this. If by any chance the board has an issue, the API enable you set in the previous run will get auto deselected. This is to rule out burned FCU board issue.
If by now it is still can not work, then you should try other 3.8 or 3.7 with firmware 1.7.7 and 1.7.5 or whatever firmware you can access. as far as I know, their delay+ wait for ACK always have all sorts of issues. Maybe adding more delay in the wait for serial ack will help you(solution from other github dji_osdk post)
In case of this particular A3 burned, swap another fresh open A3 and proven working FTDI cable(test with Arduino) to rule out the A3 problem
If still no luck, file a ticket to dev#dji.com + send a complaint to Samuel#DJI. Send them the long list of thing you tested, and if they say high chance it is a hardware issue. Do send it back for RMA. I do have experience of one Normal A3 and one M600 A3 has burned FCU board issue before.
After this, if you encounter can not fly GPS mission by OSDK or can not do local flight control. Just try different firmware version. DJI firmware release is usually very buggy for developer.
edit
For you case, use windows. as i have no issue with windows based method
Make sure the slider to the right with my image view. I have no MAC so cant test MAC solution.
YOu might need to plug in and un plug and plug in for couple time
by default api is disabled. so you have to enable it and select the hz rate for topic you wish to receive. Good Luck. This is all I can do.

Bluetooth HM-10 PIN to connect, Authentication / Security

I am using a HM10 Bluetooth - UART module in my embedded Device. I connect to it via the UUID with an iPhone App, but I would like to activate a PIN to connect for the first time, so that not everybody with an iPhone and a App like LightBlue or something like that, can send data to my device.
Is this somehow possible with the HM10? In the manual is written, that it is possible to use a PIN to pair, but even if I activate this, I didn't need to enter this.
Thank you
I am also using the same adapter (HM-10) or basically CC41-A module, because I have just found out that my module is a clone. I do not know that it could cause authentication issue or not, but I would recommend first identify your module. Do you have also on your board a missing crystal in the position what is shown on this picture:
http://nerdclub-uk.blogspot.com/2016/02/working-with-cheap-bluetooth-btle4.html
If it is missing it is a clone module.
EDITED:
I have just found on that blog in the comments that clone is not supporting authentication.
https://blog.yavilevich.com/2017/03/mlt-bt05-ble-module-a-clone-of-a-clone/
You're trying to change the password of the HM-10 Bluetooth Chip. To do this, you can issue an AT Command.
Assuming you're using an Arduino environment to interface with your embedded device, you'll want to go to the Serial Monitor found in Tools Serial Monitor and type in the following in the textfield:
AT + PASS [YOURPASSWORD]
Press enter or send and you should see the following:
OK + Set: [para1]
You can find more AT Commands for the HM-10 chip at http://fab.cba.mit.edu/classes/863.15/doc/tutorials/programming/bluetooth.html
Use AT command for set password:
AT+PASS?
AT+PASS[parameter]
Bond mode (0: not need PIN Code, 1: Auth not need PIN, 2: Auth with PIN, 3: Auth and bond):
AT+TYPE?
AT+TYPE[parameter]
Important: if your module version is less than V515, please don't use this command.
AT+VERR?

Catch 22 Situation With Quickbooks (Can't allow app to connect because can't open QuickBooks)

(Note, I believe this is different than the previous questions I've seen on this because those all appear to apply to earlier versions or are doing something different process-wise. So, thos answers haven't helped me in this case.)
I have an application that connects to QB running fine on one machine. However, when I moved it to another machine, and I try to connect when QB IS NOT running, I get an error that "This application is not allowed to log into this QuickBooks company data file automatically. The QuickBooks administrator can grant permission for an automatic login through the Integrated Application preferences."
Ordinarily when that happens, I run the program and I'm prompted to add the application, and I do. However, on this machine I'm getting "QuickBooks can't start because it is already running. Only QB Accountant, QuickBooks bookkeeper and QuickBooks enterprise can open more than one company file" whenever I try that. I also don't see a way to manually add the application.
This is QB Desktop 2014 (350-569) and SDK13. The chain is an executable to a helper dll to the QB dll to QB.
Does anyone have any ideas as to what the issue may be?
Does anyone have any ideas as to what the issue may be?
Yep.
This is your answer:
However, on this machine I'm getting "QuickBooks can't start because it is already running. Only QB Accountant, QuickBooks bookkeeper and QuickBooks enterprise can open more than one company file
QuickBooks is already running on this computer. The other computer has nothing to do with this issue.
Your first step should be to reboot, and try again.
You can also check Windows Task Manager (taskmgr.exe) and look for the QBW32.exe process. If it's running, kill it, and then try to start QuickBooks again.
You can also check that QuickBooks is not set stay running in the background (Edit > Preferences > General > Keep QuickBooks running for faster start-ups).
You might also check to make sure your app, and QuickBooks are both running with the same user privileges. e.g. if QuickBooks is set to start as Administrator, and your app isn't, it can cause these errors. Try to run both as the Windows Administrator and see if you have better luck.

How to get runonce to run, without having to have an administrator login

Is there any way to force an update of software using RunOnce, without having an administrator log in, if there is a service running as Administrator running in the background?
EDIT: The main thing I want to be able to do is Run when the RunOnce does, I.E. before Explorer starts. I need to be able to install things, without booting into the Administrator account.
I'm not sure I understand the question. Let me try:
The service you mention, is it yours? If so, you can add code to it to imitate Windows: from your service, examine the RunOnce value and launch the executable it specifies. You can use the CreateProcessAsUser() API to launch it in the context of an arbitrary user. After launching the process, delete the RunOnce entry.
Or have I misunderstood your question?
EDIT: A service does not depend on any user being logged in. You can start your update process from the service as soon as the service itself starts, it will happen before any real user logs in to the computer.

Resources