D&C GLug - Home Page

[ Date Index ] [ Thread Index ] [ <= Previous by date / thread ] [ Next by date / thread => ]

Re: [LUG] WiringPi - 1 Wire?

 

I see the word pi and wiring.
Any of your people have knowledge around embedded software for a cars. In car 
computer. 

I want to feed my pi with the data as while I was modifying the car I had to take 
out the in car little box. It will need some coding I'm clear but I've been learning 
c for a while and thinking a project like this could boost my knowledge. (My 
knowledge is basic.) 

If anyone has this knowledge I would love a direct back of forth exchange. 

Also as I'm soon moving to saltash meetings do you have local to there? 



Warm regards 
James Ambrose


> On 16 Feb 2017, at 19:37, Gordon Henderson via list <list@xxxxxxxxxxxxx> wrote:
> 
>> On Thu, 16 Feb 2017, Tremayne, Steve via list wrote:
>> 
>> Gordon,
> 
> You get a higher quality reply if you email me directly rather than via the list 
> ;-)
> 
>>  I was "fiddling" with a Ras Pi Zero and a 1-wire temp sensor yesterday...
>> 
>> Does your Wiring Pi deal with 1-wire?  I got no search results from the site, so 
>> I'm presuming not?
> 
> 1-wire is handled very well by the Linux kernel and its owfs (one-wire filing 
> system), so there's no need for me to write anything for something that's already 
> there.
> 
> However, for the common ds18b20 1-wire temperature sensors, I've created a pin 
> wrapper for them to better integrate them into the wiringPi world.
> 
> You'll need to install the latest wiringPi from source though.
> 
> http://wiringpi.com/download-and-install/
> 
> then run:
> 
>  sudo raspi-config
> 
> go through the menus and enable 1-wire. Plug in the sensor - it's fixed to 
> bcm_gpio pin 4 (physical pin 7) then
> 
>  ls /sys/bus/w1/devices
> 
> If you see a 28-????? file, then the ds18b20 is present. You can cat this 
> file/w1_slave - e.g.:
> 
>  $ cat /sys/bus/w1/devices/28-0000053af458/w1_slave
>  f6 00 4b 46 7f ff 0a 10 d6 : crc=d6 YES
>  f6 00 4b 46 7f ff 0a 10 d6 t=15375
> 
> your filename will be different from mine - each device has a unique 64-bit ID and 
> mine is: 0000053af458.
> 
> In the output above, YES means a good read and t=15375 is the temperature times 
> 1000. Remember these are +/- 1ÂC devices, so round and truncate appropriately.
> 
> With the latest wiringPi:
> 
>  $  gpio -x ds18b20:100:0000053af458 aread 100
>  154
> 
> means 15.4ÂC.
> 
> In a C program:
> 
>  #include <ds18b20.h>
> 
>  int temp10 ;
>  if (ds18b20Setup (pinBase, "0000053af458") < 0)
>    .. something went wrong  exit (1) ;
>  temp10 = analogRead (pinBase) ;
> 
> returns the temperature times 10 as an integer.
> 
> Reading takes about 3/4 a second.
> 
>>  It's been a while since I've really done much "fiddling" with electronics, so 
>> I'm finding more rust on my brain than I thought - so, if 1-wire is handled by 
>> I2C / SPI, then apologies... I'll just go and RTFM...
> 
> It's handled directly. Use BCM_GPIO pin 4 and off you go.
> 
> Gordon
> -- 
> The Mailing List for the Devon & Cornwall LUG
> https://mailman.dclug.org.uk/listinfo/list
> FAQ: http://www.dcglug.org.uk/listfaq

-- 
The Mailing List for the Devon & Cornwall LUG
https://mailman.dclug.org.uk/listinfo/list
FAQ: http://www.dcglug.org.uk/listfaq