Closed MRC3742 closed 10 months ago
This sounds like you're tripping the hardware detection that would normally be used to detect PCB revisions. i.e. when a manufacturer makes a revised version of a board that has changes the software needs to know about, they usually set an otherwise unused MCU pin to a known state which the firmware can detect the state of, so it can adapt its behaviour to suit the board.
For the X10, it looks like H7/H8 are those indicator pins! :-O https://github.com/EdgeTX/edgetx/blob/f7b676fcad8056f1df2e9d70359cec10618a60c4/radio/src/targets/horus/hal.h#L397-L402
I don't immediately see any other reference to H.07/H.08 being in use for that board, so you could possibly try bypassing the check here by setting it to true for your target (should be ln93 since you said non-express)? https://github.com/EdgeTX/edgetx/blob/f7b676fcad8056f1df2e9d70359cec10618a60c4/radio/src/targets/horus/board.h#L87-L94
Success! I now have the touch screen working on my X10
Thank you for that information. I knew it was some sort of board check but was not able to find it in the code. The bypass on line 93 set to "true" works but is probably not the proper way to add this mod to the codebase?
Thank You Again - Rich
Not as a "proper" fix I don't think.
If you get a chance, can you see if swapping PCBREV_X10_STD
for PCBREV_X10_EXPRESS
on ln93 allows it to boot without issue... (meaning the code simply can no longer differentiate between the X10 and X10 Express). If so, may have to consider a flag that disables the check in order to support moding the X10 (and probably X10 Express, I guess).
The debug port has I2C capabilities. So one could hook the touch sensor to AUX1, which would not require disabling the board revision resistors. Not sure about the IRQ and RESET pins however. I need to check the connections.
@pfeerick
Building using PCBREV_X10_EXPRESS
on ln93 also allows the radio to start and work with touch control.
Could a check be added before or after the current one to see if those pins are pulled up? then touch support could be allowed?
I also have a Horus X10S-EXPRESS that I can use to check the MCU pin connections. The resistor "R1" used to pull down pin 98 (PH.08) is not populated on my X10S-EXPRESS board. Would this be used for the check to distinguish between the Standard or EXPRESS ? X10S/EXPRESS Mainboard MCU with R1 not populated and pin 98 (PH8) floating?
EDIT: R2 on pin 97 (PH7) is used as a 1K pullup resistor to 3.3v on this EXPRESS board. The NON EXPRESS board uses both 1K resistors at R1 and R2 as pulldowns to ground.
Thanks - Rich
@raphaelcoeffic Although AUX1 would be easier to hook up to originally, I was hoping to leave this available to use for other options. Such as the External Access Mod connection point on the X10 Standard Tx, which is already available via AUX1 choices.
Thanks - Rich
Such as the External Access Mod connection point on the X10 Standard Tx, which is already available via AUX1 choices.
Right, makes great sense!
@pfeerick @raphaelcoeffic
I think I've managed to allow the PCBREV check on the X10 Standard (NON EXPRESS) mainboard to succeed as intended.
In addition to the Touch Screen Mod you would need to add a 1K pulldown resistor to ground on unused MCU pin 55 (PA6)
X10 (NOT EXPRESS) mainboard with additional resistor mod required shown ^^^ above.
NOTE: The X10 / X10S EXPRESS radios do NOT need this additional pulldown as they will pass the PCBREV check after installing the Mod for Touch Screen.
I've added PR #4151 for your review and suggestions. Thanks - Rich
Information for Touch Panel update set (uses your current LCD screen) or complete new IPS LCD with Touch Panel assembly.
This Mod adds touch screen capability to the Horus X10 series radios with just a "TX16S Touch Panel update set". Approximately $10.00 USD plus S&H Currently available in US here https://graysonhobby.com/radiomaster-tx16s-trouch-panel-update-set.html
A better option is to use a TX16S "Replacement IPS LCD Screen and Touch Panel assembly". This IPS screen is clearer and has a much better viewing angle than the original X10 LCD screen. (Very noticeable improvement) Approximately $30.00 USD plus S&H Currently available in US here https://www.buddyrc.com/products/radiomaster-tx16s-lcd-touch-panel
The wire I use to solder to the MPU pins (with great success) is single strand 30awg kynar coated wire (doesn't melt with heat) Approximately $3.00 USD for 10 feet with FREE S&H in US Currently 10 different colors available in US here https://www.ebay.com/itm/260929559527
Rich
Code for addition to add Touch Screen Mod for the Horus X10 Series has been merged into 2.9 and main branches.
Issue Closed
@MRC3742 can you tell us which pins you used on the main processor? maybe write a little guide?
As referenced in the first post of this issue, I just followed a guide for installing touch on the Jumper T16 that was made by Stinky80. how_to_add_toch_in_T16.pdf
If modding the X10 NON EXPRESS, you also need the 1K resistor mod listed above. Resistor mod for NON EXPRESS models post
The only other problem is the touch panel adds approx. 1mm thickness and you need to remove that much material from the ribs on the front of plastic piece that holds the screen in place. I used a dremel and a sanding wheel to remove the same amount as added by the new screen thickness.
This picture posted by Stinky80 can be used as a reference and shows pins needed. The Jumper has the same basic layout as the X10 and X10EXPRESS.
hi... I want to make this Mod... I have a X10S Express. Can someone please check this photo.
Is this correct? I have to remove R2 (R1 isn't populated). The rest should be clear...
Regards
I can confirm to myself... the picture ist correkt ;) The Horus works now with touch... awsome!!! :)
Is there an existing issue for this feature request?
Is your feature request related to a problem?
No
Describe the solution you'd like
With the availability to mod the other color LCD radios and add the TX16S touch panel (Horus X12, Jumper T16, and T18) I'm looking to add the touch panel to the X10 series of transmitters.
It appears that the same mod as done for the Jumper T16 should work on the X10 / X10S. The firmware would need to be modified to allow these radios the ability for an added touch panel.
I have already attempted this firmware and hardware mod on an X10 (non Express) and have made the changes as was done to add touch to the Jumper T16 on PR #2060 The radio will start with just the firmware changes and it also shows (although not working) Touch GT911 on the Hardware Analogs screen. After the hardware mod is done, as on the T16, the radio starts with only "Wrong PCB Detected" on screen and will shut off normally with power button. Changing back the SCL, SDA lines modded from pull up (3.3V) back to pull down (Ground) the TX will now start normal. I'm missing something that is causing Pin 97 (PH.07) and pin 98 (PH.08) either floating or pulled up to cause this error.
Any advice? Thanks - Rich
Describe alternatives you've considered
No response
Additional context
No response