-
Notifications
You must be signed in to change notification settings - Fork 148
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DSO138mini compatibility? #18
Comments
The mini features the same controller STM32F103C8T6. Sidenote
|
Despite the same controller DSO138mini and DSO138 firmware is obviously not the same as the schematics/pin connections differ. |
I see the answer is not needed now, but in case it helps others interested in adapting the code to DSO138-mini (something beyond my abilities :-( ), I'll try to explain the differences between both from a HW perspective. Looking at the schematics, the main differences are related to the trigger circuits. In DSO138 there is a circuit around U2D which compares the voltage generated (PWM) from pin PB8 of the MCU with the analog signal and generates "HW trigger" to pin PA8, while in DSO138 mini this circuit is missing, as its function is done via FW. But the same thing happened between the first and the latest version of DSO150 but, regardless of this, the former HW versions can run the newer FW versions (not the opposite), as the FW simply ignores the HW generated trigger. I'm not sure if in the latest official FW versions for DSO138 the same approach was taken (FW trigger generation instead of HW, ignoring signal at PA8). So, to answer the question, it mainly depends on how DLO-138 handles the trigger, either via HW (pin PA8) or via FW. I haven't analyzed the code but, looking at the modded schematics on the first page, to implement external trigger, DLO-138 uses PA8, so we can deduct DLO-138 triggering wouldn't work on DSO138mini, unless we recreate the circuit around U2D (there's a "free" op-amp in the Mini, U1C) or feed an external trigger to PA8. The alternative would be to write code to produce triggering from the signal input, as in DSO150. There are other differences: To summarize, lots of differences in pinout (i think easily corrected in FW) but also HW differences in triggering that would need to modify the HW or write some new code to implement triggering via software. |
I tried porting it to the DSO138mini and can confirm that DLO uses hardware triggering. If anyone is more knowledgeable than me in that stuff, feel free to contribute over at my fork |
I also had the "flipping issue" (and also color palette related issues) when trying to port "DSO138mini Space Invaders" to DSO138 old version (more or less the opposite that you're trying to do now). I could solve it thanks to phillowcompiler's advice as you can see here: As you can see there, this issue is related to the control registers of the display and should be easy to correct also in your case. Hope you have luck with the rest of the issues!! (mainly, generating trigger via software, doesn't seem difficult but will require writing some new code) |
I also saw that page in the datasheet, however I can't figure it out how to (un)set said bit. the Library used for the display is kinda hacked up and doesn't provide a function for changing the control Register and the lack of a debugger in the arduino IDE makes this frustratingly hard to implement. A much bigger problem is that the Display shares some pins with the buttons, so you would need to either rewire the buttons or disable the display while reading buttons (which would also result in a lot of extra code). |
Ok. Curiously, I didn't find (or relate) any issues with the buttons sharing pins with the display when running the space invaders in DSO138 but, thinking of it now, maybe the flashing lines I mention here could be because of that |
It is not an issue, but a question: is the firmware compatible with DSO138mini ?
If not, do you have an idea, what differs DSO138mini from DSO138? (from firmware development perspective)
The text was updated successfully, but these errors were encountered: