reef-pi :: An opensource reef tank controller based on Raspberry Pi.

MaccaPopEye

Well-Known Member
View Badges
Joined
Jan 5, 2016
Messages
697
Reaction score
1,224
Rating - 0%
0   0   0
can you run these commands and share the output
available kernel modules
Code:
lsmod
Check if sesnor is detected
Code:
ls /sys/bus/w1/devices/
check kernel logs
Code:
dmesg

Thanks Ranjib, is this what you meant (It's pretty long)?

lsmod
pi@ReefPi:~ $ lsmod
Module Size Used by
bnep 12051 2
hci_uart 19956 1
btbcm 7916 1 hci_uart
bluetooth 365511 22 hci_uart,bnep,btbcm
brcmfmac 222874 0
spidev 7373 0
brcmutil 9092 1 brcmfmac
cfg80211 543027 1 brcmfmac
rfkill 20851 4 bluetooth,cfg80211
snd_bcm2835 24427 1
snd_pcm 98501 1 snd_bcm2835
snd_timer 23904 1 snd_pcm
snd 70032 5 snd_timer,snd_bcm2835,snd_pcm
spi_bcm2835 7596 0
i2c_bcm2835 7167 0
bcm2835_gpiomem 3940 0
uio_pdrv_genirq 3923 0
fixed 3285 0
uio 10204 1 uio_pdrv_genirq
i2c_dev 6913 0
fuse 99603 3
ipv6 406751 52

ls /sys/bus/w1/devices/
pi@ReefPi:~ $ ls /sys/bus/w1/devices/
ls: cannot access /sys/bus/w1/devices/: No such file or directory

dmesg
pi@ReefPi:~ $ dmesg
[ 0.000000] Booting Linux on physical CPU 0x0
[ 0.000000] Linux version 4.9.28-v7+ (dc4@dc4-XPS13-9333) (gcc version 4.9.3 (crosstool-NG crosstool-ng-1.22.0-88-g8460611) ) #998 SMP Mon May 15 16:55:39 BST 2017
[ 0.000000] CPU: ARMv7 Processor [410fd034] revision 4 (ARMv7), cr=10c5383d
[ 0.000000] CPU: div instructions available: patching division code
[ 0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[ 0.000000] OF: fdt:Machine model: Raspberry Pi 3 Model B Rev 1.2
[ 0.000000] cma: Reserved 8 MiB at 0x3a800000
[ 0.000000] Memory policy: Data cache writealloc
[ 0.000000] On node 0 totalpages: 241664
[ 0.000000] free_area_init_node: node 0, pgdat 80c6edc0, node_mem_map b9faa000
[ 0.000000] Normal zone: 2124 pages used for memmap
[ 0.000000] Normal zone: 0 pages reserved
[ 0.000000] Normal zone: 241664 pages, LIFO batch:31
[ 0.000000] percpu: Embedded 14 pages/cpu @b9f64000 s25600 r8192 d23552 u57344
[ 0.000000] pcpu-alloc: s25600 r8192 d23552 u57344 alloc=14*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 239540
[ 0.000000] Kernel command line: 8250.nr_uarts=0 bcm2708_fb.fbwidth=656 bcm2708_fb.fbheight=416 bcm2708_fb.fbswap=1 vc_mem.mem_base=0x3dc00000 vc_mem.mem_size=0x3f000000 dwc_otg.lpm_enable=0 console=ttyS0,115200 console=tty1 root=PARTUUID=1db4d78f-02 rootfstype=ext4 elevator=deadline fsck.repair=yes rootwait quiet splash plymouth.ignore-serial-consoles
[ 0.000000] PID hash table entries: 4096 (order: 2, 16384 bytes)
[ 0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes)
[ 0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes)
[ 0.000000] Memory: 936300K/966656K available (7168K kernel code, 483K rwdata, 2012K rodata, 1024K init, 778K bss, 22164K reserved, 8192K cma-reserved)
[ 0.000000] Virtual kernel memory layout:
vector : 0xffff0000 - 0xffff1000 ( 4 kB)
fixmap : 0xffc00000 - 0xfff00000 (3072 kB)
vmalloc : 0xbb800000 - 0xff800000 (1088 MB)
lowmem : 0x80000000 - 0xbb000000 ( 944 MB)
modules : 0x7f000000 - 0x80000000 ( 16 MB)
.text : 0x80008000 - 0x80800000 (8160 kB)
.init : 0x80b00000 - 0x80c00000 (1024 kB)
.data : 0x80c00000 - 0x80c78f94 ( 484 kB)
.bss : 0x80c7a000 - 0x80d3ca64 ( 779 kB)
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] Hierarchical RCU implementation.
[ 0.000000] Build-time adjustment of leaf fanout to 32.
[ 0.000000] NR_IRQS:16 nr_irqs:16 16
[ 0.000000] arm_arch_timer: Architected cp15 timer(s) running at 19.20MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x46d987e47, max_idle_ns: 440795202767 ns
[ 0.000007] sched_clock: 56 bits at 19MHz, resolution 52ns, wraps every 4398046511078ns
[ 0.000019] Switching to timer-based delay loop, resolution 52ns
[ 0.000315] Console: colour dummy device 80x30
[ 0.000335] console [tty1] enabled
[ 0.000359] Calibrating delay loop (skipped), value calculated using timer frequency.. 38.40 BogoMIPS (lpj=192000)
[ 0.000377] pid_max: default: 32768 minimum: 301
[ 0.000715] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.000724] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes)
[ 0.001711] Disabling cpuset control group subsystem
[ 0.001866] CPU: Testing write buffer coherency: ok
[ 0.001908] ftrace: allocating 22386 entries in 66 pages
[ 0.054625] CPU0: update cpu_capacity 1024
[ 0.054644] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
[ 0.054717] Setting up static identity map for 0x100000 - 0x100034
[ 0.056915] CPU1: update cpu_capacity 1024
[ 0.056922] CPU1: thread -1, cpu 1, socket 0, mpidr 80000001
[ 0.057640] CPU2: update cpu_capacity 1024
[ 0.057647] CPU2: thread -1, cpu 2, socket 0, mpidr 80000002
[ 0.058314] CPU3: update cpu_capacity 1024
[ 0.058321] CPU3: thread -1, cpu 3, socket 0, mpidr 80000003
[ 0.058404] Brought up 4 CPUs
[ 0.058414] SMP: Total of 4 processors activated (153.60 BogoMIPS).
[ 0.058419] CPU: All CPU(s) started in HYP mode.
[ 0.058423] CPU: Virtualization extensions available.
[ 0.059221] devtmpfs: initialized
[ 0.070473] VFP support v0.3: implementor 41 architecture 3 part 40 variant 3 rev 4
[ 0.070752] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
[ 0.070769] futex hash table entries: 1024 (order: 4, 65536 bytes)
[ 0.071302] pinctrl core: initialized pinctrl subsystem
[ 0.072198] NET: Registered protocol family 16
[ 0.074554] DMA: preallocated 1024 KiB pool for atomic coherent allocations
[ 0.083430] hw-breakpoint: found 5 (+1 reserved) breakpoint and 4 watchpoint registers.
[ 0.083436] hw-breakpoint: maximum watchpoint size is 8 bytes.
[ 0.083582] Serial: AMBA PL011 UART driver
[ 0.085441] bcm2835-mbox 3f00b880.mailbox: mailbox enabled
[ 0.085955] uart-pl011 3f201000.serial: could not find pctldev for node /soc/gpio@7e200000/uart0_pins, deferring probe
[ 0.155205] bcm2835-dma 3f007000.dma: DMA legacy API manager at bb80f000, dmachans=0x1
[ 0.157027] SCSI subsystem initialized
[ 0.157180] usbcore: registered new interface driver usbfs
[ 0.157256] usbcore: registered new interface driver hub
[ 0.157344] usbcore: registered new device driver usb
[ 0.164162] raspberrypi-firmware soc:firmware: Attached to firmware from 2017-05-15 16:57
[ 0.165652] clocksource: Switched to clocksource arch_sys_counter
[ 0.212493] VFS: Disk quotas dquot_6.6.0
[ 0.212570] VFS: Dquot-cache hash table entries: 1024 (order 0, 4096 bytes)
[ 0.212770] FS-Cache: Loaded
[ 0.213024] CacheFiles: Loaded
[ 0.225097] NET: Registered protocol family 2
[ 0.226021] TCP established hash table entries: 8192 (order: 3, 32768 bytes)
[ 0.226144] TCP bind hash table entries: 8192 (order: 4, 65536 bytes)
[ 0.226329] TCP: Hash tables configured (established 8192 bind 8192)
[ 0.226417] UDP hash table entries: 512 (order: 2, 16384 bytes)
[ 0.226459] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes)
[ 0.226667] NET: Registered protocol family 1
[ 0.227073] RPC: Registered named UNIX socket transport module.
[ 0.227078] RPC: Registered udp transport module.
[ 0.227082] RPC: Registered tcp transport module.
[ 0.227087] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.228137] hw perfevents: enabled with armv7_cortex_a7 PMU driver, 7 counters available
[ 0.230400] workingset: timestamp_bits=14 max_order=18 bucket_order=4
[ 0.246426] FS-Cache: Netfs 'nfs' registered for caching
[ 0.247396] NFS: Registering the id_resolver key type
[ 0.247421] Key type id_resolver registered
[ 0.247426] Key type id_legacy registered
[ 0.249847] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 251)
[ 0.249951] io scheduler noop registered
[ 0.249957] io scheduler deadline registered (default)
[ 0.250218] io scheduler cfq registered
[ 0.255900] BCM2708FB: allocated DMA memory fa910000
[ 0.255925] BCM2708FB: allocated DMA channel 0 @ bb80f000
[ 0.267222] Console: switching to colour frame buffer device 82x26
[ 0.273388] bcm2835-rng 3f104000.rng: hwrng registered
[ 0.273500] vc-cma: Videocore CMA driver
[ 0.273506] vc-cma: vc_cma_base = 0x00000000
[ 0.273511] vc-cma: vc_cma_size = 0x00000000 (0 MiB)
[ 0.273517] vc-cma: vc_cma_initial = 0x00000000 (0 MiB)
[ 0.273726] vc-mem: phys_addr:0x00000000 mem_base=0x3dc00000 mem_size:0x3f000000(1008 MiB)
[ 0.289038] brd: module loaded
[ 0.297804] loop: module loaded
[ 0.297816] Loading iSCSI transport class v2.0-870.
[ 0.298338] usbcore: registered new interface driver smsc95xx
[ 0.298352] dwc_otg: version 3.00a 10-AUG-2012 (platform bus)
[ 0.524406] Core Release: 2.80a
[ 0.524414] Setting default values for core params
[ 0.524444] Finished setting default values for core params
[ 0.724825] Using Buffer DMA mode
[ 0.724831] Periodic Transfer Interrupt Enhancement - disabled
[ 0.724835] Multiprocessor Interrupt Enhancement - disabled
[ 0.724841] OTG VER PARAM: 0, OTG VER FLAG: 0
[ 0.724851] Dedicated Tx FIFOs mode
[ 0.725187] WARN::dwc_otg_hcd_init:1034: FIQ DMA bounce buffers: virt = 0xba904000 dma = 0xfa904000 len=9024
[ 0.725212] FIQ FSM acceleration enabled for :
Non-periodic Split Transactions
Periodic Split Transactions
High-Speed Isochronous Endpoints
Interrupt/Control Split Transaction hack enabled
[ 0.725218] dwc_otg: Microframe scheduler enabled
[ 0.725259] WARN::hcd_init_fiq:459: FIQ on core 1 at 0x8058e63c
[ 0.725269] WARN::hcd_init_fiq:460: FIQ ASM at 0x8058e9ac length 36
[ 0.725279] WARN::hcd_init_fiq:486: MPHI regs_base at 0xbb87a000
[ 0.725335] dwc_otg 3f980000.usb: DWC OTG Controller
[ 0.725369] dwc_otg 3f980000.usb: new USB bus registered, assigned bus number 1
[ 0.725399] dwc_otg 3f980000.usb: irq 62, io mem 0x00000000
[ 0.725445] Init: Port Power? op_state=1
[ 0.725450] Init: Power Port (0)
[ 0.725673] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002
[ 0.725683] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 0.725691] usb usb1: Product: DWC OTG Controller
[ 0.725699] usb usb1: Manufacturer: Linux 4.9.28-v7+ dwc_otg_hcd
[ 0.725707] usb usb1: SerialNumber: 3f980000.usb
[ 0.726527] hub 1-0:1.0: USB hub found
[ 0.726573] hub 1-0:1.0: 1 port detected
[ 0.727279] dwc_otg: FIQ enabled
[ 0.727283] dwc_otg: NAK holdoff enabled
[ 0.727288] dwc_otg: FIQ split-transaction FSM enabled
[ 0.727302] Module dwc_common_port init
[ 0.727552] usbcore: registered new interface driver usb-storage
[ 0.727774] mousedev: PS/2 mouse device common for all mice
[ 0.728715] bcm2835-wdt 3f100000.watchdog: Broadcom BCM2835 watchdog timer
[ 0.728985] bcm2835-cpufreq: min=600000 max=1200000
[ 0.729368] sdhci: Secure Digital Host Controller Interface driver
[ 0.729372] sdhci: Copyright(c) Pierre Ossman
[ 0.729640] sdhost-bcm2835 3f202000.sdhost: could not get clk, deferring probe
[ 0.731811] mmc-bcm2835 3f300000.mmc: could not get clk, deferring probe
[ 0.731908] sdhci-pltfm: SDHCI platform and OF driver helper
[ 0.739201] ledtrig-cpu: registered to indicate activity on CPUs
[ 0.739387] hidraw: raw HID events driver (C) Jiri Kosina
[ 0.739564] usbcore: registered new interface driver usbhid
[ 0.739569] usbhid: USB HID core driver
[ 0.740318] vchiq: vchiq_init_state: slot_zero = 0xba980000, is_master = 0
[ 0.747021] Initializing XFRM netlink socket
[ 0.747043] NET: Registered protocol family 17
[ 0.747154] Key type dns_resolver registered
[ 0.747646] Registering SWP/SWPB emulation handler
[ 0.748333] registered taskstats version 1
[ 0.748660] vc-sm: Videocore shared memory driver
[ 0.748669] [vc_sm_connected_init]: start
[ 0.755271] [vc_sm_connected_init]: end - returning 0
[ 0.761243] 3f201000.serial: ttyAMA0 at MMIO 0x3f201000 (irq = 87, base_baud = 0) is a PL011 rev2
[ 0.762755] sdhost: log_buf @ ba907000 (fa907000)
[ 0.835684] mmc0: sdhost-bcm2835 loaded - DMA enabled (>1)
[ 0.837885] mmc-bcm2835 3f300000.mmc: mmc_debug:0 mmc_debug2:0
[ 0.837893] mmc-bcm2835 3f300000.mmc: DMA channel allocated
[ 0.895797] of_cfs_init
[ 0.895897] of_cfs_init: OK
[ 0.896380] Waiting for root device PARTUUID=1db4d78f-02...
[ 0.907193] mmc0: host does not support reading read-only switch, assuming write-enable
[ 0.909180] mmc0: new high speed SDHC card at address 0007
[ 0.909851] mmcblk0: mmc0:0007 2&DRP 29.9 GiB
[ 0.911577] mmcblk0: p1 p2
[ 0.915635] mmc1: queuing unknown CIS tuple 0x80 (2 bytes)
[ 0.917212] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 0.918763] mmc1: queuing unknown CIS tuple 0x80 (3 bytes)
[ 0.921541] mmc1: queuing unknown CIS tuple 0x80 (7 bytes)
[ 0.945755] Indeed it is in host mode hprt0 = 00021501
[ 1.012979] random: fast init done
[ 1.023282] EXT4-fs (mmcblk0p2): INFO: recovery required on readonly filesystem
[ 1.023289] EXT4-fs (mmcblk0p2): write access will be enabled during recovery
[ 1.072343] mmc1: new high speed SDIO card at address 0001
[ 1.145702] usb 1-1: new high-speed USB device number 2 using dwc_otg
[ 1.145832] Indeed it is in host mode hprt0 = 00001101
[ 1.375961] usb 1-1: New USB device found, idVendor=0424, idProduct=9514
[ 1.375972] usb 1-1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 1.376777] hub 1-1:1.0: USB hub found
[ 1.376866] hub 1-1:1.0: 5 ports detected
[ 1.695683] usb 1-1.1: new high-speed USB device number 3 using dwc_otg
[ 1.825928] usb 1-1.1: New USB device found, idVendor=0424, idProduct=ec00
[ 1.825938] usb 1-1.1: New USB device strings: Mfr=0, Product=0, SerialNumber=0
[ 1.828683] smsc95xx v1.0.5
[ 1.919255] smsc95xx 1-1.1:1.0 eth0: register 'smsc95xx' at usb-3f980000.usb-1.1, smsc95xx USB 2.0 Ethernet, b8:27:eb:80:e1:92
[ 2.832510] EXT4-fs (mmcblk0p2): orphan cleanup on readonly fs
[ 2.832924] EXT4-fs (mmcblk0p2): 1 orphan inode deleted
[ 2.832931] EXT4-fs (mmcblk0p2): recovery complete
[ 3.394349] EXT4-fs (mmcblk0p2): mounted filesystem with ordered data mode. Opts: (null)
[ 3.394401] VFS: Mounted root (ext4 filesystem) readonly on device 179:2.
[ 3.396170] devtmpfs: mounted
[ 3.397939] Freeing unused kernel memory: 1024K (80b00000 - 80c00000)
[ 3.678048] systemd[1]: systemd 215 running in system mode. (+PAM +AUDIT +SELINUX +IMA +SYSVINIT +LIBCRYPTSETUP +GCRYPT +ACL +XZ -SECCOMP -APPARMOR)
[ 3.678396] systemd[1]: Detected architecture 'arm'.
[ 3.786443] NET: Registered protocol family 10
[ 3.787999] systemd[1]: Inserted module 'ipv6'
[ 3.790195] systemd[1]: Set hostname to <ReefPi>.
[ 3.790343] systemd[1]: Initializing machine ID from random generator.
[ 3.790568] systemd[1]: Installed transient /etc/machine-id file.
[ 4.166073] systemd[1]: Cannot add dependency job for unit regenerate_ssh_host_keys.service, ignoring: Unit regenerate_ssh_host_keys.service failed to load: No such file or directory.
[ 4.169428] systemd[1]: Starting Forward Password Requests to Wall Directory Watch.
[ 4.169771] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
[ 4.169851] systemd[1]: Starting Remote File Systems (Pre).
[ 4.357091] fuse init (API version 7.26)
[ 4.386185] i2c /dev entries driver
[ 4.633001] systemd-udevd[144]: starting version 215
[ 5.005851] gpiomem-bcm2835 3f200000.gpiomem: Initialised: Registers at 0x3f200000
[ 5.306764] EXT4-fs (mmcblk0p2): re-mounted. Opts: (null)
[ 5.339150] usbcore: registered new interface driver brcmfmac
[ 5.512968] brcmfmac: Firmware version = wl0: May 27 2016 00:13:38 version 7.45.41.26 (r640327) FWID 01-df77e4a7
[ 6.030082] systemd-journald[138]: Received request to flush runtime journal from PID 1
[ 6.963675] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 6.963691] brcmfmac: power management disabled
[ 7.343438] uart-pl011 3f201000.serial: no DMA platform data
[ 8.197889] smsc95xx 1-1.1:1.0 eth0: hardware isn't capable of remote wakeup
[ 8.198180] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[ 8.463832] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[ 8.965535] Adding 102396k swap on /var/swap. Priority:-1 extents:6 across:2559996k SSFS
[ 11.793486] Bluetooth: Core ver 2.22
[ 11.793557] NET: Registered protocol family 31
[ 11.793563] Bluetooth: HCI device and connection manager initialized
[ 11.793580] Bluetooth: HCI socket layer initialized
[ 11.793593] Bluetooth: L2CAP socket layer initialized
[ 11.793624] Bluetooth: SCO socket layer initialized
[ 11.801061] Bluetooth: HCI UART driver ver 2.3
[ 11.801073] Bluetooth: HCI UART protocol H4 registered
[ 11.801079] Bluetooth: HCI UART protocol Three-wire (H5) registered
[ 11.801826] Bluetooth: HCI UART protocol Broadcom registered
[ 12.001526] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[ 12.001533] Bluetooth: BNEP filters: protocol multicast
[ 12.001546] Bluetooth: BNEP socket layer initialized
[ 63.279320] random: crng init done
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
one wire kernel module is not loaded. run
Code:
sudo raspi-config
and go to interfacing options -> enable one wire or w1 , save and reboot
 

MaccaPopEye

Well-Known Member
View Badges
Joined
Jan 5, 2016
Messages
697
Reaction score
1,224
Rating - 0%
0   0   0
Touch the probe

Trying to warm the probe up by holding it doesn't change the temp at all. I tried dropping it into a glass of ice & water however it still stayed at 185 until it just didn't display the temp anymore. When it stopped showing the temp the log said:
ERROR: Failed to read temperature. Error: First line of device file does not ends with YES

After I took the probe out to warm it up again it just went straight to 185 when it was warm enough, no in between.

I also tried another probe just in case that was the issue as well
 

Gareth elliott

Read, Tinker, Fail, Learn
View Badges
Joined
May 7, 2017
Messages
5,470
Reaction score
6,903
Location
NJ
Rating - 0%
0   0   0
Check your wiring, make sure there is no stray current in your build. If you have a voltmeter, check both the build and tank water. These probes are very susceptible to noise. Whats happening is the pi is reading additional binary code. I want to say your tank might be on the warm side and might be 85. And is reading 00110001 leading 00111000 0110101 by error.

But cant be certain.
 
Last edited:
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Trying to warm the probe up by holding it doesn't change the temp at all. I tried dropping it into a glass of ice & water however it still stayed at 185 until it just didn't display the temp anymore. When it stopped showing the temp the log said:
ERROR: Failed to read temperature. Error: First line of device file does not ends with YES

After I took the probe out to warm it up again it just went straight to 185 when it was warm enough, no in between.

I also tried another probe just in case that was the issue as well
This happened to me couple of times. Is the wire probe too long?
I would start by renicing the w1_master process. and see if that fix things. (`ps aux | grep w1` will give you the pid of the w1 master process, then you can renice it using `sudo renice -n -20 -p <158> ` ), and see if that solves the issue. your dmesg log should have some thing like "CRC check failure... " , check that and see whats going wrong
 

Fish Fan

Master of Disaster
View Badges
Joined
Dec 8, 2017
Messages
13,488
Reaction score
35,129
Location
461 Ocean Boulevard
Rating - 100%
6   0   0
My Imagitarium pico is 3.7G :) . I started it with ABI tuna blue bulb (25$ in amazon i think), Its more than enough to keep most lsp/softies and entry level sps (montis, green pociliopora etc). You have to be care ful with light acclamation as their is no way to dim them. I used put thin paper sheet, in multiples. I still lost couple of ricordias due to bleaching. I went with kessil letter, as reef-pi capability was extended. I love kessil :)

Now, after couple of year, I am at a state that I can actually dim that old bulb with reef-pi :) . So, its been almost a full circle. i would personally love to light that tank (which is now lit by an A80) with a cheap yet dimmable and high power bulb, as it will make the orginal maker faire goal of having a reef tank under really low budget, and build it via frugal means.

