EMX usb debugging

Hi Gus (or any ghi wizard :wink: )

Well i just received a new batch of pcb for production. So i wanted to test them. They have got an EMX module on them. And again i am a bit lost. The devices are debugging to Com1. So i changed it in the code to Usb1. Doesn’t work. So i cleared the entire device, updated tiny booter and the latest GHI sdk. Still on com1. We have added a jumper to the pcb to for LMODE low, so i added the jumper and restarted (like explained in the manual). Now i can’t reach the device on com1 anymore. I am almost happy now, but the device isn’t recognized as usb either. Windows doesn’t see a unknown device either. I measured the traces from the usb connector to the EMX. No trace errors or break ups…

I have tested 4 pcb’s out of the 9 of have received. All have got the same problem… Ow i have uploaded an image of the design (so you can see the emx being used in a commercial product ::slight_smile: ) The CAN remote that is given me headaches (see my other post) is also in the image.

just tested the traces on the pcb again.
Usb pin1 goes to Pin26 on the emx and measures 3.25V
Usb pin2 goes to Pin41 on the emx
Usb pin3 goes to Pin42 on the emx
Usb pin4 goes to Gnd

Is the voltage on usb pin 1 enough? Since the usb specs talk about 5v (and it is now at the vcc of the Emx). But if i measure on my older boards it is also at the same level and those get detected just fine.



Connect nothing to EMX but USB pins, connect LMODE to ground and 3.3V to power and EMX will run from USB as expected. Double check all these please.

The boards looks great :slight_smile:

Nice board indeed!

Hi Gus,

Ok i made a test setup and sadly that works like a charm ::slight_smile: haha no not sadly, because this point me to a flaw in the processor board pcb (which the manufacturer can now search for). Then it must be in the multi layer pcb (of our processor board) and the connector. Because, and now the fun starts. if i connect an older processor pcb to this backplain it works. If i connect one of the newer processor pcb’s to and older backplain it works. But a new processor on a new backplain fails :stuck_out_tongue:

The processor pcb works nicely, we use it in several projects. Just put it on a backplain ans if we need more options we can stack expansion boards on the processor board. We had some issues with the RTC but that was because we used a goldcap for the backup power and the voltage drop was to big.

Ow this pcb is for large scale cooling and heating systems (www.nedair.nl) :wink: There are several pressure, co2, rv and remotes connected through the can bus.



Hi Gus,

one more question, apart from the backplane issue. How is that the debug is, if i don’t use the lmode pin, on com1. Even if i tell it through code that it should be usb1? This should be stored, shouldn’t it?



But you said earlier that you did switch to USB and it is in fact did switch to USB?

Hi Gus,

sorry i shouldn’t mix 2 questions. The 1th problem is caused by the pcb. The manufacturere is looking into that. But i force it into usb debug through the lmode pin now. But if i don’t use that then it should remember the settings i make through code shouldn’t it? Because it will always show com1 as debug on booting.



It is better to connect LMODE to ground always. There is a way to to force in software but you have to deploy a program first. It’s something like GHElectronics.NETMF.Hardware.Configuration.DebugInterface

@ Per Cramer,

Note: NEVER connect pin 1 of the USB to the EMX module.

Pin 1 supplies 5V and connecting it to the EMX’s 3V3 will damage the module…

EMX is 5V tolerant :slight_smile:

Ahh, sorry, as he mentioned measuring 3V25 I assumed that he connected it to the VCC rail. :-[

Pin26 is in fact a cable connection detect. Correct?

Hi Errol,

no i didn’t make that mistake :wink: (i have been designing electronics for quite some years now :stuck_out_tongue: ). I mentioned it because i just thought that the voltage level might be the issue. But it was a fault in the multi layer pcb at the end.



Hallo Per,

Ik zag dat jij uit Nederland komt, dus kan mijn probleem het makkelijkst even in het Nederlands uitleggen. Wij hebben zelf een PCB ontwikkeld met hierop een EMX en hiernaast nog 6 losse stekkerbare modules. Deze modules bevatten allemaal een EMX.

Nu heb ik via Eagle een usb connector gerouteerd naar de EMX, maar heb hetzelfde probleem als jou denk ik. De EMX wordt in windows ook niet herkend. Nu zit alles juist aangesloten denk ik:

  • VBUS zit direct op pin 26
  • DM & DP zitten op pin 41 & 42.

Normaal gesproken voedt je dan gewoon de processor met 3V3, de usb kabel in de PC en dan moet je EMX herkend worden. Maar dit gebeurt dus niet. Het apparaat wordt niet herkend.

Ik zat te lezen dat de VBUS alleen voor herkenning is. Moet ik hier dan nog een weerstand aanhangen om een beetje stroom te creeeren? of moet ik deze pin met een diode aan de 5 Volt hangen.

Alvast bedankt voor een eventuele reactie!

MvG, Nick