[Ovmsdev] max7317 input read
Michael Balzer
dexter at expeedo.de
Wed Jul 10 18:08:47 HKT 2019
I'll replicate your test with my module this evening. I did the test on EGPIO_8 routed to the DA26 connector, that worked correctly.
Regards,
Michael
Am 10.07.19 um 11:15 schrieb - -:
> i use the internal Expansion. And there is 3.3v when powered over USB.
> pin 1 3.3v -> pin 18 EGPIO_5
> pin 28 GND -> pin 18 EGPIO_5
>
>> Michael Balzer <dexter at expeedo.de> hat am 10. Juli 2019 um 11:03 geschrieben:
>>
>>
>> * Where do you contact EGPIO5?
>> * Where do you get 3.3V? External +3.3V is only present if you're powering from 12V
>>
>>
>> Am 10.07.19 um 10:50 schrieb - -:
>>> I have the egpio5 (port 6) pin on GND.
>>> then in the shell: egpio input 6.
>>>
>>> then the gpio5 (port 6) pin to 3.3V.
>>> then in the shell: egpio input 6.
>>>
>>> both return 0
>>>
>>> Regards Thomas
>>>> Michael Balzer <dexter at expeedo.de> hat am 10. Juli 2019 um 10:40 geschrieben:
>>>>
>>>>
>>>> Then you're now doing something wrong. Please describe your test setup.
>>>>
>>>> Regards,
>>>> Michael
>>>>
>>>>
>>>> Am 10.07.19 um 10:35 schrieb - -:
>>>>> Hi,
>>>>>
>>>>>
>>>>> i have test it, but it seems not to work.
>>>>> it return always 0 when i put the egpio to GND or 3.3v
>>>>>> Michael Balzer dexter at expeedo.de hat am 9. Juli 2019 um 22:58 geschrieben:
>>>>>>
>>>>>> I did some tests myself, it turned out there was more to do here.
>>>>>>
>>>>>> First, the max7317 really needs 16 bits for every command. Second, the reads were done on the output level registers, inputs are mapped to bit fields in 0x0e & 0x0f. Third, the max7317 needs a deselect between the tx and the rx. No, really, I've tried even half duplex mode, the deselect really is necessary.
>>>>>>
>>>>>> Fix is pushed. I've also added an "egpio input" shell command.
>>>>>>
>>>>>> Regards,
>>>>>> Michael
>>>>>>
>>>>>>
>>>>>> Am 09.07.19 um 20:00 schrieb Michael Balzer:
>>>>>>> Thomas,
>>>>>>>
>>>>>>> there may be a bug in the max7317 component:
>>>>>>>> uint8_t max7317::Input(uint8_t port)
>>>>>>>> …
>>>>>>>> uint8_t* p = m_spibus->spi_cmd(m_spi, buf, 1, 1, port + 0x80);
>>>>>>> According to the max7317 specsheet the read operation needs a second (dummy) byte. So this should be…
>>>>>>>> uint8_t* p = m_spibus->spi_cmd(m_spi, buf, 1, 2, port + 0x80, 0);
>>>>>>> Please try & report.
>>>>>>>
>>>>>>> Regards,
>>>>>>> Michael
>>>>>>>
>>>>>>>
>>>>>>> Am 09.07.19 um 13:10 schrieb - -:
>>>>>>>> Hello,
>>>>>>>>
>>>>>>>>
>>>>>>>> How can I read inputs from max7317.
>>>>>>>> when I try to log ESP_LOGD(TAG,"EGPIO5 input: %d", MyPeripherals->m_max7317->Input(MAX7317_EGPIO_5));
>>>>>>>>
>>>>>>>>
>>>>>>>> i get allways 0 when i put the egpio pin to GND or 3.3v
>>>>>>>> do i somthing wrong or does it not work.
>>>>>>>>
>>>>>>>>
>>>>>>>> Regards Thomas
>>>>
--
Michael Balzer * Helkenberger Weg 9 * D-58256 Ennepetal
Fon 02333 / 833 5735 * Handy 0176 / 206 989 26
More information about the OvmsDev
mailing list