I dont know how much hassle involve in betta tanks. If you want to control the lights in timers, monitor ph and temperature, then it will be useful.
Thank you again for your information! Do you have a build journal going for your Imagitarium 3.7? I saw that size as well, and would be interested to see what you've done with it as a pico reef. I ordered the 6.5 gallon version for my wife's betta fish, but I am very tempted to get either the 3.7 or another 6.5 and do a pico reef.

Thank you!

-FF
 

Fish Fan

Master of Disaster
View Badges
Joined
Dec 8, 2017
Messages
13,488
Reaction score
35,129
Location
461 Ocean Boulevard
Rating - 100%
6   0   0
Also, I'm sorry if this is a noob question, but could someone help me understand just how reef-pi is able to control a pump like the Vortech MP10's? Specifically, how is reef-pi able to replicate all the different preset flow patterns that the Vortech controller provides? Or, does reef-pi simply turn the Vortech pumps on and off, but the Vortech controller is still used to control the flow pattern? Similarly, with DC return pumps, where the flow rate is controllable, can reef-pi itself control that flow rate, or do you still use the native pump controller in addition to reef-pi? I'm sorry again if these are really silly question, or if I'm not explaining myself well; I'm probably overcomplicating things in my head ;-)

Thank you for your help!

-FF
 

