Is there any TFTP Server for Altium Nanoboard NB3000 using the processor TSK3000A.
The example from the Altium gives a webserver and it doesnt use any file system.
I need to transfer a file from PC to Altium board using Ethernet. Also let me if there is any other way of doing this. I Had used TFTP earlier, so i prefer that.
I would use a processor which can run one of popular embedded OS's, e.g. Nios II, LM32, OpenRISC or another and run Linux, FreeRTOS, RTEMS or may be ECos on that processor.
This way you can implement TFTP or FTP or even NFS.
I am not too sure what OS can TSK3000A run. If you are planning to use this processor, perhaps best point of contact is either Altium technical support or community forum.
Related
I have a custom i.MX6Q-based board with working U-Boot and Linux (Ubuntu) setups. The micro and board have support for USB-OTG and one serial port; currently, the serial port serves the console for both U-Boot and Linux. However, we may need to use the serial port for another purpose, but we don't want to lose the console for U-Boot and Linux. Is it possible to use the USB-OTG port for the system console for both U-Boot and Linux?
I've done some research and found a couple of promising articles here and here, though the second article says this tidbit:
Unfortunately it won't work as system console as the gadget driver is loaded as a module, but we can use it for serial console.
I'm not sure I understand this, but it sounds like the method won't meet my needs, which is to use USB-OTG for both U-Boot and Linux system consoles. I did try these methods, but without luck, which may mean that U-Boot and Linux aren't built properly for the desired functionality.
So here are my questions:
Can this work for U-Boot?
Can this work for Linux?
Am I insane for contemplating this path?
For either, any guidance (e.g. tutorials, examples, etc.) would be greatly appreciated.
Thanks!
Can this work for U-Boot?
Yes, at least since U-Boot version 2008.10, the README file has stated:
Define the below if you wish to use the USB console.
CONFIG_USB_DEVICE
Define this to build a UDC device
CONFIG_USB_TTY
Define this to have a tty type of device available to
talk to the UDC device
CFG_CONSOLE_IS_IN_ENV
Define this if you want stdin, stdout &/or stderr to
be set to usbtty.
Note that these configuration symbols are not accessible using the menuconfig, and must be enabled in a configuration file.
Currently at least five boards use this U-Boot capability, based on the occurrence of CONFIG_USB_TTY in files in include/configs/, for example include/configs/ti_omap4_common.h.
This USB configuration requires non-default definitions for the stdin and stdout environment variables. Refer to the README documentation for the details.
Can this work for Linux?
Yes, Linux (at least since version 4.5) can have a serial console on a USB connection, either a USB-to-serial adapter on a host port or a USB serial gadget on a device port (using CDC/ACM).
For instance, in drivers/usb/gadget/Kconfig there's the selection:
config U_SERIAL_CONSOLE
bool "Serial gadget console support"
depends on USB_G_SERIAL
help
It supports the serial gadget can be used as a console.
In the Linux 5.7.8 kernel only two boards have default configurations that use this capability, for example see arch/arm/configs/aspeed_g4_defconfig.
Besides a proper configuration to build the necessary drivers, a serial-gadget console requires (1) the kernel parameter specification (e.g. console=ttyGS0,...), and (2) a login session initiated by a getty command (e.g. in the inittab file).
Am I insane for contemplating this path?
No comment.
Beware that should you encounter a kernel boot issue, the Linux serial-gadget console does not support earlycon nor earlyprintk capability.
Personally I prefer to use a serial link that is persistent regardless of the target board's state. That ensures the terminal emulator program does not complain about lost connections.
Addendum
Unfortunately this Linux console on a USB serial gadget does not display boot messages generated by the kernel (before the login prompt), even if all drivers are statically linked in to the kernel image.
Although the syslog has messages like
console [ttyGS0] enabled
g_serial gadget: g_serial ready
...
gs_open: ttyGS0 ((ptrval),(ptrval))
before the salient Freeing unused kernel memory message, the host side does not receive any console messages until userspace is active.
This shortcoming is also reported in this guide: https://linux-sunxi.org/USB_Gadget/Serial
Does anyone know if there is a Windows equivalent for the RDMA Communication Manager found on Linux (http://linux.die.net/man/7/rdma_cm -- librdmacm), and also ib verbs (libibverbs)?
Both these libraries are available when installing drivers for Infiniband Hardware on Linux distributions.....but what about Windows?
I've read about Windows Network Direct, but since i'm already familiar with the above mentioned Linux libs, I would like to use (if possible) their equivalents on Windows.
I have established data transfer (RDMA writes) between Linux nodes, but now I have to RDMA data from a Windows node to a Linux node, but at the moment I'm not sure which route to follow....
How do I determine whether Windows Network Direct will be compatible with IB verbs/RDMA CM?
I was under the impression that the verbs spec would be implemented on both platforms...!
Kind regards
librdmacm and libibverbs should be provided by your OpenFabrics Enterprise Distribution (OFED). There's an open source OFED for Windows provided by OFA: https://www.openfabrics.org/index.php/-download-windows-installer-.html.
The host part will be a PC program made from c# in which I will use LibUSBdotnet to do the communication.
My problem is how do I make the Linux side pickup and respond. I don't really know where to start.
Whenever I try to search for it, all result show are "how linux communicates with a device attached to it".
Or it does not matter if a device is host or client, because they utilize the same pipes/bus?
Can I use something in "/dev/usb***"?
I have seen "libusb" which I believe is the linux cousin of libusbdotnet.
Can I somehow use this library? If anyone can show me the right direction, I would really appreciate it.
AFAIK libusb is the library for usb-host side, not for usb-device side. So you cannot use it in your case. I suggest the same as myninjaname said - to analyse one of the Linux usb gadget drivers as a start point.
I am going to try to explain our scenario briefly.
We want to setup a simulation environment for our system running on Ubuntu so that we can use it together with our Windows based simulation tool suite. Currently we are running Ubuntu in a virtual machine using VirtualBox on a Windows host. In Ubuntu we use SocketCAN and we would like to continue to do so but instead of using real CAN hardware somehow setup CAN communication over Ethernet to the Windows host.
I am new to CAN on Linux but I have been reading about SocketCAN and was wondering if we could use virtual can (vcan) somehow?
I appreciate any help clarifying if, and if so, how SocketCAN over Ethernet could be achieved.
You can use socketcand. This is a daemon, that is running on the host, where you have you CAN interface (vcan or real can). The only thing you need to implement is the TCP based API in your Windows software.
I've recently bought a laptop with a touch pad that does not completely work under Linux. So I thought I might listen what data is sent to the PS2 controller (IO port 60) under Windows, and update the Linux driver accordingly. Do you know what tools I might use?
Perisoft Bushound - Expensive but very useful.
For your specific purpose I'd use some serial port monitor/sniffer software.
You may write your own tool that does the same, but that's a large amount of work. You should create a so-called file system filter driver (http://msdn.microsoft.com/en-us/windows/hardware/gg462968).