Page 1 of 1

New alternative firmware

Posted: Tue Jul 02, 2019 4:54 pm
by trescurieux
Hi
I've be toying with an alternative firmware for the DSO150
It is based on the stm32duino project + some pieces of code derived from pig -o-scope

It is still early software, but is is usable
Homepage :
https://github.com/mean00/DSO_STM32Duino

First demo binaries here :
https://github.com/mean00/DSO_STM32Duino/releases

Instructions :
https://github.com/mean00/DSO_STM32Duino/wiki/swd
https://github.com/mean00/DSO_STM32Duino/wiki/flashing

I've also mades a hardware mod to use the usb interface of the STM32 and rewire the rotary encoder to the RX/TX uart pin
That makes the rotary encode much more responsive

Again, this is early software. It is usable but contains bugs. I think you can revert without problem to Jye firmware, since we dont touch the eeprom, but i'm not 100% positive.

Re: New alternative firmware

Posted: Wed Jul 31, 2019 9:03 am
by MorganFlint
Thank you for your work!

Re: New alternative firmware

Posted: Sat Aug 17, 2019 8:58 am
by trescurieux
Hi
The fourth version (v1.3 https://github.com/mean00/DSO_STM32Duino/releases) fixes most of the issues
in particular unresponsive rotary encoder.
It should be on par with the official firmware, except some minor UI glitches.

The last item on my todo is the single shot mode (it's partially in git) .

Next is porting to DSO138, should be relatively easy, from a sw point of view they are very close.
And as a bonus, the DSO138 has SWD AND USB interfaces for free without the need to solder anything.

Re: New alternative firmware

Posted: Thu Sep 12, 2019 2:30 pm
by trescurieux
v1.4 brings fine voltage calibration and overall better accuracy by better using the ADC available voltage range
As a bonus, calibration makes it work fine with older & newer analog board revisions where the gain is slightly different

Re: New alternative firmware

Posted: Fri May 15, 2020 6:01 am
by trescurieux
v 1.05 :
* Support for 5us/div frequency range. It is really borderline.
* Better voltage threshold management
* Misc stability fixes
* Moved the rotary encoder to PB14/PB15
* Support for GD32F303

The later is a great improvement for the DSO Shell compared to the STM32F103 used on the vanilla DSO shell :
It is significantly faster ( running @ 96Mhz, it is ~ 2 times faster due to its zero wait state pseudo flash)

It has a more fexible ADC sampling frequencies leading to exact sampling (no need to drop/duplicate samples)
It is cheap

Just swap the CPUs , no other modification to do

Re: New alternative firmware

Posted: Mon Jul 06, 2020 5:01 pm
by MorganFlint
Thanks again!!
I'm considering buying GD32F303 to try it, I'll post if I do.

Re: New alternative firmware

Posted: Sat Mar 06, 2021 9:56 am
by trescurieux
The latest git head (not released yet) contains full usb control
with sample python code (it's very basic)

Using the usb you can setup the DSO 150, ask for a capture and save the capture as either .csv file or .png file
It is very basic but since it's in python it's easy to extend to have a better UI

You'll need to do the usb mod (3 resistors + a micro usb breakout board, it's very easy to do)

Re: New alternative firmware

Posted: Tue Dec 21, 2021 6:49 am
by trescurieux
Hi
There is a new redone from scratch version of the alternative firmware with a simpler codebase and much better capture engine.
It is really fast, down to 10 us / square.
The first alpha is here :
https://github.com/mean00/lnDSO150

Careful : You need to solder 2 wires for the rotary encoder to behave nicely. It used to be optional, now it's mandatory, without it the user experience is really too bad.

Feedback welcome.