Page 2 of 2

Re: #1198 breaks compilation for all STM496 with less than 169 pins

Posted: Fri Feb 04, 2022 3:46 am
by sabdulqadir
Hi Giovanni/Faisal,
Issue is, these elements(GPIOI) are not defined in board.chcfg file. We can manually add this node, but wanted to know if there is a tool available to generate these chcfg files. How did you generate them in the first place?

Thanks,
AQ

Re: #1198 breaks compilation for all STM496 with less than 169 pins

Posted: Fri Feb 04, 2022 4:19 am
by faisal
sabdulqadir wrote:Hi Giovanni/Faisal,
Issue is, these elements(GPIOI) are not defined in board.chcfg file. We can manually add this node, but wanted to know if there is a tool available to generate these chcfg files. How did you generate them in the first place?

Thanks,
AQ


Many tools out there can do this apparently:
https://stackoverflow.com/questions/171 ... dtd-or-xsd

Re: #1198 breaks compilation for all STM496 with less than 169 pins

Posted: Fri Feb 04, 2022 5:03 am
by faisal
Just tried the tool that comes with Visual Studio (not VSCode). Below is what it generated. Here is the guide I used: https://www.vishalon.net/blog/generate- ... ual-studio .

I just noticed by doing this exercise, that you can define certain headers to be present in the generated .c file, as well as an __early_init and boardInit functions ..

Regads.

Code: Select all

<?xml version="1.0" encoding="utf-8"?>
<board>
  <configuration_settings>
    <templates_path>templates_path1</templates_path>
    <output_path>output_path1</output_path>
    <board_files_path>board_files_path1</board_files_path>
    <hal_version>5.0.x</hal_version>
  </configuration_settings>
  <board_name>board_name1</board_name>
  <board_id>board_id1</board_id>
  <board_functions>
    <__early_init>__early_init1</__early_init>
    <boardInit>boardInit1</boardInit>
    <sdc_lld_is_card_inserted>sdc_lld_is_card_inserted1</sdc_lld_is_card_inserted>
    <sdc_lld_is_write_protected>sdc_lld_is_write_protected1</sdc_lld_is_write_protected>
    <mmc_lld_is_card_inserted>mmc_lld_is_card_inserted1</mmc_lld_is_card_inserted>
    <mmc_lld_is_write_protected>mmc_lld_is_write_protected1</mmc_lld_is_write_protected>
  </board_functions>
  <headers>
    <header>header1</header>
    <header>header2</header>
    <header>header3</header>
  </headers>
  <ethernet_phy>
    <identifier>identifier1</identifier>
    <bus_type>RMII</bus_type>
  </ethernet_phy>
  <usb_phy>
    <bus_type>Integrated</bus_type>
  </usb_phy>
  <subtype>STM32L432xx</subtype>
  <clocks HSEBypass="false" HSEFrequency="0" LSEBypass="false" LSEDrive="3 High Drive (default)" LSEFrequency="0" VDD="180" />
  <ports>
    <GPIOA>
      <pin0 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin1 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin2 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin3 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin4 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin5 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin6 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin7 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin8 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin9 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin10 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin11 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin12 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin13 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin14 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin15 ID="ID1" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="Floating" Alternate="0" AnalogSwitch="Disabled" PinLock="Disabled" />
    </GPIOA>
    <GPIOB>
      <pin0 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin1 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin2 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin3 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin4 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin5 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin6 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin7 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin8 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin9 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin10 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin11 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin12 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin13 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin14 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin15 ID="ID2" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullUp" Alternate="15" AnalogSwitch="Enabled" PinLock="Enabled" />
    </GPIOB>
    <GPIOC>
      <pin0 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin1 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin2 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin3 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin4 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin5 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin6 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin7 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin8 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin9 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin10 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin11 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin12 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin13 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin14 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin15 ID="ID3" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="PullDown" Alternate="1" AnalogSwitch="Disabled" PinLock="Disabled" />
    </GPIOC>
    <GPIOD>
      <pin0 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin1 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin2 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin3 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin4 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin5 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin6 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin7 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin8 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin9 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin10 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin11 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin12 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin13 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin14 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin15 ID="ID4" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="Floating" Alternate="14" AnalogSwitch="Enabled" PinLock="Enabled" />
    </GPIOD>
    <GPIOE>
      <pin0 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin1 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin2 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin3 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin4 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin5 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin6 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin7 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin8 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin9 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin10 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin11 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin12 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin13 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin14 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin15 ID="ID5" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullUp" Alternate="2" AnalogSwitch="Disabled" PinLock="Disabled" />
    </GPIOE>
    <GPIOF>
      <pin0 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin1 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin2 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin3 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin4 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin5 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin6 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin7 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin8 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin9 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin10 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin11 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin12 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin13 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin14 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin15 ID="ID6" Mode="Input" Level="Low" Speed="Low" Type="OpenDrain" Resistor="PullDown" Alternate="13" AnalogSwitch="Enabled" PinLock="Enabled" />
    </GPIOF>
    <GPIOG>
      <pin0 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin1 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin2 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin3 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin4 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin5 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin6 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin7 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin8 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin9 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin10 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin11 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin12 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin13 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin14 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin15 ID="ID7" Mode="Output" Level="High" Speed="High" Type="PushPull" Resistor="Floating" Alternate="3" AnalogSwitch="Disabled" PinLock="Disabled" />
    </GPIOG>
    <GPIOH>
      <pin0 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin1 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin2 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin3 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin4 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin5 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin6 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin7 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin8 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin9 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin10 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin11 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin12 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin13 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin14 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
      <pin15 ID="ID8" Mode="Alternate" Level="Low" Speed="Maximum" Type="OpenDrain" Resistor="PullUp" Alternate="12" AnalogSwitch="Enabled" PinLock="Enabled" />
    </GPIOH>
    <GPIOI>
      <pin0 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin1 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin2 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin3 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin4 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin5 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin6 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin7 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin8 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin9 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin10 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin11 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin12 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin13 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin14 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
      <pin15 ID="ID9" Mode="Analog" Level="High" Speed="Minimum" Type="PushPull" Resistor="PullDown" Alternate="4" AnalogSwitch="Disabled" PinLock="Disabled" />
    </GPIOI>
  </ports>
</board>

Re: #1198 breaks compilation for all STM496 with less than 169 pins

Posted: Mon Mar 14, 2022 1:16 pm
by Giovanni
sabdulqadir wrote:Hi Giovanni/Faisal,
Issue is, these elements(GPIOI) are not defined in board.chcfg file. We can manually add this node, but wanted to know if there is a tool available to generate these chcfg files. How did you generate them in the first place?

Thanks,
AQ


Hi,

Sorry, I missed this question, there are two ways:

- Using ChibiStudio: File->new->other->chibios->chibios_configuration_wizard
- Getting a template from under /tools/ftl/xml then renaming it to .chcfg

Giovanni