MaccaPopEye

Well-Known Member
View Badges
Joined
Jan 5, 2016
Messages
697
Reaction score
1,224
Rating - 0%
0   0   0
Check your wiring, make sure there is no stray current in your build. If you have a voltmeter, check both the build and tank water. These probes are very susceptible to noise. Whats happening is the pi is reading additional binary code. I want to say your tank might be on the warm side and might be 85. And is reading 00110001 leading 00111000 0110101 by error.

But cant be certain.

Well my tank is actually close to 85 (it runs at ~83F) but thats not the issue because the probe isn't actually in my tank yet it's sitting next to me and should be reading around 80F.

How do I check for stray current in my build with a multimeter? What can cause noise? The probe input is right next to the DC power input for the build could that be an issue?

This happened to me couple of times. Is the wire probe too long?
I would start by renicing the w1_master process. and see if that fix things. (`ps aux | grep w1` will give you the pid of the w1 master process, then you can renice it using `sudo renice -n -20 -p <158> ` ), and see if that solves the issue. your dmesg log should have some thing like "CRC check failure... " , check that and see whats going wrong

The wire is 2m long, I can maybe shorten it by 50cm if I have to but it will need to reach a fair distance to the tank.

I'll renice the w1 now and report back.

This morning the probe has also had 2x 1 minute long dips from 185 to 180.5 and then 10min later had 2x 1 minute long dips to 180.16 before going straight back to a constant 185.
 

