<?xml version="1.0" encoding="UTF-8"?>

<rss version="2.0"
 xmlns:blogChannel="http://backend.userland.com/blogChannelModule"
>

<channel>
<title><![CDATA[Dobrica Pavlinušić's random unstructured stuff: Blue Pill]]></title>
<link>https://saturn.ffzg.hr/rot13/index.cgi?blue_pill</link>
<description></description>
<pubDate>Sun, 08 Aug 2021 07:52:55 -0000</pubDate>
<webMaster>root@saturn.ffzg.hr</webMaster>
<generator>Socialtext Workspace v2.19.0.2</generator>

<item>
<title><![CDATA[Blue Pill]]></title>
<link>https://saturn.ffzg.hr/rot13/index.cgi?blue_pill</link>
<description><![CDATA[<div>Creator: Dobrica Pavlinušić</div><hr/><div>Tags: stm32</div><hr/><div class="wiki">
<span class="nlw_phrase"><a href="https://saturn.ffzg.hr/rot13/index.cgi/The-Generic-STM32F103-Pinout-Diagram.pdf?action=attachments_download;page_name=blue_pill;id=20201206115233-0-25777">The-Generic-STM32F103-Pinout-Diagram.pdf</a><!-- wiki: {file: The-=Generic-=STM32F103-=Pinout-=Diagram.pdf} --></span><br /><br /><div class="nlw_phrase"><table class="wafl_container">
  <tr>
    <td>
      <div class="wafl_box">
        
          <div class="wafl_titlebox">
            <div class="wafl_title">
              
                Contents: [Dobrica Pavlinušić's random unstructured stuff]
              
            </div>
          </div>
          <div class="wafl_items">
            
              <div class="wiki">
<ul>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#arduino_boot_loader">Dobrica Pavlinušić's random unstructured stuff (arduino boot loader)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] arduino boot loader} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#triple_usb_serial">Dobrica Pavlinušić's random unstructured stuff (triple usb serial)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] triple usb serial} --></span></li>

<ul>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#pill_serial">Dobrica Pavlinušić's random unstructured stuff (pill_serial)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] pill_serial} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#bluepill_serial_monster">Dobrica Pavlinušić's random unstructured stuff (bluepill-serial-monster)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] bluepill-=serial-=monster} --></span></li>
</ul>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#openocd_with_raspberry_pi">Dobrica Pavlinušić's random unstructured stuff (openocd with raspberry pi)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] openocd with raspberry pi} --></span></li>
<li><span class="nlw_phrase"><a title="section link" href="https://saturn.ffzg.hr/rot13/index.cgi?dobrica_pavlinu%C5%A1i%C4%87_s_random_unstructured_stuff#clones">Dobrica Pavlinušić's random unstructured stuff (clones)</a><!-- wiki: {link: [Dobrica Pavlinušić's random unstructured stuff] clones} --></span></li>
</ul>
</div>

            
            
          </div>
        
      </div>
    </td>
  </tr>
</table>
<!-- wiki: {toc: }
--></div><br /><br /><p>
stm32f103 board</p>
<h1 id="arduino_boot_loader">arduino boot loader</h1>
<ul>
<li><a target="_blank" title="(external link)" href="https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki/Flashing-Bootloader-for-BluePill-Boards">https://github.com/rogerclarkmelbourne/Arduino_STM32/wiki/Flashing-Bootloader-for-BluePill-Boards</a></li>
</ul>
<h1 id="triple_usb_serial">triple usb serial</h1>
<h2 id="pill_serial">pill_serial</h2>
<ul>
<li><a target="_blank" title="(external link)" href="https://satoshinm.github.io/blog/171223_stm32serial_triple_usb-to-serial_adapter_using_stm32_blue_pill.html">https://satoshinm.github.io/blog/171223_stm32serial_triple_usb-to-serial_adapter_using_stm32_blue_pill.html</a></li>
<li><a target="_blank" title="(external link)" href="https://github.com/satoshinm/pill_serial">https://github.com/satoshinm/pill_serial</a></li>
</ul>
<table style="border-collapse: collapse;" class="formatter_table">
<tr>
<td style="border: 1px solid black;padding: .2em;">Function</td>
<td style="border: 1px solid black;padding: .2em;">Pin and Port</td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">USART3 TX</td>
<td style="border: 1px solid black;padding: .2em;">PB10</td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">USART3 RX</td>
<td style="border: 1px solid black;padding: .2em;">PB11</td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">USART2 TX</td>
<td style="border: 1px solid black;padding: .2em;">PA2</td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">USART2 RX</td>
<td style="border: 1px solid black;padding: .2em;">PA3</td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">USART1 TX</td>
<td style="border: 1px solid black;padding: .2em;">PA9</td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">USART1 RX</td>
<td style="border: 1px solid black;padding: .2em;">PA10</td>
</tr>
</table>
<br /><table style="border-collapse: collapse;" class="formatter_table">
<tr>
<td style="border: 1px solid black;padding: .2em;">USART</td>
<td style="border: 1px solid black;padding: .2em;">TX pin</td>
<td style="border: 1px solid black;padding: .2em;">RX pin</td>
<td style="border: 1px solid black;padding: .2em;">special</td>
<td style="border: 1px solid black;padding: .2em;">speed</td>
<td style="border: 1px solid black;padding: .2em;">sensor</td>
<td style="border: 1px solid black;padding: .2em;">linux</td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">3</td>
<td style="border: 1px solid black;padding: .2em;">PB10</td>
<td style="border: 1px solid black;padding: .2em;">PB11</td>
<td style="border: 1px solid black;padding: .2em;"><span style="padding:.5em">&nbsp;</span></td>
<td style="border: 1px solid black;padding: .2em;">9600</td>
<td style="border: 1px solid black;padding: .2em;"><a href="https://saturn.ffzg.hr/rot13/index.cgi?mh_z19b" title="(80 months)  Product model number MH-Z19B Gas Detection Carbon Dioxide Supply voltage 4.5 5.5V DC Average curren...">MH-Z19B</a></td>
<td style="border: 1px solid black;padding: .2em;">/dev/ttyACM1</td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">2</td>
<td style="border: 1px solid black;padding: .2em;">PA2</td>
<td style="border: 1px solid black;padding: .2em;">PA3</td>
<td style="border: 1px solid black;padding: .2em;"><span style="padding:.5em">&nbsp;</span></td>
<td style="border: 1px solid black;padding: .2em;">9600</td>
<td style="border: 1px solid black;padding: .2em;"><span style="padding:.5em">&nbsp;</span></td>
<td style="border: 1px solid black;padding: .2em;"><span style="padding:.5em">&nbsp;</span></td>
</tr>
<tr>
<td style="border: 1px solid black;padding: .2em;">1</td>
<td style="border: 1px solid black;padding: .2em;">PA9</td>
<td style="border: 1px solid black;padding: .2em;">PA10</td>
<td style="border: 1px solid black;padding: .2em;">BOOT=0</td>
<td style="border: 1px solid black;padding: .2em;">9600</td>
<td style="border: 1px solid black;padding: .2em;"><span style="padding:.5em">&nbsp;</span></td>
<td style="border: 1px solid black;padding: .2em;"><span style="padding:.5em">&nbsp;</span></td>
</tr>
</table>
<br /><pre>
dpavlin@nuc:/nuc/stm32/pill_serial$ cat flash.sh
sudo ../stlink/build/Release/st-flash write src/pill_serial.bin 0x08000000
</pre>
<br /><p>
lower serial speed to 9600 so we can use slow sensors on it: <span class="nlw_phrase"><a href="https://saturn.ffzg.hr/rot13/index.cgi/serial-speed.diff?action=attachments_download;page_name=blue_pill;id=20200209104806-1-31164">serial-speed.diff</a><!-- wiki: {file: serial-=speed.diff} --></span></p>
<h2 id="bluepill_serial_monster">bluepill-serial-monster</h2>
<p>
<a target="_blank" title="(external link)" href="https://github.com/r2axz/bluepill-serial-monster">https://github.com/r2axz/bluepill-serial-monster</a></p>
<h1 id="openocd_with_raspberry_pi">openocd with raspberry pi</h1>
<p>
<a target="_blank" title="(external link)" href="http://git.rot13.org/?p=openocd-rpi2-stm32;a=blob;f=openocd-rpi.txt">http://git.rot13.org/?p=openocd-rpi2-stm32;a=blob;f=openocd-rpi.txt</a></p>
<h1 id="clones">clones</h1>
<p>
<a target="_blank" title="(external link)" href="https://github.com/thanks4opensource/buck50/issues/2">https://github.com/thanks4opensource/buck50/issues/2</a></p>
<p>
<a target="_blank" title="(external link)" href="https://github.com/keirf/Greaseweazle/wiki/STM32-Fakes">https://github.com/keirf/Greaseweazle/wiki/STM32-Fakes</a></p>
<pre>
dpavlin@nuc:/nuc/stm32/Greaseweazle$ wget https://github.com/keirf/Greaseweazle/releases/download/v0.22/Greaseweazle-v0.22.zip

dpavlin@nuc:/nuc/stm32/Greaseweazle$ unzip Greaseweazle-v0.22.zip Greaseweazle-v0.22/alt/Blinky_Test-v0.22.hex
Archive:  Greaseweazle-v0.22.zip
  inflating: Greaseweazle-v0.22/alt/Blinky_Test-v0.22.hex
</pre>
<br /><p>
write it to flash using openocd</p>
<pre>
&gt; flash write_image erase /nuc/stm32/Greaseweazle/Greaseweazle-v0.22/alt/Blinky_Test-v0.22.hex 0 ihex
auto erase enabled
wrote 5120 bytes from file /nuc/stm32/Greaseweazle/Greaseweazle-v0.22/alt/Blinky_Test-v0.22.hex in 0.299529s (16.693 KiB/s)
</pre>
<br /><p>
serial output is on the programming interface at pins A9/TX and A10/RX: Not via the USB port!</p>
<pre>
pi@pihdmi:/nuc/stm32/buck50 $ microcom -p /dev/ttyUSB1
connected to /dev/ttyUSB1
Escape character: Ctrl-\
Type the escape character to get to the prompt.

** Blinky
** Blinky Test **
** Keir Fraser &lt;keir.xen@gmail.com&gt;
** https://github.com/keirf/Greaseweazle
Serial = ff48:0670:8967:5655:4740:6706
Flash Size  = 128kB
Device ID = 0x0000
Revision  = 0x0000
Testing I2C1... OK
Testing I2C2... OK
Testing SPI1... OK
Testing SPI2... OK
Testing TIM1... OK
Testing TIM2... OK
Testing TIM3... OK
Testing TIM4... OK
DMA Test #1... OK
DMA Test #2... OK
DMA Test #3... OK
DMA Test #4... OK
Testing 64kB Flash... OK
Enable TIM4 IRQ... .OK
Testing 20kB SRAM (endless loop)................................................................
</pre>
<br /><p>
After flashing this test, you will not be able to address blue pill using openocd.</p>
<p>
To work-around this problem, I switched boot0 jumper, used stm32loader (after pressing reset button) to load alternative binary.</p>
</div>
<hr/><div>Attachments: serial-speed.diff, The-Generic-STM32F103-Pinout-Diagram.pdf</div>]]></description>
<author>Dobrica Pavlinu&#x161;i&#x107;</author>
<category>stm32</category>
<guid isPermaLink="true">https://saturn.ffzg.hr/rot13/index.cgi?blue_pill</guid>
<pubDate>Sun, 08 Aug 2021 07:52:55 -0000</pubDate>
</item>
</channel>
</rss>