4 Replies Latest reply on Jun 8, 2015 8:40 PM by un3x

    PSoC 5LP functions? USB host & CAN receiver implemented via Analog Blocks


       Hi, I'm new to PSoC but not to embedded controllers and making things talk to each other and then tell me or do for me what I want. A project I am investigating has the below functional high level design. The intent is to embed low cost development boards in the product to establish and determine demand. My expectation is in the low hundreds, so a PCB design may or may not happen.



      The parts I'm researching are specifically the mass storage and the CAN and K-Line implementation. 


      Mass storage:
      The CY8CKIT-059 has a micro USB connector on the target: can this be a "Host" to a USB thumb drive via "host adapter cable"? I've been reading the forums and this thread suggests no existing easy solution. Or am I missing something and using this port as USB host is physically/electrically impossible? I did also find "emUSB-Host - USB host stack" software on Segger but do not understand how that would apply to the CY8KIT-059 board.


      Alternatively, I have used SD cards before with arduino, etc, but I'm wanting to use the CY8CKIT-059 as is with minimal additional components. If anyone knows of an embedded dev board with SD card in similar price range, I'm interested, however my top choice would be able to host thumb drives.


      CAN Transceiver:
      Every CAN example I have found immediately assumes the implementation adds a transceiver IC external to the PSoC. Actually, of all the research I've done, only the $19 NXP has the CAN controller with transceiver included in their Cortex M0 implementation. I know in previous research, I saw implementations of CAN transceivers using discrete components, but the best I could find now is this gentleman's circuit using an OPAMP.


      Can that circuit be implemented in the PSoc 5LP's analog subsystem? Apologies if the answer would be obvious have I had actual experience with PSoC; I'm still astounded that dragging and dropping blocks in software is replacing a breadboard! The point of this question is to determine if I need to dive head first into PSoC or move on to the NXP for this project. 




      If this CY8CKIT-059 devboard is able to perform either Mass Storage or CAN via modular blocks, this board is likely to be my choice. Mass storage isn't a game changer, but if CAN can be had without buying transceivers, I'm going to be happy. And I'll also assume K-Line can be implemented if CAN can. 


      If any of these "modules" are created by me and helped or perfected by the community's help, I will share how I did it so they can be integrated into PSoC.


      The end product will be a small box sealed with epoxy to keep add-ons safe and help protect the IP. I'll probably build them by hand; haven't researched other means for assembly.



        • 1. Re: PSoC 5LP functions? USB host & CAN receiver implemented via Analog Blocks

          PSOC 5LP supports




          1) CAN, but external xcvr or use onboard OpAmps and Comparators in a "discrete" design, your own solution


          2) BlueTooth, Bluetooth Pioneer Board     www.cypress.com/ and wireless www.cypress.com/ez-bleprocmodule/


          3) O2 Sensor conditioning via 5LP DelSig or SAR (to 20 bits delsig, 12 bits SAR)


          4) SD Card via emFile component in 5LP


          5) Digital filter for signal path conditioning


          6) WiFi external as you suggested


          7) PSOC does not support USB Host, components available however are USBUART or simple USB 2.0


          8) No support for K-Line, I am not familiar, but seems like simple serial buss ? So bit bang or


          use LUT component, implement a state machine.......or UART ? PSOC has many serial capabilities,


          I2C, I2S, SPI, UART, LIN...

          • 2. Re: PSoC 5LP functions? USB host & CAN receiver implemented via Analog Blocks

            I am afraid you will need a transceiver together with a PSoC5LP to have the voltage-levels shifted to 12/24V which a PSoC cannot handle directly. An NCV7341 will be sufficent, but there might be other modules.


            There is a component to interface SD-cards as mass-storage devices and there is an internal EProm within a PSoC5.





            • 3. Re: PSoC 5LP functions? USB host & CAN receiver implemented via Analog Blocks

              Keep in mind below several capabilites shown as "0", thats because they are entries for dedicated


              capabilities, but this part has 16 UDB blocks which can implement those capabilities. A UDB is


              functionally an 8 bit programmble logic element with additional logic. There is a standard component


              library using these as elements and you can of course create your own custom components.




              www.cypress.com/   Many videos

              • 4. Re: PSoC 5LP functions? USB host & CAN receiver implemented via Analog Blocks

                Thanks for your answers. Upon more googling, I believe K-Line is a subset of LIN bus, so that is covered. Oh, and yes, the +12V will be dealt with accordingly before the CY8CKIT-059 board, but thank you for making sure that wasn't an assumption. Haven't researched that yet, but there the goal is reverse polarity protection and output voltage all things inside my box will agree with.


                I'm still stuck on the concept if the CAN transceiver can be implemented in the blocks. If an educated guess about this could be given, I'd like to know... ranging from "I wouldn't try that" to "hmmmm, maybe" to "cannot immediately see why not".


                I'm clueless on USB; so that's a no or probably not with regards to using that micro connector to talk to a thumb drive?


                My hope is to minimize complication of assembly and I like everything about this kit - I'm getting more with less cost and smaller footprint.