MaccaPopEye

Well-Known Member
View Badges
Joined
Jan 5, 2016
Messages
697
Reaction score
1,224
Rating - 0%
0   0   0
So this is what comes up when I try the inputs you suggested:

pi@ReefPi:~ $ ps aux | grep w1
root 196 0.1 0.0 0 0 ? S 11:13 0:07 [w1_bus_master1]
pi 1914 0.0 0.2 4280 1912 pts/0 S+ 12:41 0:00 grep --color=auto w1
pi@ReefPi:~ $ sudo renice -n -20 -p <158>
-bash: syntax error near unexpected token `158'

After entering that dmesg says "Read failed CRC check"
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
So this is what comes up when I try the inputs you suggested:

pi@ReefPi:~ $ ps aux | grep w1
root 196 0.1 0.0 0 0 ? S 11:13 0:07 [w1_bus_master1]
pi 1914 0.0 0.2 4280 1912 pts/0 S+ 12:41 0:00 grep --color=auto w1
pi@ReefPi:~ $ sudo renice -n -20 -p <158>
-bash: syntax error near unexpected token `158'

After entering that dmesg says "Read failed CRC check"
renice takes a pid. 158 was an example, for your case it will be 196, the pid of w1 master process. , so your renice command will be
Code:
sudo renice -n 20 -p 196
This is a very common issue. Particularly with longer sensor wire, tinker with the resistor value a bit. I am reading about it, if I do find a full proof solution I'll let you know. Meanwhile, go through these:
https://www.raspberrypi.org/forums/viewtopic.php?f=44&t=114865
https://www.mictronics.de/2017/01/ds1820-on-raspberry-pi-read-failed-crc-check/
https://www.raspberrypi.org/forums/viewtopic.php?f=37&t=108557

