EmbeddedRelated.com
Forums

about Maxim MAX3421E

Started by liste11 December 4, 2008
Hello All,

I need a feedback about MAX3421E. I'm developing a particular device, and
my boss wondering if we are able to add on our device the USB.

I'm using a Freescale MFC5213 micro, and I'm able to use SPI, so my
question regarding the effort required to implement this part.
I read something on the web about this component (MAX3421E), but would be
great for me to have a feedback directly from a developers and not from a
seller :)

My goal is to have the possibility to write on the USB some data that I'll
pass by SPI and not more. I guess this device should not be plug and play,
so, what is your opinion about the effort required to get my goal?

I don't have a particular bond with Maxim, so, any hints that you have are
more than welcome.
Best regards
Liste11


In article <GOednRbgH6bUearUnZ2dnUVZ_gqdnZ2d@giganews.com>, 
andrea.listello@mmarelli-se.com says...
> Hello All, > > I need a feedback about MAX3421E. I'm developing a particular device, and > my boss wondering if we are able to add on our device the USB. > > I'm using a Freescale MFC5213 micro, and I'm able to use SPI, so my > question regarding the effort required to implement this part. > I read something on the web about this component (MAX3421E), but would be > great for me to have a feedback directly from a developers and not from a > seller :) > > My goal is to have the possibility to write on the USB some data that I'll > pass by SPI and not more. I guess this device should not be plug and play, > so, what is your opinion about the effort required to get my goal? > > I don't have a particular bond with Maxim, so, any hints that you have are > more than welcome. > Best regards > Liste11
Well recently I tried to get the datasheet for the device as it was only supplied on request, i.e. after giving details. I am still waiting for datasheet as so far the datasheet sent via email was ZERO bytes long! Don't even get me going on the website being browser specifc. -- Paul Carpenter | paul@pcserviceselectronics.co.uk <http://www.pcserviceselectronics.co.uk/> PC Services <http://www.pcserviceselectronics.co.uk/fonts/> Timing Diagram Font <http://www.gnuh8.org.uk/> GNU H8 - compiler & Renesas H8/H8S/H8 Tiny <http://www.badweb.org.uk/> For those web sites you hate
On Dec 4, 9:08=A0am, "liste11" <andrea.liste...@mmarelli-se.com> wrote:
> Hello All, > > I need a feedback about MAX3421E. I'm developing a particular device, and > my boss wondering if we are able to add on our device the USB. > > I'm using a Freescale MFC5213 micro, and I'm able to use SPI, so my > question regarding the effort required to implement this part. > I read something on the web about this component (MAX3421E), but would be > great for me to have a feedback directly from a developers and not from a > seller :) > > My goal is to have the possibility to write on the USB some data that I'l=
l
> pass by SPI and not more. I guess this device should not be plug and play=
,
> so, what is your opinion about the effort required to get my goal? > > I don't have a particular bond with Maxim, so, any hints that you have ar=
e
> more than welcome. > Best regards > Liste11
USB host-side design, eh? 75 % stack 24 % driver for your specific USB toy 1 % MAX3421 hardware interface or something like that if USB was simple on embedded devices, everybody would be doin' it So if I were you I would be talking about where the stack and driver software is coming from.... Chris
In article <MPG.23a21d089b7eaa479896c5@172.16.0.1>, 
paul@pcserviceselectronics.co.uk says...
> In article <GOednRbgH6bUearUnZ2dnUVZ_gqdnZ2d@giganews.com>, > andrea.listello@mmarelli-se.com says... > > Hello All, > > > > I need a feedback about MAX3421E. I'm developing a particular device, and > > my boss wondering if we are able to add on our device the USB. > > > > I'm using a Freescale MFC5213 micro, and I'm able to use SPI, so my > > question regarding the effort required to implement this part. > > I read something on the web about this component (MAX3421E), but would be > > great for me to have a feedback directly from a developers and not from a > > seller :) > > > > My goal is to have the possibility to write on the USB some data that I'll > > pass by SPI and not more. I guess this device should not be plug and play, > > so, what is your opinion about the effort required to get my goal? > > > > I don't have a particular bond with Maxim, so, any hints that you have are > > more than welcome. > > Best regards > > Liste11 > > Well recently I tried to get the datasheet for the device as it > was only supplied on request, i.e. after giving details. > > I am still waiting for datasheet as so far the datasheet sent > via email was ZERO bytes long! > > Don't even get me going on the website being browser specifc.
According to Maxim's web site (which works fine with Firefox), the MAX3421E is _software compatible_ with the MAX3420E, for which a data sheet is readily available for download. According to the MAX3421E FAQ page located at: http://www.maxim-ic.com/appnotes.cfm/an_pk/3782 ------------------------------------------------------- How does the MAX3421E electrically differ from the MAX3420E? Both devices have two voltage pins, VCC and VL. VL serves as the threshold voltage for the on-chip level translators, which allow the parts to operate in mixed-voltage systems. If you compare the two supply currents, ICC and IL, for the two parts, you see that they differ because: * The MAX3420E powers its oscillator, PLL, and transceiver from VCC, and its digital logic from VL. * The MAX3421E powers everything, oscillator, PLL, transceiver, and its digital logic from VCC. This results in a higher ICC than for the MAX3420E. --------------------------------------------------------- Is the MAX3421E a drop-in replacement for the MAX3420E? No. The MAX3421 has more signal pins than the MAX3420E, and the MAX3421E TQFP package (5mm by 5mm) is smaller than the MAX3420E TQFP package (7mm by 7mm). --------------------------------------------------------- Is the MAX3421E code-compatible with the MAX3420E? Yes. When the MAX3421E powers on or is reset, it defaults to peripheral mode with the same register set as the MAX3420E. [Gene here: The '3421E can be a USB peripheral OR a USB host. If all you want to do is send a little data, you could set it up as an HID peripheral, and Windows would recognize it as a keyboard/mouse/whatever. If you want to do something more sophisticated, you will have to write a driver.] --------------------------------------------------------- What is added to the MAX3421E when operating as a USB peripheral that makes it different than the MAX3420E? 1. The MAX3421E adds four general-purpose input pins, and four general-purpose output pins. This brings the GPIO total to eight in, eight out. 2. The MAX3421E adds interrupt requests for the eight general-purpose input pins. Each pin has an interrupt enable bit and edge polarity bit associated with it. 3. The MAX3421E has a bit called SEPIRQ. This bit allows the GPX pin to serve as a second interrupt output pin (in addition to INT), which is active only for the GPIN interrupts. 4. The MAX3421E can program the time at which the INT pin deasserts and reasserts in edge interrupt mode when one interrupt is cleared and another is pending. The MAX3420E uses a fixed time of 10.6&#4294967295;S for this interval. --------------------------------------------------------- --Gene
> I need a feedback about MAX3421E. I'm developing a particular device, and > my boss wondering if we are able to add on our device the USB. > > I'm using a Freescale MFC5213 micro, and I'm able to use SPI, so my > question regarding the effort required to implement this part. > I read something on the web about this component (MAX3421E), but would be > great for me to have a feedback directly from a developers and not from a > seller :) > > My goal is to have the possibility to write on the USB some data that I'll > pass by SPI and not more. I guess this device should not be plug and play, > so, what is your opinion about the effort required to get my goal?
At one time Maxim were planning on producing their own USB host stack to support the MAX3421E but, when I last looked, this still wasn't available. I have used one of these in conjunction with GHI Electronics USB host stack. This saved me some time and worked quite well enough for the application that I had which used hub, mass storage and serial I/O (FTDI, Prolific) devices. The performance wasn't great as one might expect. GHI were responsive to any faults that I found and worked around a couple of the faults in the chip on BULK endpoints. I last used it about two years ago so I'm not sure what has changed since then. Andrew
Paul Carpenter wrote:

