the folks over at OpenSchemes are at it again. This time they’ve cracked open a low end ZerPlus logic analyzer and modified it to function the same as the higher end model. The 16 channel version they purchased appeared to be fully capable of handling the 32 channels of the more expensive model. The installation of the additional components looks like it might be somewhat difficult, but it is certainly cheap.We love seeing things upgraded for cheap. You might recognize OpenSchemes from when they upgraded the DMM tweezers or hacked the USB serial adapters.
[via HackedGadgets]
I noticed that the 36Mbit chip is about $60.Now the question is, do I really need the 72Mbit $136 chip?
I dont have an EEPROM reader/writer, so how do I change the EEPROM data? I read about zeroprog, but all I could find is source code.
@Jaime
http://code.google.com/p/zerominus/ download all source from SVN and compile using ‘make’ under Linux or Cygwin(not tested). For dependencies u need gcc, usblib devel…
@Jaime
Yeah, I was looking at the 36Mbit chip as well, but I’m probably just going to buy the 72Mbit.
I can also verify that gedesu’s instructions will work. I compiled zeroprog under Fedora 12 (had to install gcc first). Worked great. It also lets you back up your original EEPROM values first.
@Jake
I installed Ubuntu in a Virtual PC machine and installed the libusb-1.0-1 package but I still get this error:
“Package libusb-1.0 was not found in the pkg-config search path. Perhaps you should add the directory containing ‘libusb-1.0.pc’ to the PKG_CONFIG_PATH environment variable
No package ‘libusb-1.0″ found”
apt-get install libusb-1.0-0-dev. If you don’t have that your distro is probably too old.
@Jaime
Did you get it to work? I had trouble as well, but ended up downloading an RPM from some site on the ‘net and that installed just fine. Then, the only problem was that the USB port was write protected, easy fix with root access and chmod +rw…
@Jake
I am currently soldering all the surface mount components. I’ll try to do the EEPROM change when I finish this. It will probably take me a few hours to add all the components. The only bad thing about trying to add the parts is that I have no solder braid to remove the crappy lead-free solder. It needs at least 700F to melt properly.
@Jaime
Oh, man. I can’t imagine trying to do that without braid. Can’t you get some cheap stuff somewhere locally? Even the cheap stuff seems to work OK with a little flux…
Bah! I was able to compile the program using Uwe’s suggestion, but now I found out that Windows Virtual PC has absolutely NO USB support! :( So now I have to actually install Ubuntu on my desktop in order to run the program and have it find the Zeroplus.
Success! I was able to boot off the Ubuntu CD and installed the libusb-1.0-0-dev package. Then I ran the program I compiled previously and was able to see the EEPROM contents. I changed it to a 322000 even though I still have the small 166MHz chip in there. I guess it wont matter as long as I keep it under that speed and limit the memory used.
Jaime,
What kind of performance are you seeing on the newly enabled ports C-D?
I am having trouble with the new ports latching in a high state, even with an input removed. They all start low, but if I apply a voltage to the pins, some of them will go high and stay that way. I am able to sample low frequencies with no problem, but higher ones (like 1MHz plus) are iffy.
I have verified all of my component values. I used a 74LVT16245BDGG that I bought from mouser electronics, I am wondering if there is some obscure difference in this IC, since everything else is identical to the original parts.
Oh, also, something odd: I have the 166MHz IC as well. I converted it to a 322000 in EEPROM, and I put a 1MHz square wave on channel A1, and set the sample length to 2M, frequency to 200MHz. It gave me 1,048,572 samples, and showed the correct square wave all the way to the end. Wtf?? Last I checked, that is a megabit.
Jaime, just an update. I used an NXP 74LVT16245BDGG from Mouser. That chip does not seem to work properly with these boards. I am ordering some TI ‘245’s like what the boards come with, which should solve the problem I am having. I verified this by swapping the TI chip from my other 16032 to the unit I was testing. I tested two NXP parts with the same troublesome results.
I havent done much testing. The only test I did was to connect all channels to the 1khz 3.3V output of my oscilloscope. The wave was properly displayed. I think I tried 2M but noticed that the waveform became more like a PWM signal of about 90% duty-cycle. I think the ASIC just writes to memory locations since it is a parallel SRAM device and since the address lines that would write to the 2MB device are not connected internally in the smaller chip, it just overwrites the data values in memory whenever it tries to write to an address higher than available.
The ‘245 chip I got is the 74LVT16245MTD from Fairchild Semiconductor. I guess I will have to test it further and if the 74LVT16245MTD fails, I will get the TI chip.
If your inputs weren’t latching high, then you should be fine. My problem was immediately noticeable, the pins would not go low until I either pulled them low, or cycled power to the device.
Oh, wait. A PWM? Thats what mine looked like all the time when latched high – An input would stay high, with a narrow “blip” to ground every period of the signal. If I repeatedly disconnected and connected the input while acquiring constantly, sometimes the waveform would be displayed normally, and sometimes it would latch high and look like a 98% duty cycle PWM signal.
Maybe yours was just because of the memory setting, but you might want to make sure.
The PWM-like signal was seen on all channels, not just the newly added ones, so I don’t think we we’re seeing the same thing. That is why I think it was just a memory roll-over thing that I saw.
Ahh, gotcha. And yes, the memory thing makes perfect sense.
I’m ordering the 72MBit Cypress IC from Digi-Key this week :D
Can anybody tell, how to determine the production date? Is it printed on the enclosure, or must it be read out by software?
It’s part of the serial number – For instance, I have two units, one starts with 0905 (2009, 05th month=May) and the other 1001 (2010, 01st month=January).
The new units (1001 and on) will not work with the 32 channel mod, though you can get the extra memory (128k per channel) to work. I believe you can also make it a 32128 and though you only have 16 channels, you can get 256k samples each.
If you are looking for one of the old 16032’s that will work for the 32 channel mod, forget it. They are long gone. However, you may be able to find older 16064’s or 16128’s that may have older production dates, since those sell less frequently. You will still have to replace the memory chip if you want to sample at 200MHz, as the older units come with 166MHz memory. I have replaced the memory on my 0905 unit with the 72MBit chip, and can get 2M samples on 32 channels! Woot!
Good luck!
@Jake
I changed the first 16032 that I bought to a 16128 and I am able to select 256K for RAM size in the software, so I don’t think it is only possible with a 32128.
@Jaime
It’s funny, we both now have 1001 16128’s and 0905 32 channel units.
What to do with the 16 channel “spare”? I don’t think I need two of these units!
I think I’m gonna sell mine on eBay or something :/
Hello! How you think, possible is mods my 16032 0906 to 32 channels?
I recently bought a 16032 (0905 batch) from The Debug Store in UK. Has the old 32-channel capable ASIC and memory to mod it as 16064 as is.
@Chris
Depends on whether that has the same ASIC as the 0905 units or not. I have not seen 0906 units, so I have no idea.
@Cube
You should be able to make that unit a 16128 with no soldering.
Jake:
Not enough memory in my unit to convert it into 16128. Already ordered a new SRAM from Digikey to convert it into 162000 tho.
@Cube
Ahh, I was under the impression that they all came with a minimum of a 4 Mbit IC, yours must have a 2 Mbit?
I installed the CY7C1480V33-200AXC IC on mine and it is functioning well as a 322000 :)
Jake:
Same here. I especially like the feature where I can use the other half of the memory to extend the storage capacity of the original 16 channels to 4 megs.
Also went and ordered the parts to add the other 16 channels. Quite a nice “saving”. :)
I download and compiled “zeroprog” program successful under Ubuntu OS. But I do not know how to use this “zeroprog” program to read and write the EEPROM of LA, and I also can not find the user guide or document about how to use the “zeroprog” program. Does anyone would share how to use the “zeroprog”? Thanks a lot.
I had compilered the “zeroprog” and “zerominus” under Ubuntu OS. Does anyone could tell me to to use the “zeroprog” program to read and write the EEPROM of LAP-C? I can not find any user manual or document about how to use the “zeroprog” program.
@test
zeroprog should give you instructions at the command line if you run it with no paramaters. Maybe you have to pass it ‘help’ or something, I can’t remember, and I am not in my lab right now.
One thing I had to do under ubuntu was remove the write protection from the USB port. I passed it the correct parameters, but it told me that the USB port was write protected. I used chmod +rw on it, or something like that. I am not a linux expert by any means, but I was able to figure it out with about 20 minutes of time, and google.
You will probably have to make zeroprog executable as well, with a command like ‘chmod +x zeroprog’ or something like that. Once again, no linux machine here so I can’t tell you for sure.
Try it, and if you can’t get it to work, post your troubles here and I’ll try to help you this weekend.
@test
Oh, also, look in the source code – The documentation is visible in there as well, at least for the command line parameters for zeroprog.c
@Jake
Thanks a lot. I am not familiar about using the Ubuntu OS. I tried to compiler and use the “zeroprog” under Ubuntu , but it still shown “zeroprog : command not found”. I remove the EEPROM of LAP-C PCB, and use my EEPROM programmer to read/write the data information successfully. After modified the EEPROM, I solded the EEPROM to PCB board. Jake, thank you again.
Has anyone figured out how to re-activate protocols registered under the lower memory depth model after hacking the zero plus to a higher model??
I know am very late to the party, I just ordered a C16064 with a 0905 serial; all the C16032 models are long gone. It should arrive in the next few days. Are the passive components on the board 0603 or 0402?
The TI buffer that comes on the board is available for order from mouser and digikey, the part number is SN74LVT16245BDGGR
The protocol keys are based on your units model, serialnumber and the ID of the protocol in question.
@Cube,
Thanks for the response, so I take it that means I have to revert the model number back to the original model number anytime I want to use the purchased protocols?
The software tells the protocol which model you’re using and the protocol then checks if the key matches that model.
And because you have to patch the model one way or another for the software to accept it, the protocol will not accept it. Again, if you patch it for the protocol to accept it, the software will not accept it.
If anybody can confirm that is possible to convert 16032 with the new ZP322MC-5 ASIC to 322000 (with only real 16 channels) ? Do you know what is product-id of 162000?
Don’t know if the memorybus is blocked or not.
16032: 0C12 700E
16064: 0C12 7009
16128: 0C12 700A
162000: 0C12 7016
32128: 0C12 700B
321000: 0C12 700C
322000: 0C12 700D
@Jacek
Haven’t figured out a way at this point. I meant to X-Ray the ASIC to see if the pins are hardwired to ground or something, but I just haven’t had the time. I tried hitting the pins with 100mA current pulses, no change. I postulated that maybe this is some sort of FPGA and maybe it would be software reconfigurable, but haven’t taken the time to try and compare the pinout to any known FPGA.
I’ve just received my 16032, bought at Tigal. Of course with new Asic :(, as other people i have 128Kx36b 250MHz memory so now it works as 16128 (thanks to zerominus team for their eeprom tool). But I found that it’s worth to change PID (can be mod in UsbPort.dll) to 162000 and it also works fine (but you cannot exceed 128K samples of course) – what is nice in 162000 software that you have 10 free protocols, on 16032/128 only four of them are free.
Someone needs to get crackin’ at this new ASIC and see if we can get the other 16 channels to work!
(Someone that has disposable time, unlike me, lol)
@Jacek thanks a lot for the tip, i’ll buy mine from nkc soon!
Thank you guys, my new logic cube is just awesome, I’ve made the usbport.dll mod and I can use the 128K of memory running it like an 162000
:)
So how do I go about changing the LAPC-16032 to a 16128?
Anyone still messing with these 16-channel units with the new ASICS?
Speaking of which, had anyone rigged a cheaper memory IC that is compatible with this device?
Any luck with UsbPort.dll mod and registered protocols? Was anyone able to make them work?
I have upgrade my memory to 4 mbit/channel and have all protocols working. Anyone else?
I meant Mbit
No one seems to have the 4Mbit SRAM chip in stock but I have 32 channels working.