Let us know if any of the first post's mentioned remedies worked for you. I get these errors when I do the initial installs, but none of them has been persistent, and once the sensor starts working, it tend to go away
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Thank you again for your information! Do you have a build journal going for your Imagitarium 3.7? I saw that size as well, and would be interested to see what you've done with it as a pico reef. I ordered the 6.5 gallon version for my wife's betta fish, but I am very tempted to get either the 3.7 or another 6.5 and do a pico reef.

Thank you!

-FF
I have a common build thread of all my tanks (1 nano, two pico) here in r2r: https://www.reef2reef.com/threads/the-story-of-grace-bozeman-and-healdsburg.317148/

Nano reef was my first reef forum, and I have individual build threads of each of my tanks there. I find folks there lot more insightful about picos/nanos., hence I tend to use NR for any urgent pico/nano related questions.

Here is the thread for my imagitarium 3.7G : https://www.nano-reef.com/forums/topic/380272-bozeman/
 
OP
OP
Ranjib

Ranjib

7500 Club Member
View Badges
Joined
Apr 16, 2016
Messages
9,876
Reaction score
16,682
Location
Pleasant Hill, Concord
Rating - 0%
0   0   0
Also, I'm sorry if this is a noob question, but could someone help me understand just how reef-pi is able to control a pump like the Vortech MP10's? Specifically, how is reef-pi able to replicate all the different preset flow patterns that the Vortech controller provides? Or, does reef-pi simply turn the Vortech pumps on and off, but the Vortech controller is still used to control the flow pattern? Similarly, with DC return pumps, where the flow rate is controllable, can reef-pi itself control that flow rate, or do you still use the native pump controller in addition to reef-pi? I'm sorry again if these are really silly question, or if I'm not explaining myself well; I'm probably overcomplicating things in my head ;-)

Thank you for your help!

-FF
reef-pi as of now does not have any wavemaker module (we have a work in progress UI only, no actual support). This is one of the main features we want to work on for 2.0 release. I dont know we'll copy cat vortech or not, but my initial thought process is to support couple of common wave maker patterns with koralia dc power heads, or something that does not ship with its own controller, cheaper to source, but dependable. Jebao pumps are an option as well.
I think mp10 does not allow you to control the power heads straight, you have to use reef link or something like that, the main controller (like reef-pi or apex) has to connect to the reef-link to control mp10. It still uses the mp10's controller at the end. I have never tried this, so I am guessing from the forum posts
 

Mandelstam