> Well recently I tried to get the datasheet for the device as it > was only supplied on request, i.e. after giving details. > > I am still waiting for datasheet as so far the datasheet sent > via email was ZERO bytes long!
Searching at Google lists it as the 3rd link: http://www.ghielectronics.com/download/general/MAX3421E.pdf Looks like a nice chip and should be possible to use it for adding USB support for a fast microcontroller. Even Digikey has it for $4.86 for quantities of 100. Another idea would be to use a microcontroller with integrated USB, like one of the STM32 series, or even an additional microcontroller, which can handle the USB traffic and which are more flexible for handling the data and preprocess it for the main CPU, e.g. the C8051F326 from Silicon Laboratories, if you don't need a host controller. -- Frank Buss, fb@frank-buss.de http://www.frank-buss.de, http://www.it4-systems.de
On Thu, 04 Dec 2008 08:08:09 -0600, liste11 <andrea.listello@mmarelli-se.com> wrote:
> I need a feedback about MAX3421E. I'm developing a particular device, and > my boss wondering if we are able to add on our device the USB.
--snip--
> My goal is to have the possibility to write on the USB some data that I'll > pass by SPI and not more. I guess this device should not be plug and play, > so, what is your opinion about the effort required to get my goal?
I'm not familiar with either of the Maxim chips you mentioned, but you might take a look at FTDI's assortment of USB interface chips: http://www.ftdichip.com/ Here's a possible implementation that you'd have to wire up: USB to SPI Bus Interface Sample Project (URL hand-typed) http://www.ftdichip.com/Projects/MPSSE/FT2232C-Proj01_v11.pdf You might also try using an off-the-shelf FTDI MM232R USB-serial module rigged up to operate in SPI/I2C mode. The MM232R is a tiny PC board only slightly larger than the USB-B socket mounted on it; it is available from Digi-Key and Mouser for around $20US. There are PDF copies of John Hyde's 2007 Embedded Systems Conference seminar ESC-242 "How to Use USB Without Knowing USB" which describes how to wire up an MM232R for I2C or SPI floating around the 'web, but I can't seem to locate one. I know you can download the code from his 'web site: USB Design By Example http://www.usb-by-example.com/ here: http://www.usb-by-example.com/ESC_Examples.zip FTDI provides MSWinXX drivers (and Linux as well, if I recall) for the module, and the FTDI site provides datasheets for their chips as well the MM232R module. If you prefer I2C, you ,might take a look at this module: USB-I2C Communications Module http://www.robot-electronics.co.uk/htm/usb_i2c_tech.htm Hope something in this melange helps. <grin!> Frank McKenney -- Recessions are the market's way of teaching Americans Economics. -- Frank McKenney, McKenney Associates Richmond, Virginia / (804) 320-4887 Munged E-mail: frank uscore mckenney ayut mined spring dawt cahm (y'all)
I used an FTDI chip and the MAX3421E.



