<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://w.electrodragon.com/w/index.php?action=history&amp;feed=atom&amp;title=RPI_RMP_Drive_Advanced</id>
	<title>RPI RMP Drive Advanced - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://w.electrodragon.com/w/index.php?action=history&amp;feed=atom&amp;title=RPI_RMP_Drive_Advanced"/>
	<link rel="alternate" type="text/html" href="https://w.electrodragon.com/w/index.php?title=RPI_RMP_Drive_Advanced&amp;action=history"/>
	<updated>2026-07-22T02:34:46Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.37.2</generator>
	<entry>
		<id>https://w.electrodragon.com/w/index.php?title=RPI_RMP_Drive_Advanced&amp;diff=32852&amp;oldid=prev</id>
		<title>Chao at 06:31, 12 September 2023</title>
		<link rel="alternate" type="text/html" href="https://w.electrodragon.com/w/index.php?title=RPI_RMP_Drive_Advanced&amp;diff=32852&amp;oldid=prev"/>
		<updated>2023-09-12T06:31:16Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Showroom Project ==&lt;br /&gt;
* https://www.youtube.com/watch?v=l_GSGFhnWwo&amp;amp;feature=youtu.be&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== Advanced - Modify Code and Issues ==&lt;br /&gt;
&lt;br /&gt;
==== Modify Transformer demo code ====&lt;br /&gt;
* The code main differences are the transformer.cc transformer.h&lt;br /&gt;
* notice to apply new transformer in your code, for example the demo code, ADD new line at 1163&lt;br /&gt;
 matrix-&amp;gt;ApplyStaticTransformer(rgb_matrix::EDTransformer()) ;&lt;br /&gt;
* compile again -&amp;gt; cd into folder and compile it: make -C example*&lt;br /&gt;
* now can start to run following demo&lt;br /&gt;
&lt;br /&gt;
==== Apply new transformer ====&lt;br /&gt;
[[File:2018-07-16 183343.png|thumbnail]]&lt;br /&gt;
* Please refer to above 32*16 zip file code, you can search and file EDTransformer() in 3 files&lt;br /&gt;
* add as demo code to -&amp;gt; transformer.cc, before }; name_space rgb_matrix at the end&lt;br /&gt;
* add as demo code to -&amp;gt; transformer.h, before }; name_space rgb_matrix at the end&lt;br /&gt;
* add as demo code to -&amp;gt; led-matrix.cc, there are two lines&lt;br /&gt;
* apply transformer into demo in line 1162~1163 -&amp;gt; matrix-&amp;gt;ApplyStaticTransformer(rgb_matrix::P10outdoorTransformer());&lt;br /&gt;
[[File:2018-07-16_184504.png|300px]]&lt;br /&gt;
&lt;br /&gt;
Documents &lt;br /&gt;
* Discussion how to write the transformer: https://github.com/hzeller/rpi-rgb-led-matrix/issues/136&lt;br /&gt;
* crazy chinese transformer: https://github.com/hzeller/rpi-rgb-led-matrix/issues/178&lt;br /&gt;
&lt;br /&gt;
==== Transormer for 16x32x1/4 ====&lt;br /&gt;
* https://github.com/hzeller/rpi-rgb-led-matrix/issues/313&lt;br /&gt;
* https://github.com/hzeller/rpi-rgb-led-matrix/issues/242&lt;br /&gt;
* https://github.com/hzeller/rpi-rgb-led-matrix/issues/283&lt;br /&gt;
* Get P10 transformer from here: https://github.com/gausie/rpi-rgb-led-matrix/tree/p10transformer&lt;br /&gt;
* The file edited transformer.h and transformer.cc, and led-matrix.h&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* RGBMatrix::RGBMatrix in led-matrix.cc, this is for python - &amp;gt; https://github.com/hzeller/rpi-rgb-led-matrix/issues/283&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
int new_x = 0;&lt;br /&gt;
int new_y = 0;&lt;br /&gt;
if (y &amp;lt; 4 || (y &amp;gt; 7 &amp;amp;&amp;amp; y &amp;lt; 12)) {&lt;br /&gt;
new_x = (x * -1) + (24 * ((x / 8) + 1)) - 17;&lt;br /&gt;
new_y = y;&lt;br /&gt;
} else {&lt;br /&gt;
new_x = x + (8 * ((x / 8) + 1));&lt;br /&gt;
new_y = y - 4;&lt;br /&gt;
}&lt;br /&gt;
delegatee_-&amp;gt;SetPixel(new_x, new_y, red, green, blue);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==== Transformer canvas part for 32x32x1/8 ====&lt;br /&gt;
* https://github.com/hzeller/rpi-rgb-led-matrix/issues/66&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
new_x = ((x / 16) * 32) + (x % 16);&lt;br /&gt;
if ((y &amp;amp; 8) == 0) {&lt;br /&gt;
new_x += 16;&lt;br /&gt;
}&lt;br /&gt;
new_y = ((y / 16) * 16) + (y % 8);&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Also in your transform class have:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=&amp;quot;c&amp;quot;&amp;gt;&lt;br /&gt;
int myTransformer::TransformCanvas::width() const {&lt;br /&gt;
return delegatee_-&amp;gt;width() / 2; }&lt;br /&gt;
int myTransformer::TransformCanvas::height() const {&lt;br /&gt;
return delegatee_-&amp;gt;height() ; }&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
* Change the define in framebuffer.cc to SUB_PANELS_ 4 and remake the librgbmatrix library.&lt;br /&gt;
* Try row = 32 and chains = double the number of panels in a chain.&lt;br /&gt;
===Apply transformer ===&lt;br /&gt;
* in demo-main.cc on line 1163 after the check for rotation:&lt;br /&gt;
 matrix-&amp;gt;ApplyStaticTransformer(rgb_matrix::Mikro2347Transformer());&lt;br /&gt;
 sudo ./demo -D 0 --led-no-hardware-pulse --led-rows=16 --led-chain=2&lt;br /&gt;
&lt;br /&gt;
=== Constant Matrix Drive ===&lt;br /&gt;
* [[File:TC5020-FUMAN.pdf|TC5020A constant current chipsets from Fuman electronics shenzen (24 pin)]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
== redirect ==&lt;br /&gt;
- read more information here - https://w2.electrodragon.com/Board/MPC/MPC1073-DAT/MPC1073-ref-dat.md&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[category: RPI RMP]]&lt;/div&gt;</summary>
		<author><name>Chao</name></author>
	</entry>
</feed>