Author Topic: Sencore USB Interface Project  (Read 4635 times)

0 Members and 1 Guest are viewing this topic.

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Sencore USB Interface Project
« on: August 21, 2019, 04:56:51 pm »
I'm developing a USB interface for various Sencore test equipment (such as their LC102 meter). Their used I/O interfaces (like the IB78) are getting pretty rare and expensive, so I figured I should make something a bit more modern.


STATUS: PCB and components have been ordered. FPGA logic development is in progress.

The prototype PCB is posted at GitHub[url].

If you're interested in buying one (either assembled or as a kit), send me a PM.

Original Post:

Another reason I want one is that a LC102 asks you to use a special stick to hold down a front-panel button to do burn-in tests of capacitors, but with an I/O interface, one can just ask it to do burn in and also log data.

I'd greatly appreciate any comments on the schematic (or even layout) before I order boards. Also if any others are interested in the product, let me know. I can easily sell/distribute (bare PCB+8243) to folks in the USA (I'm not sure what shipping costs to foreign countries). If there is a huge interest, I may even look into having JLCPCB do assembly for me.

The genuine interface boxes are based on an 8243 I/O expander and a microcontroller. I've reimplemented it using a 8243 (discontinued but available on eBay)  and a STM32 microcontroller. The genuine boxes are not isolated which leads me to have some safety concerns due to the LC102's ability to output a floating 1000 V, with the I/O interface ground connected to the instrument's negative output. Therefore, I've added isolation to the design. Though, I use a 0.1" pin header between GND and EARTH which isn't enough separation, but at least it will be an arc to earth (I also have a shorting terminal for connecting the USB shield to the Sencore's earthed shield).

In order to support hot-plug, I've also added a bus switch IC with "I-off" support. The genuine box could crash the meter's MCU bus if plugged in with the box unpowered.

The PCB is designed to fit into a Bud HP-3652-B enclosure. I'm planning to have the I/O cable just running through the back panel, though I could switch it to being connectorized. Adding a 0.150"mm pitch Phoenix Contact 1803332 header on the back, but it's a bit large for the enclosure. Other suggestions?

There always seems to be conflicting advice on if the USB shield should be shorted to its GND on the downstream side. I'm leaning towards yes, though I've marked it as a capacitor to couple them on the schematic.
« Last Edit: August 27, 2019, 11:44:07 pm by pigrew »
 

Offline HighVoltage

  • Super Contributor
  • ***
  • Posts: 5560
  • Country: de
Re: Sencore USB Interface Project
« Reply #1 on: August 21, 2019, 05:13:38 pm »
Very interesting.

So, this will plug in to the RS232 connector on the back?
Will also work on the LC103?
You will also provide windows software to control the instrument?
Can you also implement it in such a way that it can be used to calibrate the LC103?

There are 3 kinds of people in this world, those who can count and those who can not.
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #2 on: August 21, 2019, 05:18:21 pm »
 @pigrew    super job you did,  no pun intended,  i would do a single sheet schematic  for clarity purposes.




« Last Edit: August 21, 2019, 06:31:12 pm by coromonadalix »
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #3 on: August 21, 2019, 08:41:25 pm »
Hmm, just noticed there is a IB78 on eBay for $140, but that's what I'm aiming to recreate, but with isolation and USB instead of RS232.

Very interesting.

So, this will plug in to the RS232 connector on the back?

No, this is designed to go interface with a circular DIN-8 connector on the back of the LC102, which is a 8239 MCU expansion interface, not RS232. My design will act as a USB CDC device (virtual COM port). It replaces the need for an IB78/IB72.
Will also work on the LC103?

I don't have a LC103, so cannot test it with one.  It looks like the LC103 has a DE-09 connector. I don't know the pinout or even what sort of interface the LC103 uses. I except it will not be compatible.

EDIT: Most certainly will not work. I found the schematics of the LC103 and it is RS-232. You could just get a normal USB->RS232 cable and use it to talk to the meter (if you can figure out the command syntax). Be careful with the high voltages, an isolated RS-232 adapter is a good idea.

You will also provide windows software to control the instrument?