I did not enjoy my experience with the FTDI part.  One feature was that it 
was SPI master and when I made the MCU (Silicon Labs F06x) into SPI slave 
the speed went way down.  It was also tiresome being controlled.  The 
sofwtare was a mess and the documentation a "challenge".



Used the MAX as a USB target (is that the word, or am I reverting to SCSI 
terminology).  It is an SPI slave device which meant I was in control and 
SPI was quicker (use LVDS if you are going between boards).  The register 
set is clear and consistent, and the documentation is clear is lovely.  The 
sample code had me up and running in a day or two, and there was not a lot 
more to do.



The WinUSB driver (from WDK 6001) works well.



I did have one problem, and still do, and that was in a way down to me.  I 
could not find out how to flush an end point (specifically EP2) but with 
care I avoided it getting messed up.



YMMV



Bill


"Frnak McKenney" <frnak@far.from.the.madding.crowd.com> wrote in message 
news:x-ednUFhLoe6sqTUnZ2dnUVZ_g-dnZ2d@earthlink.com...
> On Thu, 04 Dec 2008 08:08:09 -0600, liste11 > <andrea.listello@mmarelli-se.com> wrote: >> I need a feedback about MAX3421E. I'm developing a particular device, and >> my boss wondering if we are able to add on our device the USB. > --snip-- >> My goal is to have the possibility to write on the USB some data that >> I'll >> pass by SPI and not more. I guess this device should not be plug and >> play, >> so, what is your opinion about the effort required to get my goal? > > I'm not familiar with either of the Maxim chips you mentioned, but > you might take a look at FTDI's assortment of USB interface chips: > > http://www.ftdichip.com/ > > Here's a possible implementation that you'd have to wire up: > > USB to SPI Bus Interface Sample Project (URL hand-typed) > http://www.ftdichip.com/Projects/MPSSE/FT2232C-Proj01_v11.pdf > > You might also try using an off-the-shelf FTDI MM232R USB-serial > module rigged up to operate in SPI/I2C mode. The MM232R is a tiny > PC board only slightly larger than the USB-B socket mounted on it; > it is available from Digi-Key and Mouser for around $20US. > > There are PDF copies of John Hyde's 2007 Embedded Systems Conference > seminar ESC-242 "How to Use USB Without Knowing USB" which describes > how to wire up an MM232R for I2C or SPI floating around the 'web, > but I can't seem to locate one. I know you can download the code > from his 'web site: > > USB Design By Example > http://www.usb-by-example.com/ > > here: > > http://www.usb-by-example.com/ESC_Examples.zip > > FTDI provides MSWinXX drivers (and Linux as well, if I recall) for > the module, and the FTDI site provides datasheets for their chips > as well the MM232R module. > > If you prefer I2C, you ,might take a look at this module: > > USB-I2C Communications Module > http://www.robot-electronics.co.uk/htm/usb_i2c_tech.htm > > Hope something in this melange helps. <grin!> > > > Frank McKenney > -- > Recessions are the market's way of teaching Americans Economics. > -- > Frank McKenney, McKenney Associates > Richmond, Virginia / (804) 320-4887 > Munged E-mail: frank uscore mckenney ayut mined spring dawt cahm (y'all)
On Dec 5, 6:39 am, Frnak McKenney
<fr...@far.from.the.madding.crowd.com> wrote:
> > I'm not familiar with either of the Maxim chips you mentioned, but > you might take a look at FTDI's assortment of USB interface chips: > > Frank McKenney, McKenney Associates > Richmond, Virginia / (804) 320-4887 > Munged E-mail: frank uscore mckenney ayut mined spring dawt cahm (y'all)
Friends don't let friends use FTDI. The SPI interface is cr@p. Setting a mode in one area changes bits in another. The only usable bits are MISO, MOSI, and SCLK; the rest are fluff. The software stinks, large. And the documentation is even worse: pages upon pages are left blank. Every now and then one must scrub all of the various drivers out of the system, and re-install. This happens so often that they published a utility to help. Even then all the drivers "just don't" on occasion. Top that off with a tech "support" group that has a huge ego and an attitude to match. I once sent them a 3-line C program that exposed a flaw in their driver (The driver returned bogus data without setting the error flag) and they just tossed it. Oh, and a 5-line program that would get their driver to lock XP up solid - all the time following their "documented" calling sequence exactly. I've designed FTDI out of every design, and I'm much happier for it. Except for these minor rants, that is. AL
In article <0ae16477-db5b-4756-958b-0ec910d953c4
@r15g2000prd.googlegroups.com>, alex.louie@email.com says...
> On Dec 5, 6:39 am, Frnak McKenney > <fr...@far.from.the.madding.crowd.com> wrote: > > > > I'm not familiar with either of the Maxim chips you mentioned, but > > you might take a look at FTDI's assortment of USB interface chips: > > > > Frank McKenney, McKenney Associates > > Richmond, Virginia / (804) 320-4887 > > Munged E-mail: frank uscore mckenney ayut mined spring dawt cahm (y'all) > > Friends don't let friends use FTDI. > > The SPI interface is cr@p. Setting a mode in one area changes bits in > another. The only usable bits are MISO, MOSI, and SCLK; the rest are > fluff. > > The software stinks, large. And the documentation is even worse: > pages upon pages are left blank. > > Every now and then one must scrub all of the various drivers out of > the system, and re-install. This happens so often that they published > a utility to help. Even then all the drivers "just don't" on > occasion. > > Top that off with a tech "support" group that has a huge ego and an > attitude to match. I once sent them a 3-line C program that exposed a > flaw in their driver (The driver returned bogus data without setting > the error flag) and they just tossed it. Oh, and a 5-line program > that would get their driver to lock XP up solid - all the time > following their "documented" calling sequence exactly. > > I've designed FTDI out of every design, and I'm much happier for it. > Except for these minor rants, that is. >
Which FTDI chip were you using? I've had pretty good results with the FT245RL and the other FT245XX chips over the last few years. I don't like the fact that FTDI driver seems to want to install a new copy for each different serial number---but I avoid that by programming all my data loggers with the same serial number. I don't envision my customers wanting to upload data from more than one logger at a time, but I warn them anyway. The one problem that I found---the driver gets upset if the FT245 is trying to send data while enumeration is taking place--- is easily avoided by sensing the connection at the logger and inserting enough delay to allow even slow PCs to finish enumeration. Mark Borgerson