Forum Update - Announcement about May 10th, 2018 update and your password.

Companion parts for Prop 2

13»

Comments

  • jmgjmg Posts: 11,675
    Cluso99 wrote: »
    As I said, lots of theory, no practical. I want to see something.
    I'm lost - users are downloading now with CP2110 (see above), and also CP2102N, and have downloaded to P1 for decades.
    That's just a serial link.
    The MCUs suggested are certainly working in many applications too.
    Is all that not practical enough for you ?
    No one has to use a small MCU, but they can do more that just replace a UART, and that's why they are worth tracking.
    All those other solutions are not going away.

  • jmgjmg Posts: 11,675
    edited May 20 Vote Up0Vote Down
    Expanding : in the SiLabs HID examples, I find this older host example
    ..\SimplicityStudio\v4\developer\sdks\8051\v4.1.1\examples\C8051F380DK\USB\HID\HIDtoUARTExample\ReadMe.txt
    That does seem to extract a HID 32b BAUD value, and update at 24MHz the UART0.TH1(8b) timers, so not the higher resolution possible of 48MHz & UART1.SBRL1(16b) of the UB3 - minor stuff.
    Compiles as
    F38x_HIDtoUARTExample.lnp "./src/F380_HIDtoUART.OBJ",
    "./src/F3xx_USB0_Descriptor.OBJ",
    "./src/F3xx_USB0_InterruptServiceRoutine.OBJ",
    "./src/F3xx_USB0_Main.OBJ",
    "./src/F3xx_USB0_ReportHandler.OBJ",
    "./src/F3xx_USB0_Standard_Requests.OBJ",
    "./src/SILABS_STARTUP.OBJ"
    TO "F38X_HIDTOUARTEXAMPLE.OMF.CRBUILD" 
    Program Size: data=88.2 xdata=384 const=181 code=4097
    LX51 RUN COMPLETE.  0 WARNING(S),  0 ERROR(S)
    

    Running that on a C8051F381 Eval Board, (set for 24MHz sysCLK) Win 10 PC connects as this

    F38x_HIDtoUARTExample_Appears.PNG

    I dug around and found a PC-Host HIDtoUART.cpp, that compiles to HIDtoUART.exe
    I edited the 1200..230400 limits, to be instead 1000..2000000 which is better more HW related boundaries for limits testing.
    Txmit tests ok on that from whole range of 1000~ 2MBd, TX of 2000 'U' counts 10,000 =\_ edges as expected. (ie nothing dropped in TX side)

    RX looks ok, but large/slow packets have some timeout in the TestSW at low speeds (more than a few seconds), and above ~ 600k baud, the loopback test starts to drop Rx Chars.
    600k is ok, 631578 is ok, and 666666 fails, so that's suspiciously close to the 63/64? Bytes/ms indicated in some places.

    At 2MBd-Echo, burst (mouse click) packets up to 328 bytes look ok, and ~343 fails, so limit is somewhere around there. Unclear what sets that.

    HID does seem to have lower total throughput than VCP, FWIU endpoints come into the mix, and looks like ~64 bytes/ms/endpoint ? so appx 640kBaud sustained ?

    Addit: Google also finds this, that seems to confirm the 64kB sustained limit per interface (endpoint) ?
    https://github.com/shraken/efm8_hidmulti
    says
    "Demonstrates a USB device using multiple HID interfaces using a full speed USB Silicon Labs EFM8UB2 device. This approach allows higher data rates over USB interrupt endpoints by spreading out the communication across multiple interfaces. The example provided demonstrates a dual interface allowing 128kB/sec but could be expanded to three interfaces for 192kB/sec on the EFM8UB2 device family.
    Other USB microcontrollers with more FIFO endpoints can expand this scaling even further.
    A software project using the hidapi library is provided to verify data receipt on the host.
    This project builds for a Silicon Labs EFM8UB2 device type and was tested on the EFM8UB2 Universal Bee starter kit.
    The porting effort is described in a blog entry I posted."


  • T ChapT Chap Posts: 3,780
    edited May 20 Vote Up0Vote Down
    I’m confused about what cluso means also. I have a prop loader app that loads the P1 on silabs Cp2110 HID usb UART. I program props all day every day. I would never burden a client with ftdi232 and the massive headaches of updates involved in that. With HID there is never an issue for any user to get Mac or pc to load binaries to P1 with my apps.

    BTW I never care about throughput and never tested. I only care about remote clients updating firmware
  • Here is my Prop loader Cp2110 app. It has a few features on the app to test a couple of GPIO and mess around with the config values. Basically I just hit Load File and find a binary, then hit Upload Eeprom. Very simple. I hope to convert this to P2 once I can get one a learn the load method.

    Because it can control GPIO, I have a new board with two props, and one of the load buttons will program one p1 and the other load button will load the other. Load EEPROM #1 and Load EEPROM #2. On Button Press, that button will first turn on or off a GPIO pin that controls some switches to determine which P1 the reset, tx and rx are connected to. So 1 usb interface can program two devices.
    646 x 657 - 69K
  • jmgjmg Posts: 11,675
    T Chap wrote: »
    Here is my Prop loader Cp2110 app. It has a few features on the app to test a couple of GPIO and mess around with the config values. Basically I just hit Load File and find a binary, then hit Upload Eeprom. Very simple. I hope to convert this to P2 once I can get one a learn the load method.

    Because it can control GPIO, I have a new board with two props, and one of the load buttons will program one p1 and the other load button will load the other. Load EEPROM #1 and Load EEPROM #2. On Button Press, that button will first turn on or off a GPIO pin that controls some switches to determine which P1 the reset, tx and rx are connected to. So 1 usb interface can program two devices.

    What Baud rates do you use for the various 'buttons' to download ?

    This is what the SiLabs test program looks like :
    F38x_HIDtoUARTExample_2MBd_345B.PNG

    Does your code require/assume a specific VID/PID ?
  • jmgjmg Posts: 11,675
    and further up the price curve is this HS-USB device / module ~$22 Module, ~ $5 chip

    https://www.digikey.com/product-detail/en/ftdi-future-technology-devices-international-ltd/MM930MINI/768-1336-ND
    https://www.digikey.com/product-detail/en/ftdi-future-technology-devices-international-ltd/FT930Q-T/768-1335-ND/

    The module is interesting, as it suggests firmware is installed and available, and offers HS-USB with

    * Asynchronous Serial data transfer rates from 300 baud to 12 Mbaud at TTL levels
    * One SPI master supports single / dual / quad modes of data transfer. Clock rate is up to 25 MHz
    * One SPI slave support single data transfer with 25MHz clock (SCH hints this could be quad ? )
    * I2C bus interface can be configured as master or slave, with data transfers up to 3.4Mbps

    Data is vague on exactly what works 'out of the box', in what driver forms ? ie which are VCOM and which are BOMS/HID/CDC or D2xx ?

    If it can manage all of the above, at the same time, that's getting useful.

  • jmgjmg Posts: 11,675
    edited May 30 Vote Up0Vote Down
    .. and more news on OctalSPI/HyperBUS Memory front :

    Cypress:
    The Semper Flash family includes AEC-Q100 automotive-qualified devices with an extended temperature range of -40°C to +125°C, supports 1.8-V and 3.0-V operating ranges, and is available in densities of 512Mb through 4Gb. The devices are offered with Quad Serial Peripheral Interface (SPI), Octal SPI and HyperBus™ interfaces. The Octal and HyperBus interface devices are compliant with the JEDEC eXpanded SPI (xSPI) standard for high-speed x8 serial NOR Flash and offer read bandwidth of 400 MBps.
    Availability : Cypress' 512Mb Semper Flash devices are sampling to lead customers now, with qualified samples available in the fourth quarter of 2018. Volume production of the devices with 24-ball BGA, 16-pin SOIC and 8-contact WSON packages is expected in the first quarter of 2019.


    These devices match the P2 temperature range, and would be well suited to higher reliability industrial uses.

    Addit: Data has this (quite fast erase times)
    •Program Time: 0.517 ms
    •Erase Time: 773 ms
    LOW POWER
    •Deep Power Down: 1.3 μA
    •Standby: 11 μA
    INTERFACE TYPE
    •Quad SPI
    •HyperBus
    •Octal
    TEMPERATURE RANGE
    •Automotive Grade 1: -40°C to 125°C
    •Automotive Grade 2: -40°C to 105°C
    •Automotive Grade 3: -40°C to 85°C
    •Industrial Plus: -40°C to 105°C
    •Industrial: -40°C to 85°C

    Safety Features
    ❐ Functional Safety with the Industry’s first ISO26262 ASIL B compliant and ASIL D ready NOR flash
    ❐ EnduraFlex Architecture provides High-Endurance and Long Retention Partitions
    ❐ Interface Cyclic Redundancy Check (CRC) detects errors on communication interface between host controller and Semper Flash device
    ❐ Data Integrity CRC detects errors in memory array
    ❐ SafeBoot reports device initialization failures, detects configuration corruption and provides recovery options
    ❐ Built-in Error Correcting Code (ECC) corrects Single-bit Error and detects Double-bit Error (SECDED) on memory array data
    ❐ Sector Erase Status indicator for power loss during erase

    AutoBoot enables immediate access to the memory array following power-on
    Hardware Reset through CS# Signaling method (JEDEC) OR individual RESET# pin

    It also shows a M0 MCU inside, so this may have some delays ? - not clearly spec'd on the data thus far. Does mention Autoboot mode ?
  • jmgjmg Posts: 11,675
    ..and recent news about protection for industrial USB ports... for those looking at P2 direct-pin USB ports, this sort of protection could be important.

    https://www.maximintegrated.com/en/aboutus/newsroom.html/pr_1579377341

    "QFN24 4x4mm Protects from overvoltage, negative voltage, and ground potential differences; Integrated ±50VDC protection for VBUS/GND power lines; Integrated ±40.7VDC protection for D+/D- data lines"
  • Cluso99 wrote:
    I want to see you show a live example of booting and downloading code to a P1 (since you haven't invested in anything to test P2).
    As I said, lots of theory, no practical. I want to see something. Then I may be convinced.
    Give jmg a break. Maybe he's a journalist. :)

    -Phil
    “Perfection is achieved not when there is nothing more to add, but when there is nothing left to take away. -Antoine de Saint-Exupery
  • jmgjmg Posts: 11,675
    Give jmg a break. Maybe he's a journalist. :)


    haw haw haw indeed. Maybe those screen-grabs above, are not even from real devices, probably just photoshopped, eh ?!?

  • jmgjmg Posts: 11,675
    jmg wrote: »
    and further up the price curve is this HS-USB device / module ~$22 Module, ~ $5 chip

    https://www.digikey.com/product-detail/en/ftdi-future-technology-devices-international-ltd/MM930MINI/768-1336-ND
    https://www.digikey.com/product-detail/en/ftdi-future-technology-devices-international-ltd/FT930Q-T/768-1335-ND/

    The module is interesting, as it suggests firmware is installed and available, and offers HS-USB with

    * Asynchronous Serial data transfer rates from 300 baud to 12 Mbaud at TTL levels
    * One SPI master supports single / dual / quad modes of data transfer. Clock rate is up to 25 MHz
    * One SPI slave support single data transfer with 25MHz clock (SCH hints this could be quad ? )
    * I2C bus interface can be configured as master or slave, with data transfers up to 3.4Mbps

    Data is vague on exactly what works 'out of the box', in what driver forms ? ie which are VCOM and which are BOMS/HID/CDC or D2xx ?

    If it can manage all of the above, at the same time, that's getting useful.

    I'll bump with more on this , after some dialog with FTDI re their FT93x series

    They state the max baud is 8MBd, but also admit when pressed for PLL info, that the SysCLK on these parts is 100MHz and only can be 100MHz
    - that's quite restrictive, and means their claimed 8MBd is not correct, as it will be 8.3333' MBd, or 7.6923 MBd when derived from 100MHz
    It's a pity they do not allow for 96MHz, as then their UART Baud rates would be compatible with their (and others) UART parts - those all use 48/24MHz derived baud, which is USB based.'
  • jmgjmg Posts: 11,675
    edited June 28 Vote Up0Vote Down
    Clock Generators

    .. I see Digikey have recently expanded their part codes for SiLabs Si5351A i2c clock generators, to include quite a few pre-programmed parts.

    A P1/P2 useful one looks to be Si5351A-B05335-GT

    Suggests 50/tube, with stock lead time of 4 weeks (7/25/2018) @ $0.88140/50

    Si5351A-B05335-GT Crystal Frequency (MHz): 27.000000000 Internal Load Capacitance (pF): 10 SSC: Disabled Default I2C address: 0x60
    CLK0 (MHz): 5.000000000 from PLLA
    CLK1 (MHz): 1.000000000 from PLLA
    CLK2 (MHz): 2.000000000 from PLLA

    ie this pre-programmed part powers up (no i2c action), with the above defaults of 5MHz/2MHz/1MHz

    Suitable Crystals could be

    XRCGB27M000FAN00R0 Murata CRYSTAL 27.0000MHZ $0.15750/3k ±25ppm ±25ppm (2.00mm x 1.60mm)
    Murata do make ±10ppm Xtals in that family, but not showing at 27MHz - appears that 24,25,26,32 MHz are the mainstream choices - 10ppm models spec 2ppm/year aging, vs 5ppm for 25ppm
    Seems those are recent ones, targeting bluetooth designs
    other candidates :
    TSX-3225 25.0000MF20X-AJ3 EPSON $0.255/3k Crystal 25MHz ±20ppm ±10ppm 8pF 40 Ohms (3.20mm x 2.50mm) aging : ±1ppm/yr max
    ABM10W-27.0000MHZ-7-B1U-T3 $0.36/3k 27MHz ±10ppm ±10ppm 7pF 100 Ohms Fundamental -20°C ~ 70°C (2.50mm x 2.00mm) aging : ±2ppm/yr max

    5MHz default works well with P1, and some i2c bytes can bump that to any MHz value.
  • OzPropDev did some nice work on adjusting frequencies of these SI5351 from the P1. It would be an easy port to P2

    https://forums.parallax.com/discussion/163409/silabs-si5351-clock-generator-spin-driver
  • jmgjmg Posts: 11,675
    This news from MAXIM is for a 4 channel 5kV RMS isolator, to 200MBps, claims

    https://www10.edacafe.com/nbc/articles/1/1606762/Maxim-5kVRMS-Reinforced-Digital-Isolator-2x-More-Throughput-4x-Lower-Power

    "Delivering up to 2x greater throughput at 4x lower power consumption versus competing solutions, the MAX22445 provides reliable communication across the isolation barrier to ensure safe operation of compact industrial, medical and other equipment."

    Not as cheap as a venerable H11L1, but far faster and with higher isolation and with 4 channels in SO16W, if you need speed and isolation this looks a nice series.
Sign In or Register to comment.