No, I'm planning to only make the hardware to provide a serial port for the meter.

Can you also implement it in such a way that it can be used to calibrate the LC103?

Doubtful. My suggestion would be to make a ROM dump and try to disassemble the microcode to figure out the calibration commands. The LC102 has published commands for its control, as do their older products. LC102 calibration is by adjusting pots/capacitors.
« Last Edit: August 21, 2019, 08:51:28 pm by pigrew »
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #4 on: August 21, 2019, 09:38:25 pm »
Would it be feasible with an bluepill STM32F103C8T6  (128 KB flash, 20 KB RAM)   for a 2$ usd board

Build a daughter board with the other components and the upd8342 ...

https://alselectro.wordpress.com/2018/11/18/stm32f103-bluepill-getting-started-with-arduino-core/

The yellow underlined are 5v tolerant ports ??

thks

EDIT
Found this puppy :  https://medium.com/swlh/super-blue-pill-like-stm32-blue-pill-but-better-6d341d9347da   at around 6$ usd ??
« Last Edit: August 21, 2019, 09:43:43 pm by coromonadalix »
 

Offline Renate

  • Super Contributor
  • ***
  • Posts: 1460
  • Country: us
Re: Sencore USB Interface Project
« Reply #5 on: August 21, 2019, 10:14:56 pm »
That looks pretty through and complete.

Still, could we lose that pig of a chip, 8243?
It doesn't seem that difficult to make a modern processor just interface with the 4 bit interface directly.

The USB isolator is pretty fancy, by why not just optoisolate UART data out of the uP and use an FTDI232 on the cold side?
You'd reduce the bandwidth requirement of the isolator a few decades!
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #6 on: August 21, 2019, 10:30:48 pm »
@Renate   Maybe

I can't catch the logic behind this for an "going to rs232 port".

The 8243 has been ported to vhd / vhdl  file,  some fpga / cpld can take the 8243 task. Tried on an old Xilinx xc9572, it use 52% of its ressources  loll

No schematics of the 2 interfaces exists, just pictures of the ib78  and an eeprom dump   attached here

I'll try to make a schematic of mine when i'll get it from the usa, bought 1 week ago.

Aside note:
Just got an usb to rs232 cable  sp-880 ----  Ftdi based with an unknown ic in it, who provide some isolation / buffering ...  with this cable i can use an equipment still connected to a computer, others adapters dont work unless i use an industrial DIN isolated rs232 interface from polland.

I do understand @pigrew concerns,  the lc102 can output 1kv in some tests ...  danger danger will robinson loll


Still i would love to build a newer version of this Pigrew IB78 project and hide it directly in the LC102  :)  and maybe convert the LC102 back round din plug to a usb input port loll
« Last Edit: August 21, 2019, 10:48:34 pm by coromonadalix »
 

Offline Renate

  • Super Contributor
  • ***
  • Posts: 1460
  • Country: us
Re: Sencore USB Interface Project
« Reply #7 on: August 21, 2019, 10:46:50 pm »
I can't catch the logic behind this for an "going to rs232 port".

I'm just saying, have the STM decode the 4 bit data that would come into the 8243.
This stuff is pretty slow and with a bit of hopping you can catch it all.

Your current design uses a USB port with a CDC interface as a virtual Com Port.
My suggestion is having the STM output 3.3V serial data at 115200 (or whatever), push it through a cheap 6N135 optoisolator.
On the other side you have an FTDI232 or CP~~~~ that turns into USB and a virtual Com Port on your desktop.
I've used this for floating voltage/current measurements.
Isolating USB at 12 or 480 Mbs is a bigger deal.
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #8 on: August 21, 2019, 11:14:47 pm »
Great questions.

Would it be feasible with an bluepill STM32F103C8T6  (128 KB flash, 20 KB RAM)   for a 2$ usd board