Well-Known Member
View Badges
Joined
Oct 29, 2017
Messages
688
Reaction score
1,066
Location
Malmö, Sweden
Rating - 0%
0   0   0
Another thing to the wishlist (again I'm sorry if this has already been discussed):

In the ULM thread I came across this post about redundancy and backup systems surrounding heaters and I found it very interesting. And it would be very cool if Reef-Pi could have ways to set up different ways of redundancy and backup systems surrounding this very vulnerable part of our system. In the post below sbidny talks about two different ways of dealing with it, either in a load balancing way or an alternative way. Some may prefer one before the other. If Reef-Pi were able to control multiple heaters it would be cool with an option to choose between load balancing or alternating solution. A way to detect faulty heaters would of course be super valuable also.

https://www.reef2reef.com/threads/t...rstv-investigates.341149/page-20#post-4333504
"Ideally, a backup should be running just as often as your primary, either in a load balancing (both heaters running) or an alternating solution. This way, you know both heaters in a functional state.

Then you just need a way to alert when one of the heaters is no longer working.

There is very little chance both heaters are going to fail at the exact same time (maybe around the same time but not at the exact same time). There is a much greater chance the backup won't work when you need it (having been submerged in saltwater for multiple months/years or improperly configured at some point).

To detect a non-functional heater, you could employ one of a few methods using a controller.

1. Detect a change in the current via the outlet

2. Detect a change in how long it takes to heat the tank

3. If alternating the heaters, detect a fall past a low temperature point while trying to heat with each of the heaters

As for load balancing versus alternating, this comes down to whether heaters fail more often from increased cycling or increased usage. Load balancing decreases the overall usage but not the cycling. Alternating cuts the cycling on each heater by half and also reduces their usage.

I personally choose alternating, but this does usually require more advanced controller programming knowledge."
 

nele

Community Member
View Badges
Joined
Dec 7, 2017
Messages
45
Reaction score
20
Location
Serbia
Rating - 0%
0   0   0
What is the latest fritzing diagram for current build? I would like to make KiCad version, I would like to play a bit and to make some shield v.1 prototype maybe. What do you think?
 

Ryan115

Well-Known Member
View Badges
Joined
Dec 28, 2010
Messages
586
Reaction score
1,085
Location
Mississippi
Rating - 0%
0   0   0
Another thing to the wishlist (again I'm sorry if this has already been discussed):

In the ULM thread I came across this post about redundancy and backup systems surrounding heaters and I found it very interesting. And it would be very cool if Reef-Pi could have ways to set up different ways of redundancy and backup systems surrounding this very vulnerable part of our system. In the post below sbidny talks about two different ways of dealing with it, either in a load balancing way or an alternative way. Some may prefer one before the other. If Reef-Pi were able to control multiple heaters it would be cool with an option to choose between load balancing or alternating solution. A way to detect faulty heaters would of course be super valuable also.

https://www.reef2reef.com/threads/t...rstv-investigates.341149/page-20#post-4333504
"Ideally, a backup should be running just as often as your primary, either in a load balancing (both heaters running) or an alternating solution. This way, you know both heaters in a functional state.

Then you just need a way to alert when one of the heaters is no longer working.

There is very little chance both heaters are going to fail at the exact same time (maybe around the same time but not at the exact same time). There is a much greater chance the backup won't work when you need it (having been submerged in saltwater for multiple months/years or improperly configured at some point).

To detect a non-functional heater, you could employ one of a few methods using a controller.

1. Detect a change in the current via the outlet

2. Detect a change in how long it takes to heat the tank

3. If alternating the heaters, detect a fall past a low temperature point while trying to heat with each of the heaters

As for load balancing versus alternating, this comes down to whether heaters fail more often from increased cycling or increased usage. Load balancing decreases the overall usage but not the cycling. Alternating cuts the cycling on each heater by half and also reduces their usage.

I personally choose alternating, but this does usually require more advanced controller programming knowledge."
Redundancy is somewhat already in place for this. If a heater were to fail, the tank temp would drop and you would be alerted through the telemetry. You can also view the amount of time the heater has been on for each hour of the last 7 days. You would need a room temperature sensor and a lookup chart for reef-pi to know that it was taking too long for it to heat at a particular ambient temperature. Mine runs much more often if the room temp is 65 than if it is 75.
 

Mandelstam

Well-Known Member
View Badges
Joined
Oct 29, 2017
Messages
688
Reaction score
1,066
Location
Malmö, Sweden
Rating - 0%
0   0   0
Redundancy is somewhat already in place for this. If a heater were to fail, the tank temp would drop and you would be alerted through the telemetry. You can also view the amount of time the heater has been on for each hour of the last 7 days. You would need a room temperature sensor and a lookup chart for reef-pi to know that it was taking too long for it to heat at a particular ambient temperature. Mine runs much more often if the room temp is 65 than if it is 75.

In my opinion an alarm is not the same as redundancy or a backup system. Many people have some form of backup heater installed, often set to a lower temp so it will only kick in if the main one fails. A disadvantage with that, as the linked post pointed out, is that you rely on the backup to be functioning when in reality you don't really know, as it's rarely used. Therefore, an alternating system or a load sharing system is much safer.

Heaters are a weak point in a reef system so having some extra safety features in place seems reasonable to me. Especially when having the power of a controller to back it up.
 

Gareth elliott

Read, Tinker, Fail, Learn
View Badges
Joined
May 7, 2017
Messages
5,470
Reaction score
6,903
Location
NJ
Rating - 0%
0   0   0
In my opinion an alarm is not the same as redundancy or a backup system. Many people have some form of backup heater installed, often set to a lower temp so it will only kick in if the main one fails. A disadvantage with that, as the linked post pointed out, is that you rely on the backup to be functioning when in reality you don't really know, as it's rarely used. Therefore, an alternating system or a load sharing system is much safer.

Heaters are a weak point in a reef system so having some extra safety features in place seems reasonable to me. Especially when having the power of a controller to back it up.

Funny story, my primary heater failed 2 days ago. Back up heater kept the tank at the 76 its set to do. Luckily amazon had free one day shipping on cobalt neos so had up and running the next day.

I think you could probably accomplish alternating with the timer function, if ability to add a second heater pin.
Put each on say 4 hour timers,
Downside is if both are used equally frequently they will fail around the same time. I get this all the time with batteries in my wireless mouse and keyboard. 1 day mouse dies, next keyboard, when changed at the same time.
 

ARE YOU READY TO CONFESS TO CRAZIEST, DUMBEST, FUNNIEST THING YOU’VE EVER DONE IN REEFING?

  • Yeah, I'll confess! (Share your story in the comments!)

    Votes: 1 100.0%
  • Nah, I'll keep mine a secret...(Don't be like that, share with the class!)

    Votes: 0 0.0%
Back
Top
Home
Post thread…
Market
What's new