• We did not send an email asking for donations - please read this post.

How to brows files inside a single board embeded computer?

Agoo

New Member
Joined
Sep 23, 2022
Messages
4
Reaction score
0
Credits
110
Hello, We are using a device with a single board computer embeded inside. It has a usb and rs232 ports. I tried ActiveSync and windows device mobile center but my PC did not detect the device and I couldn't sync. Any way for doing this? or any software I can find for this?

Picture of the computer brand is attached:

thx
 

Attachments

  • Single board brand.jpg
    Single board brand.jpg
    92.6 KB · Views: 51
Last edited:


OP
A

Agoo

New Member
Joined
Sep 23, 2022
Messages
4
Reaction score
0
Credits
110
Even if I can't see files and directories or there were no files or directories still It will be OK if I can read the code inside SBC and inspect it and write it back into the SBC. Is this possible? If so how?
 

KGIII

Super Moderator
Staff member
Gold Supporter
Joined
Jul 23, 2020
Messages
7,452
Reaction score
6,440
Credits
60,409
These seem like questions best answered by the vendor/OEM of said SBC.

There's no single standard SBC with a standard set of features. You haven't even let us know who made it. It might not even run a standard Linux, for that matter. (We have no way of knowing.)
 
OP
A

Agoo

New Member
Joined
Sep 23, 2022
Messages
4
Reaction score
0
Credits
110
Vendor not answering probably SBC is very old. I really need help with this. Only things is printed on the board is TTM-SA2, 94V-0 (see attached). I understand this looks like a challenging project but keep in mind solving normal issues is not a big thing. It is big when you solve an unsolvable challenging problem.

Device software has an option which can read information I need and display these information on the computer monitor but there is no way of saving these info into a file. I want to save these information in a file as a backup and keep it for the future when device needed repair and loading these info into the device again.

I also tried to log info via "serial port monitor" when I use this option to read the information. This was successful and I can see information I need are there.

I can connect to the device via rs232. I am looking for a way to send commands to the device to read info from a certain address of the memory and to be able to write it back into the same address. I think I can find the address of the info I want from "serial port monitor" log. Now I need to find a tool to be able to read info from that address in binary and write back using the same tool into the same address. Is this possible? If so what tools are out there to help me with this?

Device software uses IRP_MJ_READ command to read info I want (see attached log). May be I can use IRP_MJ_READ and IRP_MJ_write commands to read and write info I want directly. Any advice in this?

103 IRP_MJ_READ - Transfers data from a COM port to a client (COM4) - 349 bytes of 349
STATUS_SUCCESS
05 90 0c 00 e8 a1 50 01 00 00 5c 01 f6 00 04 00 ...è¡P...\.ö...
00 00 60 01 f6 00 2c 01 00 00 8c 02 f6 00 04 00 ..`.ö.,...Œ.ö...
00 00 90 02 f6 00 7c 00 00 00 0c 03 f6 00 a4 1f ...ö.|.....ö.¤.
00 00 b0 22 f6 00 a4 1f 00 00 54 42 f6 00 94 11 ..°"ö.¤...TBö.”.
00 00 e8 53 f6 00 20 0a 00 00 08 5e f6 00 08 07 ..èSö. ....^ö...
00 00 10 65 f6 00 c0 12 00 00 d0 77 f6 00 b0 04 ...eö.À...Ðwö.°.
00 00 80 7c f6 00 c4 09 00 00 44 86 f6 00 4c 04 ..€|ö.Ä...D†ö.L.
00 00 90 8a f6 00 b0 04 00 00 40 8f f6 00 34 08 ..Šö.°[email protected]ö.4.
00 00 74 97 f6 00 4c 04 00 00 c0 9b f6 00 4c 04 ..t—ö.L...À›ö.L.
00 00 0c a0 f6 00 b8 0b 00 00 c4 ab f6 00 48 00 ... ö.¸...Ä«ö.H.
00 00 0c ac f6 00 0c 00 00 00 18 ac f6 00 10 0e ...¬ö......¬ö...
00 00 28 ba f6 00 10 0e 00 00 38 c8 f6 00 10 0e ..(ºö.....8Èö...
00 00 48 d6 f6 00 0c 00 00 00 54 d6 f6 00 80 04 ..HÖö.....TÖö.€.
00 00 d4 da f6 00 e0 01 00 00 b4 dc f6 00 a4 1f ..ÔÚö.à...´Üö.¤.
00 00 58 fc f6 00 e8 03 00 00 40 00 f7 00 80 00 ..Xüö.è[email protected]÷.€.
00 00 c0 00 f7 00 10 00 00 00 d0 00 f7 00 0c 00 ..À.÷.....Ð.÷...
00 00 dc 00 f7 00 0c 00 00 00 e8 00 f7 00 60 03 ..Ü.÷.....è.÷.`.
00 00 48 04 f7 00 b0 01 00 00 f8 05 f7 00 a4 1f ..H.÷.°...ø.÷.¤.
00 00 9c 25 f7 00 04 00 00 00 a0 25 f7 00 10 0e ..œ%÷..... %÷...
00 00 b0 33 f7 00 0c 00 00 00 bc 33 f7 00 ac 0d ..°3÷.....¼3÷.¬.
00 00 68 41 f7 00 a8 00 00 00 10 42 f7 00 a4 1f ..hA÷.¨....B÷.¤.
00 00 b4 61 f7 00 8c 00 00 00 f0 60 92 ..´a÷.Œ...ð`’
 

Attachments

  • Single board brand.jpg
    Single board brand.jpg
    92.6 KB · Views: 40
Last edited:
OP
A

Agoo

New Member
Joined
Sep 23, 2022
Messages
4
Reaction score
0
Credits
110
I don't have any information about this SBC. I tried to get some info from TTM but no reply from them. Following is a part of the serial port monitor log. There are read and write commands along with communication parameters commands which shows it may be possible to read, change and write back the info I want It seems with a small C program it can be done but I have no knowledge of any type of programing.


1 IRP_MJ_CREATE - Opens a COM port (COM4)
STATUS_SUCCESS
Opened by:
C:\device\Transfer.exe

3 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_SET_QUEUE_SIZE - Request sets the size of the internal receive buffer
InSize - 204900
OutSize - 200

5 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_BAUD_RATE - Returns the baud rate that is currently set for a COM port
BaudRate - 115200

7 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_LINE_CONTROL - Request returns information about the line control set for a COM port
StopBits - 0 (1 stop bit)
Parity - 0 (NO_PARITY)
WordLength - 8

9 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_CHARS - Request returns the special characters that Serial uses with handshake flow control
EofChar - 0
ErrorChar - 0
BreakChar - 0
EventChar - 0
XonChar - 17
XoffChar - 19

11 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_HANDFLOW - Request returns information about the configuration of the handshake flow control set for a COM port
ControlHandShake - 0x00
FlowReplace - 0x00
XonLimit - 102450
XoffLimit - 25612

13 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_PROPERTIES - Request returns information about the capabilities of a COM port
wPacketLength - 64
wPacketVersion - 2
dwServiceMask - 0x00000001 (SP_SERIALCOMM)
dwMaxTxQueue - 0
dwMaxRxQueue - 0
dwMaxBaud - 0x10000000 (Programmable baud rates available)
dwProvSubType - 0x00000001 (RS-232 serial port)
dwProvCapabilities - 0x000000ff (DTR and DSR | Interval timeouts | Parity checking | Receive Line Signal Detect | RTS and CTS | XON and XOFF | Total elapsed timeouts | XON and XOFF flow control)
dwSettableParams - 0x0000007f (Baud rate | Data bits | Handshaking (flow control) | Parity | Parity checking | Receive Line Signal Detect | Stop bits)
dwSettableBaud - 0x1007ffff (75 bps | 110 bps | 134.5 bps | 150 bps | 300 bps | 600 bps | 1200 bps | 1800 bps | 2400 bps | 4800 bps | 7200 bps | 9600 bps | 14400 bps | 19200 bps | 38400 bps | 56K bps | 57600 bps | 115200 bps | 128K bps | Programmable baud rates available)
wSettableData - 0x0000000f (5 data bits | 6 data bits | 7 data bits | 8 data bits)
wSettableStopParity - 0x00001f07 (Even parity | Mark parity | No parity | Odd parity | Space parity | 1 stop bit | 1.5 stop bits | 2 stop bits)
dwCurrentTxQueue - 0
dwCurrentRxQueue - 204900

15 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_BAUD_RATE - Returns the baud rate that is currently set for a COM port
BaudRate - 115200

17 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_LINE_CONTROL - Request returns information about the line control set for a COM port
StopBits - 0 (1 stop bit)
Parity - 0 (NO_PARITY)
WordLength - 8

19 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_CHARS - Request returns the special characters that Serial uses with handshake flow control
EofChar - 0
ErrorChar - 0
BreakChar - 0
EventChar - 0
XonChar - 17
XoffChar - 19

21 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_HANDFLOW - Request returns information about the configuration of the handshake flow control set for a COM port
ControlHandShake - 0x00
FlowReplace - 0x00
XonLimit - 102450
XoffLimit - 25612

23 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_SET_BAUD_RATE - Request sets the baud rate on a COM port. Serial verifies the specified baud rate
BaudRate - 115200

25 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_CLR_RTS - Request clears the RTS control signal

27 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_CLR_DTR - Request clears the DTR control signal.

29 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_SET_LINE_CONTROL - Request sets the line control register
StopBits - 0 (1 stop bit)
Parity - 0 (NO_PARITY)
WordLength - 8

31 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_SET_CHARS - Request sets the special characters that Serial uses for handshake flow control
EofChar - 0
ErrorChar - 0
BreakChar - 0
EventChar - 0
XonChar - 17
XoffChar - 19

33 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_SET_HANDFLOW - Request sets the configuration of handshake flow control
ControlHandShake - 0x00
FlowReplace - 0x00
XonLimit - 51225
XoffLimit - 51225

35 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_SET_TIMEOUTS - Request sets the timeout value's that the driver uses with read and write requests
ReadIntervalTimeout - 50
ReadTotalTimeoutMultiplier - 0
ReadTotalTimeoutConstant - 50
WriteTotalTimeoutMultiplier - 0
WriteTotalTimeoutConstant - 0

37 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_SET_WAIT_MASK - Request configures Serial to notify a client after the occurrence of any one of a specified set of wait events
Mask - 0x00000001 (EV_RXCHAR)

40 IRP_MJ_WRITE - Request transfers data from a client to a COM port (COM4) - 9 bytes of 9
STATUS_SUCCESS
a0 09 00 00 00 01 3c 01 92 12345678


41 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_WAIT_ON_MASK - Request is used to wait for the occurrence of any wait event specified by using an IOCTL_SERIAL_SET_WAIT_MASK request
Mask - 0x00000001 (EV_RXCHAR)

43 IRP_MJ_DEVICE_CONTROL - Request operates a serial port (COM4)
STATUS_SUCCESS
IOCTL_SERIAL_GET_COMMSTATUS - Request returns information about the communication status of a COM port
Errors - 0
HoldReasons - 0
AmountInInQueue - 11
AmountInOutQueue - 0
EofReceived - 0
WaitForImmediate - 0

45 IRP_MJ_READ - Transfers data from a COM port to a client (COM4) - 5 bytes of 5
STATUS_SUCCESS
a0 12 00 00 00
....


From all of the lines bellow I am interested in the lines in bold. This lines reads and write data from and to the device. I need a small program (in C for example) to do all the above lines. I want it ask me first "enter com port" then "enter baud rate" then "enter data address" and then starts reading my requested bytes (for example 12345678) and saving it inside hard disk in a txt file (asking me the file name and place) asks me "enter new value (for example 22222222) and write the new value in place of the previous 12345678 byts (overwriting it) and confirm write was successful.
Would this be possible? I would appreciate if some one has time to do this for me. I can pay in Crypto if it was successful.
Please reply or email me at agooseventapegie (at) gmail (dot) com
 

NORD

Well-Known Member
Joined
Jan 4, 2019
Messages
423
Reaction score
313
Credits
2,218
$100 Digital Ocean Credit
Get a free VM to test out Linux!

Linux.org Hosting Donations
Consider making a donation


Top