My prototype used a bluepill. It was a heck of a lot of manual wiring, and the bluepill comes misconfigured with the wrong USB pull-up resistor value, and not much ESD protection. Once taking time to do a PCB, one might as well put the micro on the PCB in the first case. So, yep, it would be slightly cheaper to use a blue pill since I can't get parts as cheaply here as in China, but not easier design-wise. Also note that I'm using a STM32F0 which seems to be newer than the STM32F1 series (I don't understand the numbering scheme...)

That looks pretty through and complete.

Still, could we lose that pig of a chip, 8243?
It doesn't seem that difficult to make a modern processor just interface with the 4 bit interface directly.

The USB isolator is pretty fancy, by why not just optoisolate UART data out of the uP and use an FTDI232 on the cold side?
You'd reduce the bandwidth requirement of the isolator a few decades!

Can we get rid of the 8243? Yes, I had assumed not easily with a microcontroller. The slave needs to respond to the bus signal within about 650ns of a falling edge. Assuming 20ns clocks, that's 30 cycles total. With very careful programming (nested interrupts, etc), it may be possible even though I had initially dismissed it. I had imagined implementing it with a FPGA. Another factor is that the bus is 5V logic, so one would need to add a set of transceivers (5 inputs and four tri-state outputs, so 10 MCU IO pins).

On a bus read, the MCU would need to quickly latch the data on a the falling edge of nPROG (60ns hold time), decode the instruction, read the appropriate data from RAM, and write the data back to the bus. Perhaps DMA would work to latch the bus data? Oh, and bus reads can happen every 5 or 10us, so the MCU would spend nearly all of its time handling bus I/O.

My proposed FPGA solution would have used UART isolators (2 IO and 2 flow control lines), but wouldn't support USBTMC if I ever wanted to implement that. The USB solution has more flexibility (even DFU modes) and the user doesn't have to pay attention to the baud rate or flow control settings. I'd probably use a purpose-built isolation IC (like from Silicon Labs). In terms of board space, the USB isolator is about equal to the UART isolation, and the USB isolator isn't that much more expensive than the digital isolator+FT230X.

I was looking at QFP package FPGAs, which would require a bunch of board area and decoupling capacitors.... In particular, I like the MachXO2. A TinyFPGA would be great, but it looks like they are mostly out of stock. However if I do accept QFN soldering, the LCMXO2-256HC-4SG32I may actually work out well. Maybe I'll look back at that solution. A note is that the FPGA needs its own external oscillator, as its internal RC isn't precise enough for use in a UART, so an oscillator needs to be added to drive the FPGA (unless I pass the FT230X's clock output through the digital isolator.).
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #9 on: August 22, 2019, 12:32:24 am »
Another thing that worries me about the 8243 is it seems like the MCU and the 8243 may simultaneously write to the bus during a "read" operation. At the start of a read, the MCU outputs its "read command" on the bus and pulls nPROG low. Then, the 8243 will respond to a read command by putting the data on the bus.

Based on the attached diagram, I see no maximum t_B and no maximum t_C, so these could overlap. Based on recording bus traffic, t_A was ~730ns which is very close to the maximum allowed access time (with a 10 MHz clock). How do the chips not fry each other? Is it that the drivers are just really weak and are able to tolerate the contention?
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #10 on: August 22, 2019, 02:12:03 am »
The 8243 was made to work with these cpu in a bidirectional fashion ... thats why we dont see any substitue for it,  not sure the ported vhdl equivalent chip would work well in this case ??

And the 8250 who act as a fifo / buffer must help.

At 19200 bauds around year 1990, must have been a accomplishment lol  ??


My test board would be an bluepill with the 8243  like i saw on his prototype, add a small 5vdc to 5vdc isolated dc-dc converter,  do some tests at 9600 bauds and / or 19200 bauds,  no protection added for now (cheap and dirt mode loll) and later just add an usb isolator on the usb line.

The 4 poles relay we see, must be activated by the rs232 line, or maybe by the LC102    dtr dsr rqs cts   not sur if its work in dte dce  ... dce dte  mode  etc ...

Willing to be a guinea pig,  i just need a code to compile or dump,  i have an st programmer ready loll
 

Offline Renate

  • Super Contributor
  • ***
  • Posts: 1460
  • Country: us
Re: Sencore USB Interface Project
« Reply #11 on: August 22, 2019, 02:19:52 am »
The middle trace in that diagram is when the MCU is writing, so of course there is no conflict.
The bottom trace is MCU writing, then 8243 writing, i.e. a read.
The 8243 responds as quickly as it can to the falling PROG, tACC=650ns max
Since the data hold on the MCU has a minimum of 20nS there should be plenty of elbow room.

I just hate the waste of expanding a nibble to 16 bits that you have to stick back into a uP.

Silly idea:
You could get a little uP, run it in a tight, no interrupts loop and have it spit out the data on SPI to its big brother.
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #12 on: August 23, 2019, 04:17:41 pm »
Ok... Design attempt number 4?

I got rid of the 8243, replacing it with a FPGA. I added an earthed STM32f042 MCU to do the USB->UART interfacing. I'm a little bit unsure of all of the bus drivers, or how much extra capacitance I'm adding to the bus (though shouldn't be much more than the IB78 itself). I'm using a bus driver which has two enables, one for nPROG and the other for the signal from the FPGA, which should help avoid any spurious writes to the bus.

I'm somewhat worried that I chose the wrong logic families for the bus I/O? (bus is 5V, CMOS levels). The MCU and FPGA are both 3.3V. I'll probably end up running the UART at 100 or 250 kHz.

I also found out that I've been doing micro-USB ports the wrong way. Standard micro-USB connectors are "bottom-mount", but based on the enclosure I really need a "reverse" top-mount connector. I guess people are supposed to put the USB transceiver on the bottom of the board, so the USB tracks don't need to via up or down. I also would have rathered an integrated USB line filter+ESD package, but I couldn't find any without an internal pullup, so I'm using a 5-pin TVS package, and external series termination resistors.
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #13 on: August 23, 2019, 05:50:49 pm »
I would ditch all esd protection, an direct dc supply line from the dc-dc, no USB Soft-start, OVP, OCP circuit,  just an good reset line.

Maybe i would add an 9600 baud and the 19200 baud selector,  many serial to usb port are at 9600 bauds "default" until you crank it up to 115200. Unless there is some baud detection implemented ???

Not for a low parts count,  but i do think its a little too much,   your protection is added with the small dc-dc converter and an usb isolator.


We use SMS05C  protection ic's  around our ATF1504 cpld  design, no speed or capacitances issues.
https://www.onsemi.com/pub/Collateral/SMS05C-D.PDF   

And we use  TXB0108  voltage translation ic's in our embedded boards.
https://cdn-shop.adafruit.com/datasheets/txb0108.pdf



Just received my IB78,  same eeprom version than yours,  and i got an usb rs232  optoisolated db25 adapter who go nicely on the box, it has an micro dc-dc converter in it.

Jus battling with the IB78 dc plug,  too deep for my taste, will connect it to the lc102 and see ... with an window terminal how it goes.

An idea would be to add a suplemental pin in the din plug for the IB78 supply power ... i put an 18v 3.46 amp laptop adapter on my lc102, enough power to do, and it does 100-250 vac line ;)
« Last Edit: August 23, 2019, 07:21:26 pm by coromonadalix »
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #14 on: August 23, 2019, 08:17:58 pm »
Anther question is the FPGA to bus transceivers. I noticed that there are bidirectional bus I/O chips like TXS0108E (5.5 pF) or like SN74LVC8T245 (8.5 pF). It would save four pins on the FPGA to use them, but there the FPGA has enough pins already.... These are about equal capacitance to the existing solution of a receiver and a transmitter IC (4 pF + 2 pF), though there would be less parasitic capacitance. My plan would be to continue as I've posted.

ADDITION: The TXS0108E and TXB0108 are bad ideas due to the high bus capacitance of the meter+IB cable.


I would ditch all esd protection, an direct dc supply line from the dc-dc, no USB Soft-start, OVP, OCP circuit,  just an good reset line.
An idea would be to add a suplemental pin in the din plug for the IB78 supply power ..

Regarding ESD, I'd like to at least keep the pads on the PCB, but feel free to not populate them if you prefer living dangerously. :)

ANOTHER ADDITION: Maybe we the FPGA is low power enough that we can parasitically draw power from the I/O lines? (I'm mostly joking)

EDIT #3: Apparently the STM32 has built-in series termination resistors, so the 22 ohm ones need to go away (or be populated with shunts). STM32L0x2 would be another good choice of STM32, but no huge benefit in this application (that I know of).
« Last Edit: August 24, 2019, 01:52:06 am by pigrew »
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #15 on: August 24, 2019, 05:58:51 pm »
Another round of updates, though only minor tweaks. I changed to a full size USB jack and added a jumper to go between (Sencore Earth + USB_SH) instead of  (Sencore Earth + GND) nets. I've also adjusted the USB series resistors to be 0-ohm instead of 22 (STM32 has internal 40 ohm drivers). I also changed the STM32 programming header pins to suit the layout better (It's not a standard pinout).

(To view the 3D PDF, usually I have to use Acrobat and click at button at the top of the window to "trust" the document.... Is there a better way to transmit 3D models for mass consumption?)
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #16 on: August 25, 2019, 12:04:12 am »
Hi  im back sooner

Is it possible to use tqfp packages for the machx02 chip,  thoses qfn packages are a pain to work,   will you assemble the pcbs ?  normally  you need stencils and a very fine solder paste for them, i work with the same 32 pins package, if you need to rework them or unsolder them, you absolutely need an hot air station, the under center pad dissipate lots of the needed heat into the pcb.

For J1  pcb output to the LC102, i would use the same mta100 connector, or any 0.1" pitch connector,   it would be easier to make a bridge connector between your interface and the lc102, i have thoses tools at my job, i could make  many cables for you  or even use already made dupont male to male wires, or maybe an idc10 connector, or a 2x5 pins 0.1"  header ?

my 2 cents

I would have put your 4 holes at the corners, not in the center,  but you had an enclosure in mind if i recall, that way  U10  would be pushed more in the center of the pcb,  shorter pcb traces ??
« Last Edit: August 25, 2019, 12:10:39 am by coromonadalix »
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #17 on: August 25, 2019, 03:01:57 pm »
Is it possible to use tqfp packages for the machx02 chip,  thoses qfn packages are a pain to work,   will you assemble the pcbs ?  normally  you need stencils and a very fine solder paste for them, i work with the same 32 pins package, if you need to rework them or unsolder them, you absolutely need an hot air station, the under center pad dissipate lots of the needed heat into the pcb.

The smallest TQFP has 100 pins, so much more board space. I decided to use the QFN32 since it comes in two convenient sizes (256 and 1200 LE) and has enough pins.

If JLCPCB doesn't remove the solder mask between pins, they are not too difficult to solder.


For J1  pcb output to the LC102, i would use the same mta100 connector, or any 0.1" pitch connector,   it would be easier to make a bridge connector between your interface and the lc102, i have thoses tools at my job, i could make  many cables for you  or even use already made dupont male to male wires, or maybe an idc10 connector, or a 2x5 pins 0.1"  header ?

It's a hard choice. I want some sort plug with strain relief. The Phoenix Contact ones are certainly not ideal, but I'm having trouble convincing myself that some other connector is appropriate. DIN-7 is too large for the enclosure I selected, mini-din8 might be too low voltage? (Even though I'm focusing on isolation, there shouldn't be much of a voltage differential in practice. I just really don't want to fry the computer). But, now I'm leaning towards DE-9 (a.k.a DB-9). It's shielded, has higher voltage ratings, cheap, and somewhat easy to assembly.


I would have put your 4 holes at the corners, not in the center,  but you had an enclosure in mind if i recall, that way  U10  would be pushed more in the center of the pcb,  shorter pcb traces ??

Yeah, I'm designing the PCB around the Hammond 1593J enclosure. I don't really like the locations of the mounting holes, but they are where they are...
« Last Edit: August 25, 2019, 03:04:24 pm by pigrew »
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #18 on: August 25, 2019, 04:47:12 pm »
The db9 may add confusion, people may think its an serial port ???   

Or an idc10 angled connector with latches ??
https://www.futurlec.com/Connectors/IDCMHL10RApr.shtml
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #19 on: August 27, 2019, 10:21:27 pm »
I've ordered a set of 5 PCBs with a final design. I realized the microcontroller is TTL-level (not CMOS level), so I am able to use a simpler bus level translator IC, instead of a separate input and output IC. This frees up a few FPGA I/O pins, allowing the layout to be more compact and the addition of a debug LED. I did use the DE-9 connector, and am planning to plug one pin to prevent RS-232-level signals from being connected, although the ESD TVS Zeners (and series resistors) may prevent damage to the components. The USB-UART bridge will uses a STM32F052 MCU. My current plan is for it to be a CDC device, but I may eventually implement USBTMC so that it interacts with instrument control software more nicely.

Schematics and PCB data files are posted. I missed tweaking the locations of a few designators, but have not found any serious mistakes (yet). Seems I used an unregulated isolated DCDC converter; I'll need to regulate its output, switch converters, or add a resistive load (~150 mW)...

(If anyone wants a build (or a kit), I should be able to sell you one once I test the software/design, though I won't offer any sort of warranty. Send me a PM and we'll work something out. Software will put put on github once the hardware is built.)
« Last Edit: August 28, 2019, 01:20:25 pm by pigrew »
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #20 on: August 28, 2019, 12:35:17 am »
Pm'ed you   thks for your great work.
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #21 on: September 03, 2019, 11:04:18 pm »
PCBs have arrived... they're tiny. I'm surprised that I didn't get hit by Trump's tariffs... Logistically I don't know who I would pay, or how.

I've found a few minor issues with the schematics, but nothing insurmountable. Parts should arrive in the next few days. Next time I should look more carefully at the the amount of RAM the micro has, 6 kB is about the minimum for a STM32 USB device, it seems. I used the TSSOP-20 package, which is only shipping with minimal RAM. The QFP packages have more options.

USBTMC or CDC? I'm tempted to sit down and write a simple USBTMC driver...

Photo below, with a RMB, 10 HK$ and 25 cents, for scale.
« Last Edit: September 04, 2019, 02:34:14 am by pigrew »
 

Online coromonadalix

  • Super Contributor
  • ***
  • Posts: 7009
  • Country: ca
Re: Sencore USB Interface Project
« Reply #22 on: September 04, 2019, 02:04:46 am »
damn  tiny they are  loll
 

Offline ebclr

  • Super Contributor
  • ***
  • Posts: 2331
  • Country: 00
Re: Sencore USB Interface Project
« Reply #23 on: September 04, 2019, 11:53:58 am »
Take  a look on this little board, your work can be quite easier and cheaper https://www.electrodragon.com/product/ch552-ch554-mini-dev-board-ch55x-series/
 

Offline pigrewTopic starter

  • Frequent Contributor
  • **
  • Posts: 680
  • Country: us
Re: Sencore USB Interface Project
« Reply #24 on: September 04, 2019, 01:10:59 pm »
Take  a look on this little board, your work can be quite easier and cheaper https://www.electrodragon.com/product/ch552-ch554-mini-dev-board-ch55x-series/

If only it were that easy. Those CH55x might be easier to use than the STM32 (though probably not for me as the English documentation is lacking), but it wouldn't remove most of the PCB components from this project. The issue is that the circuit must speak as a MCS-48 IO expander on the bus, which requires somewhat fast timing. The CH55x doesn't look like it has that capability. Also, the Sencore bus uses TTL-drivers with 5V pull-ups, so voltage translation is still needed.

(The CH552 board also doesn't provide any isolation or ESD protection, which I also wanted...)

The FT2232H almost worked, but it's expander mode is for the MCS-51 bus, not MCS-48. The MCS-48 8243 has special op-codes to AND and OR memory locations which were dropped in the MCS-51.

ADDED LATER: Unless I'm missing some feature about the CH55x? I could have strung together a bluepill or USB-UART, isolator, another blue pill, 8243.. Would have been less design effort.
« Last Edit: September 04, 2019, 04:22:47 pm by pigrew »
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf