hwiringpi pascal wrapper with I2C support lazarus / 37-Linux PDAs ---------------------------------------------------------------------- pascalbythree · 2017-09-10 18:00 Hey can somebody send me the hwiringpi pascal wrapper with i2c functions/procedures in it? to: woutervanwegen@mijnplinq.nl I did come accross the version before. Then i installed my I2C debug station as seen in the attached photo. And started coding again then i could not find the wrapper back with i2c support in it. Thank you very Much, Greets Wouter van Wegen ---------------------------------------------------------------------- pascalbythree · 2017-09-10 18:26 Mzz... Found it back already! Check this: unit h2wiringpiI2c; (* Pascal wrapper unit for Gordon Henderson wiringPi library. The source can  * be found at https://http://wiringpi.com  *  * hwiringpi: origanal Wrapper and  * pascal sample by Alex Schaller.  *  * h2wiringpiI2C: Version 0.1 By Allen Roton  * wiringPi Version 2.23  * $linklib  *  * wiringPi:  *   Arduino compatable (ish) Wiring library for the Raspberry Pi  *   Copyright (c) 2012 Gordon Henderson  ********************************************************************* **  * This file is part of wiringPi:  *   https://projects.drogon.net/raspberry-pi/wiringpi/  *  *    wiringPi is free software: you can redistribute it and/or modify  *    it under the terms of the GNU General Public License as published by  *    the Free Software Foundation, either version 3 of the License, or  *    (at your option) any later version.  *  *    wiringPi is distributed in the hope that it will be useful,  *    but WITHOUT ANY WARRANTY; without even the implied warranty of  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  *    GNU General Public License for more details.  *  *    You should have received a copy of the GNU General Public License  *    along with wiringPi.  If not, see .  ********************************************************************* **  *) //{$mode objfpc}{$H+} {$linklib c} {$linklib libwiringPi} interface     {     } //extern int wiringPiI2CRead           (int fd) ; Function wiringPiI2CRead(fd : longint ):longint;cdecl;external; //extern int wiringPiI2CReadReg8       (int fd, int reg) ; Function wiringPiI2CReadReg8(fd : longint;reg : longint ):longint;cdecl;external; //extern int wiringPiI2CReadReg16      (int fd, int reg) ; Function wiringPiI2CReadReg16(fd : longint;reg : longint ):longint;cdecl;external; //extern int wiringPiI2CWrite          (int fd, int data) ; Function wiringPiI2CWrite(fd : longint;data : longint ):longint;cdecl;external; //extern int wiringPiI2CWriteReg8      (int fd, int reg, int data) ; Function wiringPiI2CWriteReg8(fd : longint;reg : longint ;data : longint ):longint;cdecl;external; //extern int wiringPiI2CWriteReg16     (int fd, int reg, int data) ; Function wiringPiI2CWriteReg16(fd : longint;reg : longint ;data : longint ):longint;cdecl;external; //extern int wiringPiI2CSetupInterface (const char *device, int devId) ; // ??? what is it ? //extern int wiringPiI2CSetup          (const int devId) ; Function wiringPiI2CSetup(devId : longint ):longint;cdecl;external; implementation end. ---------------------------------------------------------------------- pascalbythree · 2017-09-10 18:36 Now i am going to try to compile the damm thing. ---------------------------------------------------------------------- ErekSin · 2018-05-05 22:08 Hi I've been trying to get WiringPi working in Lazarus. I'm using the same wrapper unit as pascalbythree, but as soon as I try to compile, I get the following linking error.  Any ideas much appreciated... Thanks /usr/bin/ld.bfd: warning: link.res contains output sections; did you forget -T? /usr/bin/ld.bfd: /usr/lib/lazarus/1.2.4/components/lazutils/lib/arm- linux/fileutil.o: bad reloc symbol index (0x5a0000 >= 0x2da) for offset 0x3c in section `.rodata.n_VMT_FILEUTIL_TFILEITERATOR' /usr/lib/lazarus/1.2.4/components/lazutils/lib/arm-linux/fileutil.o: error adding symbols: Bad value test_envirophat.lpr(22) Error: Error while linking test_envirophat.lpr(22) Fatal: There were 1 errors compiling module, stopping