- Posts: 31
Devo 12
- kohansey
-
Topic Author
- Offline
Less
More
25 Sep 2012 03:28 - 26 Sep 2012 12:40 #1807
by kohansey
Devo 12 was created by kohansey
MCU -
STM32F103ZET6
SDRAM - IS42S16100E-7TL
NOR Flash - S29GL128P10TF101
4.7" LCD Panel - TM047NBH01
LCD Driver - S1D13517F00A1
Touch Sensor - TSC20081
Serial Flash - SST25VF016B
SDRAM - IS42S16100E-7TL
NOR Flash - S29GL128P10TF101
4.7" LCD Panel - TM047NBH01
LCD Driver - S1D13517F00A1
Touch Sensor - TSC20081
Serial Flash - SST25VF016B
Last edit: 26 Sep 2012 12:40 by kohansey.
- PhracturedBlue
-
- Offline
Less
More
- Posts: 4403
25 Sep 2012 03:40 #1808
by PhracturedBlue
Replied by PhracturedBlue on topic Devo 12
another possibilty is the HX8504-A. This looks like it could possibly match up to the connectors on the ribbon cable:
wenku.baidu.com/view/b8a8f87e31b765ce050814c5.html
Given the position of the notch, pin 1 should be top-right in the images you've posted.
wenku.baidu.com/view/b8a8f87e31b765ce050814c5.html
Given the position of the notch, pin 1 should be top-right in the images you've posted.
- PhracturedBlue
-
- Offline
Less
More
- Posts: 4403
25 Sep 2012 03:51 #1809
by PhracturedBlue
Replied by PhracturedBlue on topic Devo 12
Here are some more Tx pictures:
www.rcgroups.com/forums/showpost.php?p=20842363&postcount=104
www.rcgroups.com/forums/showpost.php?p=20842363&postcount=104
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
25 Sep 2012 04:27 - 25 Sep 2012 05:13 #1810
by kohansey
Replied by kohansey on topic Devo 12
So far no luck with epson. The epson S1D13505, S1D13506, and S1D13517 pinouts has the row of pins closest to the connector as pins 1 - 32, therefore, based on the Devo12s layout, R0 - R7 data lines should feed into pins 38 - 45, however, this doesn't match the chips pinout. The SSD1963 has a similar pinout that also fails to match-up.
Last edit: 25 Sep 2012 05:13 by kohansey.
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
- PhracturedBlue
-
- Offline
Less
More
- Posts: 4403
25 Sep 2012 15:39 #1821
by PhracturedBlue
Replied by PhracturedBlue on topic Devo 12
If you can provide high res images of the front and back of the board, I found it really useful to align and print them onto a double-sided sheet of paper. It makes it a lot easier to follow routes than on the screen.kohansey wrote: I trying contacting HiMax requesting datasheets on the HX chips, hopefully I'll hear something back. In the meantime, I'll try ohm'ing out the pins on the micro so we can get a connection map going.
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
- PhracturedBlue
-
- Offline
Less
More
- Posts: 4403
- FDR
-
- Offline
25 Sep 2012 17:22 #1824
by FDR
That way you can switch back and force on the screen and follow the routes...
Replied by FDR on topic Devo 12
I used to align the two images one of them mirrored.PhracturedBlue wrote:
If you can provide high res images of the front and back of the board, I found it really useful to align and print them onto a double-sided sheet of paper. It makes it a lot easier to follow routes than on the screen.kohansey wrote: I trying contacting HiMax requesting datasheets on the HX chips, hopefully I'll hear something back. In the meantime, I'll try ohm'ing out the pins on the micro so we can get a connection map going.
That way you can switch back and force on the screen and follow the routes...
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
25 Sep 2012 19:26 #1826
by kohansey
Replied by kohansey on topic Devo 12
Thank you DisplayFuture. Here is a link to a bunch of display driver datasheets. I'm posting it here so I can go back later and look through the datasheets.
www.displayfuture.com/engineering/datasheets.asp
www.displayfuture.com/engineering/datasheets.asp
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
26 Sep 2012 03:07 #1829
by kohansey
Replied by kohansey on topic Devo 12
Thats to brerax from RCGroups, I now know the LCD driver. I found that the best way to get an image of the board is to scan it. My scanner can scan at 1200 dpi, the image is flat and everything is bright. I'll be working up a connection map over the next few days once I work everything out.
- thloh85
-
- Offline
Less
More
- Posts: 22
26 Sep 2012 16:02 #1832
by thloh85
Replied by thloh85 on topic Devo 12
kohansey,
I'll drop the LCD link from RCG here: vdc.epson.com/index.php?option=com_docma...ew&gid=329&Itemid=99 , in case anyone is interested to start developing and do not visit RCG...
Sorry I haven't been active in Devo10 development. My father had tumor and I've been rushing in and out of hospital for the past weeks... I'll just follow what you guys develop, don't think I have time at all for development...
Thanks.
I'll drop the LCD link from RCG here: vdc.epson.com/index.php?option=com_docma...ew&gid=329&Itemid=99 , in case anyone is interested to start developing and do not visit RCG...
Sorry I haven't been active in Devo10 development. My father had tumor and I've been rushing in and out of hospital for the past weeks... I'll just follow what you guys develop, don't think I have time at all for development...
Thanks.
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
27 Sep 2012 15:28 #1843
by kohansey
Replied by kohansey on topic Devo 12
Thank you thloh85, I've added the link to the top of this thread to keep everything together. I am still going through the circuit board mapping out the pins. I started a schematic for this purpose which may or may not be worth the effort when trying to map the pins.
I was wondering if PhracturedBlue could explain which libraries are being used in Deviation project, so far I see:
PetitFS
LibOpenCMS3
I am not sure about the USB library. Also in the target folder for common_devo, there are files in a msc2, then more files in a sub-folder called lib. I know it is a common folder, but do all targets use these files? Also wouldn't it be beneficial to separate out the dependencies into say a support folder in the root of the project. This would allow for us to use Hg's sub-repository feature to pull the updated sources directly for their respective repositories. One more thing, in order to port to the Devo 12, do I only need to reimplement the files that live in the Devo8 folder? or is it more involved?
I was wondering if PhracturedBlue could explain which libraries are being used in Deviation project, so far I see:
PetitFS
LibOpenCMS3
I am not sure about the USB library. Also in the target folder for common_devo, there are files in a msc2, then more files in a sub-folder called lib. I know it is a common folder, but do all targets use these files? Also wouldn't it be beneficial to separate out the dependencies into say a support folder in the root of the project. This would allow for us to use Hg's sub-repository feature to pull the updated sources directly for their respective repositories. One more thing, in order to port to the Devo 12, do I only need to reimplement the files that live in the Devo8 folder? or is it more involved?
- PhracturedBlue
-
- Offline
Less
More
- Posts: 4403
27 Sep 2012 15:55 - 27 Sep 2012 15:55 #1844
by PhracturedBlue
Replied by PhracturedBlue on topic Devo 12
msc2 contains the usb library. I couldn't get libopencm3's USB to work reliably, so we currently include the STMicro version.
As you noted there is libopencm3 + newlib which provides the hardware and stdlib interface
we use petitfat for the fileystem, but it is a modified copy so I don't really consider it a library at all.
I'm not sure what organization you have in mind. Deviation is released as an entire package, you shouldn't really be trying to pull pieces of it and still expect things to work.
You will need to re-implement (or copy/modify) everything in devo8. you'll also need to look at devo_common, since the code there is all based on the common layout of the other devo models (SPI FLASH + F103 MCU). For instance, the petit_io.c, spi_flash.c, and spi_touch.c (which actually belongs in /devo8) won't work. the cyrf6936.c, power.c, pwm.c, sound.c may use different I/O pins on the Devo12. Basically you should expect to need to go through everything in devo_common and make sure it is correct for the Devo12 as well.
Eventually we'll need to decide what to do about the GUI, but as a stop-gap, the easiest answer may be to provide a 320x240x16 interface, and scale the pixels in the LCD driver.
As you noted there is libopencm3 + newlib which provides the hardware and stdlib interface
we use petitfat for the fileystem, but it is a modified copy so I don't really consider it a library at all.
I'm not sure what organization you have in mind. Deviation is released as an entire package, you shouldn't really be trying to pull pieces of it and still expect things to work.
You will need to re-implement (or copy/modify) everything in devo8. you'll also need to look at devo_common, since the code there is all based on the common layout of the other devo models (SPI FLASH + F103 MCU). For instance, the petit_io.c, spi_flash.c, and spi_touch.c (which actually belongs in /devo8) won't work. the cyrf6936.c, power.c, pwm.c, sound.c may use different I/O pins on the Devo12. Basically you should expect to need to go through everything in devo_common and make sure it is correct for the Devo12 as well.
Eventually we'll need to decide what to do about the GUI, but as a stop-gap, the easiest answer may be to provide a 320x240x16 interface, and scale the pixels in the LCD driver.
Last edit: 27 Sep 2012 15:55 by PhracturedBlue.
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
27 Sep 2012 16:09 #1845
by kohansey
Replied by kohansey on topic Devo 12
Ok, that explains why you don't separate the libraries. I've been reading through some of the old development posts and it sounds like you guys were able to dissemble the Walkera firmware. Is this true? If so, how would I be able to do the same for the 12? Did you dump from the micro or use the upgrade firmware from Walkera's website? What tools would you use to dissemble the binary?
I'm not going to make any suggestions for development until I can dig into the code, which means I need to finish my mapping first.
I'm not going to make any suggestions for development until I can dig into the code, which means I need to finish my mapping first.
- PhracturedBlue
-
- Offline
Less
More
- Posts: 4403
- kohansey
-
Topic Author
- Offline
Less
More
- Posts: 31
27 Sep 2012 16:41 - 27 Sep 2012 16:41 #1847
by kohansey
Replied by kohansey on topic Devo 12
Cool, is there documentation on what needs to be done so the bootloader accepts it? Documented in source at least? Could you point to where I could look to see how it is currently done?
Last edit: 27 Sep 2012 16:41 by kohansey.
- PhracturedBlue
-
- Offline
Less
More
- Posts: 4403
27 Sep 2012 17:33 #1848
by PhracturedBlue
Replied by PhracturedBlue on topic Devo 12
There are a couple of parts:
crc.h contains a unique-key per transmitter model. This value is not in the dfu shipped by Walkera, it is actually applied by the DFuSE tool. The only way I know to find this CRC is to snoop the USB bus, and it needs to be done for each Tx. It is only useful if you want to use a tool other than walkera's DFuSe uploader though (so it isn't critically important)
The linker script (devo8.ld) has to leave a hole for the CRC. This is already coded (search for '.crc'), so if you only modify the ROM and RAM ranges when porting devo8.ld, you'll be fine.
There is light encryption when generating the DFU. I implemented this in dfu.py, but you need to set the right offset when calling dfu.py. The offset should be the number of channels in the Tx (8 = devo8, 10 = devo10, so it should be 12 for the devo12). Note that the devo6 is weird in that it uses the same values as the devo8, but I'm pretty sure I tested the devo12 and verified the offset is 12. This is set in the Makefile.inc in the devo8/ dir
crc.h contains a unique-key per transmitter model. This value is not in the dfu shipped by Walkera, it is actually applied by the DFuSE tool. The only way I know to find this CRC is to snoop the USB bus, and it needs to be done for each Tx. It is only useful if you want to use a tool other than walkera's DFuSe uploader though (so it isn't critically important)
The linker script (devo8.ld) has to leave a hole for the CRC. This is already coded (search for '.crc'), so if you only modify the ROM and RAM ranges when porting devo8.ld, you'll be fine.
There is light encryption when generating the DFU. I implemented this in dfu.py, but you need to set the right offset when calling dfu.py. The offset should be the number of channels in the Tx (8 = devo8, 10 = devo10, so it should be 12 for the devo12). Note that the devo6 is weird in that it uses the same values as the devo8, but I'm pretty sure I tested the devo12 and verified the offset is 12. This is set in the Makefile.inc in the devo8/ dir
Time to create page: 0.220 seconds
-
Home
-
Forum
-
Development
-
Development
- Devo 12