NETDCUA5 compatibility with NETCU8

  • Hello we are testing NETDCUA5 in a board that we made and manufactured for NETDCU8.


    We have found the next problems and some solutions. We post it to help more people that are doing the same.


    Please in some problems we need to Know if f&s can solve the problem or can give a solution:

    • In Port COM2 CTS and RTS for RS232 with hanshake, not works properly in NETDCUA5. Please can you add the functionality in the driver?
    • To have compatibility in AD (NETDCUA5<->NETDCU8), is necessary to put AD resolution to 10 bits. We have found the solution in the registry, we changed in registry and it works fine.
    • In NETDCU8 somecases we use the model without Ethernet, this model our board consumes 1.3W, but now with the new NETDCUA5 we are comsuming 2W. Is there any option in software to disable the ethernet conections or audio to have less power consumption. If it is not possible with software, we can desolder and dismount some component, can you tell which components we can disolder.


    • USB device works diferent to detect the usb connection and this produces that we have to change our board:
      • Connect the detect pin
      • disassemble resistors in data lines
      • Suppres filter coil
        We Know that all this changes have to be made because the USB speed is diferent. Our questions are:

        • f&s can change software or something to put this USB device to the same speed and can we use the same circuit as NETDCU8
        • Is possible in NETDCUA5 to configure 2 USB host as NETDCU8?


    Thanks a lot

  • Hello, thanks for your information.
    I would be intersting for us and customers which firmware do you use (HW, SW (Booloaders, Kernel)). You will also find a roadmap and a changelog in the download area which gives you basic information about the SW state.

    Quote

    In Port COM2 CTS and RTS for RS232 with hanshake, not works properly in NETDCUA5. Please can you add the functionality in the driver?

    Can you give me please details? I checked the code and await i works while "DCB::fRtsControl == RTS_CONTROL_HANDSHAKE && DCB::fOutxCtsFlow == TRUE" is set.

    Quote

    In NETDCU8 somecases we use the model without Ethernet, this model our board consumes 1.3W, but now with the new NETDCUA5 we are comsuming 2W. Is there any option in software to disable the ethernet conections or audio to have less power consumption. If it is not possible with software, we can desolder and dismount some component, can you tell which components we can disolder

    Please test by disable driver by delete "Imagepath" from HKLM\Comm\Ethnetx and ETHNETx1. If this not helps i will check if we can disable the HW in another way. For remove the parts contact out HW department (warranty is gone than:) or check if you can order without Ethernet (contact <!-- e --><a href="mailto:sales@fs-net.de">sales@fs-net.de</a><!-- e -->).


    Quote

    USBFN: f&s can change software or something to put this USB device to the same speed and can we use the same circuit as NETDCU8

    Try

    Code
    1. Reg open \drivers\builtin\usbfn
    2. Reg set value DLL string \ffsdisk\fs_usbfn.dll
    3. Reg set value ForceFullSpeed dword 1
    4. Reg save
    5. Reboot

    This is possibe since kerne V1.03.


    Quote

    USBH: Is possible in NETDCUA5 to configure 2 USB host as NETDCU8?

    Try attachment.

    Files

    • hsotg_port2.zip

      (40.62 kB, downloaded 524 times, last: )

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • Thanks a lot for your prompt answer.


    • About the RTS/CTS Pin on COM Port2, RTS and CTS can't be controlled. Please if you can try this command application
      https://www.dropbox.com/s/xcbhc5j8fz3tumk/sertest.exe
      Our software thecnician will try another time with a driver that we see in the post of PICOCOMA5, where you put that RTS functionallity is ok.


    • About the problem of power consumption we tried the option that you said and we can reduce 110mWatts, but we are 620mWatts from NETDCU8, we understand that it can consume more because RAM and others are bigger. Please can you explain how we can disable Audio, CAN, I2C, SPI, FSBUS, and others . Please how we can check if our CPU is Vybrid (two procesors or single). How we can contact to HW department?


    • USB Device Speed, This option to reduce speed that you said I understand that is only valid for windows CE, in bootloader is possible to change it?


    • About the USB on the Go we will try it.


    Thanks a lot

  • We have done more test, please can you answer the next doubts:

    • About the RTS/CTS Pin on COM Port2, RTS and CTS can't be controlled. Please if you can try this command application dropbox.com/s/xcbhc5j8fz3tumk/sertest.exe, This is done by c+ and it must control RTS and CTS pins. (It doesn't work properly in NETDCUA5, but it works in NETDCU8).
    • About the problem of power consumption we tried the option that you said and we can reduce 110mWatts, but we are 620mWatts from NETDCU8, we understand that it can consume more because RAM and others are bigger. Please can you explain how we can disable Audio, CAN, I2C, SPI, FSBUS, and others . Please how we can check if our CPU is Vybrid (two procesors or single). How we can contact to HW department?
    • USB Device Speed, This option to reduce speed that you said, I understand that is only valid for windows CE, in bootloader is possible to change it?


    Thanks a lot,

  • Hello,

    Quote

    About the RTS/CTS Pin on COM Port2, RTS and CTS can't be controlled. Please if you can try this command application dropbox.com/s/xcbhc5j8fz3tumk/sertest.exe, This is done by c+ and it must control RTS and CTS pins. (It doesn't work properly in NETDCUA5, but it works in NETDCU8).

    Sorry, i will rework this asp. In the base test i checket only RTS (DCB::RTSControl=RTS_TOGGLE).


    Quote

    USB Device Speed, This option to reduce speed that you said, I understand that is only valid for windows CE, in bootloader is possible to change it

    No, it is not possibel to change speed in bootloaders. Have you additional components in the lines (doide, resistors ,... ) or depends mal function on the routing?

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • I do not need the RTS/CTS, but COM2 is not working correct afte Change from NetDcu8 to NetDcuA5. I read the Bytes from COM2 using "READ FILE". I can read the Byte I received, but everytime when I read a newly received byte, I also read ALL Bytes received before. What am I doing wrong? Does anyone has a sample how to receive7send data using the COM2 (or COM3)?
    THANK YOU

  • INITIALISATION:


    HANDLE l_hCOM = CreateFile(chPort, GENERIC_READ|GENERIC_WRITE,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL );
    if (l_hCOM == INVALID_HANDLE_VALUE)
    ...
    g_hCOM = l_hCOM;
    dcb.DCBlength = sizeof(dcb);
    GetCommState (g_hCOM, &dcb);
    dcb.ByteSize = 8;
    dcb.Parity = NOPARITY;
    dcb.StopBits = ONESTOPBIT;
    dcb.BaudRate = CBR_19200;
    dcb.fOutxCtsFlow = 0;
    dcb.EvtChar = 0x0A;


    SetCommState(g_hCOM, &dcb);


    // COM-Port wird auf eintreffende Zeichen berwacht
    SetCommMask(g_hCOM, EV_RXCHAR);


    COMMTIMEOUTS ct;
    ct.ReadIntervalTimeout = 1;
    ct.ReadTotalTimeoutConstant = 1;
    ct.ReadTotalTimeoutMultiplier = 1;
    ct.WriteTotalTimeoutConstant = 1;
    ct.WriteTotalTimeoutMultiplier = 1;
    SetCommTimeouts(g_hCOM, &ct);


    n = SetupComm(g_hCOM, 4096, 1024);




    While running the Programm checks wether new data was received or not:


    bool Serial_Read (unschr* adr_ch)
    // ein Zeichen von serieller Schnittstelle einlesen, TRUE wenn ein Zeichen gelesen, FALSE wenn kein Zeichen gelesen
    {
    DWORD dwBytesRead;
    if (!ReadFile(g_hCOM, adr_ch, 1, &dwBytesRead, 0))
    dwBytesRead = 0;
    if (dwBytesRead == 1) return TRUE;
    else return FALSE;
    }



    Receiving one byte means reading a lot of Bytes. What am I doing wrong?


    THANK YOU

  • Hello,
    which kernel you are using?
    Can you please post your code?

    Quote

    CreasteFile()?
    SetCommState()?
    ReadFile()


    Thanks.

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • Hello,


    the code should be the same as for NetDCU8. I test your code on PicoCOMA5, same driver as on NetDCUA5 and it works. The SW and HW revisions are shown in the boot log or under HLKM\Platform in Registry.


    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • 00 "RestartReason"=string:Reset \
    01 "SRC_SRSR"=dword:16711525 \
    02 "KernelVersion"=string:NetDCUA5 V1.03 \
    03 "KernelVersionDate"=string:Dec 4 2013 \
    04 "KernelVersionTime"=string:12:56:16 \
    05 "StepStone Loader, Version"=dword:892358230 \
    06 "BoardType"=dword:2 \
    07 "BoardName"=string:NetDCUA5 \
    08 "BoardRevision"=dword:110 \
    09 "BootVerMajor"=dword:0 \
    10 "BootVerMinor"=dword:6 \
    11 "F3SSerial"=string: \
    12 "CompatMode"=dword:0 \

  • I switched NetDcuCfg back from Com1 to Com2 to get the values of the registry. After that I switched NetDcuCfg back to Com1. Since than everything is working fine. I will Monitore that and come back if something goes wrong.
    Is it necessary to update my kernel?

  • Yes i think your code should work with the above outlined versions.
    And by the way, when NDCUCfg is working with COM2: - why should your code not work with COM2:?

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

    Edited once, last by fs-support_ZU ().

  • I think that the necessary thing was to reboot the whole system. Before that, I only restarted my debug session, but not the board. Changing the comport for the NETDCUCfg lead to a power off and restart of the whole board including the operating system. I think this reboot was the necessary step to bring the comport back to work normally.

  • Hello,
    you are right - but this probelm is resolved since kernel 1.5 (1.05). Unfortunately the issue is not claer to identify by the roadmap because the origiinal report assumes another reason for this behavior ....
    Nevertheless uing recent System SW while developing phase is recommendable. So please update.
    Thanks.

    F&S Elektronik Systeme GmbH
    As this is an international forum, please try to post in English.
    Da dies ein internationales Forum ist, bitten wir darum, Beiträge möglichst in Englisch zu verfassen.

  • I managed to update NBoot and EBoot. Now I get the following message on COM1 while booting:


    Microsoft Windows CE Bootloader Common Library Version 1.2 Built Apr 3 2014 10:23:30
    Microsoft Windows CE Bootloader for NetDCUA5 Built Apr 3 2014
    Portions copyright (c) 2012 F&S Elektronik Systeme GmbH
    Boot Loader, Version 0.7
    NBoot, Version VN08
    HW rev. 1.10


    HW-Watchdog: ON
    System ready!
    Preparing for download...
    Press >S< to step into monitor...


    NetDCUA5 - WindowsCE Bootloader


    But now, I do not get any USB-communication with the board, from WIN7 I always get the message "USB-Gerät wurde nicht erkannt".
    What to do now?


    THANK YOU

  • WIN7 creates an "unknown device" and it is not possible to update the driver. When I try to update the driver with the one in the "NETDCU-USB-LOADER" Folder it tells me that the most current Driver is already installed. Installing the driver by right clicking on the ".inf" file and "install" is not possible, I get the message "this way of installing is not possible"


    PLEASE HELP. THANK YOU
    Dirk