Posts

lnDSO150 : Release 2.2

Image
Binaries available for Jyetech, GD32F303 and FNIRSI  https://github.com/mean00/lnDSO150 Be sure to check the wiki to know how to flash

CH32F103/FNIRSI: Success!

Image
 Still some minor tweaks to apply, but it works 

CH32F103/DSO150/FINRSI coupling selection difference

 There is another difference with the original DSO : CPLSEL pin With the original DSO, the CPLSEL (PA5) is an analog pin which gives the info about the selected coupling. When reading it with the ADC, you get : -   0 => GND -  ~ 2024=> DC -  4095 => AC (not necessarily the right values, but the principle stands). The FINRSI clone is different. It uses the CPLSEL pin *AND * another pin the "KEY" pin (PB12). That pin  was used a long time ago but is no longer needed as the threshold detection is done using the ADC watchdog Both CPLSEL and KEY are pull up GND:    CPLSEL=1   KEY=1 AC:    CPLSEL= 1    KEY= 0 DC   CPLSEL=0   Key=1 So it wastes one pin, but makes the reading much much more simple. NB: The CH32 only has one ADC, that may explain.

lnDSO150 : DFU ready for STM32F103 and GD32F303

Software is ready and works fine if you have 128 kB of flash or more. Sofwtare update over usb at last ! A lnDSO150 release will be coming soon, as soon as the CH32 chip works.

CH32F103 based DSO150 (FNIRSI clone)

 So i finally bought one to make sure lnDSO150 does run on it. First feedback : - As expected the main diff is the chip is a CH32F103 instead of a STM32F103. I added support for the CH32F103 on the blackmagic probe, so it should not be an issue to reprogram it. - The main board seems almost identical to the original one. R12 and R13 are missing which might indicate the buttons are not wired the exact same way, which would explain the problem report about pressing "OK" not working. - Some components are missing , mostly the trigger comparator stuff which is a leftover of older software. - The analog board is similar but more compact and using 100% SMD components. The FNIRSI software is not bad, looks pretty, very close to the original one in look & feel. But it feels a bit slow, we'll see how lnDSO150 performs on the CH32F103 More on that soon. Edit : Indeed, the "OK" and "Trigger" button are connected to PA11 / PA12 instead of PB6/PB7 Edit 2: There...

lnDSO150 : DFU ready soon

Image
Updating the DSO150 is a bit of a pain. Normally you can either : - Bridge a JP solder point on the board and use serial - Use the SWD interface if you soldered the pins That's a bit of a pain, and not user friendly at all. On the other hand i have now all the needed pieces to go DFU : - simple HW mode to get USB interface on the DSO150 - USB through tinyUSB to get DFU-runtime - DFU mode through a modified stm32-dfu-bootloader. This modified version adds some stuff , like a hash of the firmware to make sure it is un-damaged /complete. and it works ! The only candidate excluded is the so called "small footprint" version for DSO150 clones with CH32F103 (very experimental) which has only 64 kB of flash. The only piece left is to put a tiny LCD driver to display the USB logo when the unit goes to dfu mode and it's all good (i have ~ 4kB left, which is plenty :) ). The USB connection with the usual craftmanship :

Dead bluepill board ? Not so fast

Image
  That's the second time it happens to me, so i may as well share the tip. If your board appears "On"  but does not reply to SWD or serial programming, look at the green led.  If it is  a bit dim, measure the voltage on one of the 3.3 v pins. If it is weak (like 2.5 v), it might be the 5v->3.3v regulator at the back that is dead. They are weak and die easily (shortcut, pull too much current...) So here is an easy way to fix it, with readily available components (with the usual craftsmanship) First remove the old regulator : It's the small 5 pin chip marked U1 here. It has been removed with just a blob of solder (no hot air, too much plastic nearby). Now let's do a ugly hack on the other side using a SMD ASM117 3.3v chip: As a bonus, the ASM117 will take much more abuse and will provide much more current