After reading the details, I promptly ordered my own device, specifically this RD DPS5015 Buck Power Supply LCD color display step-down voltage converter on eBay. This DPS is similar, but different than the one Johan used, going on the assumption that it is similar: "Although this guide is written for the ‘5005 it should work for the entire DPS family but I only have 5005s to test with."
Upon inspection, I found that the onboard processor is an 32F100C8T6B with the LQFP48 pinout using the same pin configuration as on the DPS5005 in Johan's project:
"Medium-density devices are STM32F100x8 and STM32F100xB microcontrollers where the Flash memory density ranges between 64 and 128 Kbytes." [*1]
The [x] is a placeholder for only 1 character, not "all characters until the end, excluding the last B". The "B" in STM32F100CB means "128KB". This is not to be confused with STM32F100C8 or in the case of the DPS5015 - the STM32F100C8T6B - which are 64KB devices.
Don't confuse the 8 or B with the trailing "B" on the end, That last B is an "Internal Code" having nothing to do with flash size.
I had OpenOCD for Windows installed via the sysprog VisualGDB app, so I used that one:
cd C:\SysGCC\esp8266\esp8266-bsp\OpenOCD\share\openocd\scripts
and so ok, once I have Ubuntu on Windows (am I the only one to find that crazy?!?! *Ubuntu* on *Windows* - wow!)... all the toolchain items need to be installed fresh. None of the Windows binaries will run. So I installed the items listed here:
I ended up hosting the OpenOCD from MINGW64 bash prompt, but programming via the Ubuntu bash prompt (this is NOT a good idea). The problem is with the apparent path. When doing a "make flash" - I kept getting a "couldn't open opendps.elf" error (yet the file was there).
Doing a "pwd" from the OpenOCD telnet session revealed all!
C:/workspace/opendps/openocd/scripts
This is despite the fact that MINGW64 sees the path as:
/c/workspace/opendps/openocd/scripts
and the Ubuntu Bash sees it as:
/mnt/c/workspace/ ...
the libopencm3.rules.mk file had this simple command for "make flash":
program $(*).elf verify reset exit
so I used a manual command in the OpenOCD telnet session:
program c:/workspace/opendps/opendps/opendps.elf verify reset
My first real computer was a dual processor 6502 / Z80. That was a bit of a misnomer, as one could not actually use both them at the same time. This was a "Basis 108" Apple II compatible from West Germany: A behemoth of a computer in an awesome cast aluminum case. Essentially the "second" processor was the Z80 add-on board but built-in to the motherboard. The thoughts of revisiting my old friend CP/M was too hard to resist.
I used my existing Build-ESP8266 project on a Raspberry Pi, originally created to ease compiling of MicroPython:
As this script downloads and recompiles everything needed for the ESP8266 toolchain, it was a simple matter to adapt for this Z80 CP/M project.
I only needed to adjust one value in the ./cpm8266/code/Makefile
-FLASHBAUD = 921600 +FLASHBAUD = 115200
The speed of 921600 was just too crazy, giving an error at upload time:
Makefile:180: recipe for target 'flashinit' failed make: *** [flashinit] Error 2
So adjusting down to 115200 solved that problem.
I also had the ESP8266 toolchain installed in slightly different locations. Fortunately everything was parameterized in environment variables. So when using my Build_ESP8266 script the values are:
...and use the Access key and Secret access key for the first two aws config prompts.
next is to figure out the region (a name without spaces!). In my case, that's us-west-2.
Moving on to the security configuration, I spent hours fussing with the "aws iot create-certificate-from-csr" before before
submitting an AWS CLI issue here:
The problem there - was apparently when copy/pasting the aws command, one or more of the dashes were converted to evil dashes (some sort of character that looks and acts like a dash, but is not!)