Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v1 hacking: hardware and software #15

Open
tedder opened this issue Oct 7, 2020 · 16 comments
Open

v1 hacking: hardware and software #15

tedder opened this issue Oct 7, 2020 · 16 comments

Comments

@tedder
Copy link
Collaborator

tedder commented Oct 7, 2020

Placeholder for a v1 discussion, spinning out of #12.

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

Fred, @fbretmounet, posted:

@kruton , I'm trying to replicate your findings on a first generation feeder. If I followed you correctly, point mqtt-a01.arrowconnect.io to a machine on your local network (I use pihole and love it!). Start a mosquitto broker on that machine and the feeder should start publishing messages to that broker?
If so, I've spent some time on it and it seems gen 1 is not mqtt-aware :-(

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

kruton:

@fbretmounet do you have any pictures of the electronics on the V1 feeder? It seemed like all the smarts may have been in the bowl.

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

fred:

@kruton , yes it is under the bowl. I took the attached pictures when I opened it a few weeks ago. Let me know if you want more pictures!
20200821_160622
20200821_155438

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

kruton

Looks like this might be a design based on electricimp imp003. Are there any pictures of the overall board? I'd be more interested to see if there are pads to connect debug cables as mentioned in their documentation.

The other chip is a flash part.

It looks like electricimp has a lot of repositories on GitHub which has all the parts for implementing a server and communicating via their optical BlinkUp system.

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

fbret

Here are picture of the top of the board and a picture of the back only showing test pads. I did not find obvious jtag or serial pads. I did not find standard debug documentation from electricimp. :-(
https://developer.electricimp.com/hardware/imp/imp003pinmux suggests quite a few different combinations for serial... I guess I could try every one of them...

20201007_105930
20201007_105937
20201007_110025

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

me

When the gen1 discussion came up in the past, it sounded like the Imp was shipped in "production mode", locking down a lot of the debugging and such.

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

fbret

I hate it when manufacturers do it right! The alternative is to rebuild my own board :-(

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

@brbeaird

Such a bummer. You guys are doing great work - hate that I can't easily
apply this to my V1. Honestly hate the idea of just chucking the whole
thing into the trash, but I don't know what else I'd do with it. I already
bought a PetKit feeder, which seems to do the job just as well.

@tedder
Copy link
Collaborator Author

tedder commented Oct 7, 2020

kruton

I don't know what the V1 looks like on the network. I would suggest trying to do packet captures of what it's sending across the network (or trying to send now that PetNet's domains are defunct).

@keytheengineer
Copy link

It looks like the V1 has an open pad for a micro USB on the back. Has anyone messed with that?

@jmunowitch
Copy link

If anyone on the dev team needs a petnet v1 for this task, I have an extra in San Francisco.

@techydude
Copy link

hi everyone,

i've been 'in transit' for the past 7 months, so only seeing this repo now, and I'm on the eve of getting my gen1 back in my hands (it's been in storage/on a ship since Sept2020), and am open to helping get this project working on gen1 hardware.

the possibility of developing an alt MCU/wifi board (a replacement for the Imp) is not out of the question for me, nor even replacing the entire electronics; i'm already in the early stages of re-braining one of the 'Wopet' feeders with a Particle Boron, because its non-IoT UI is horrid, like programming an 80s VCR. but it's mechanics are shitty, compared to the Petnet gen1's mechanics which seem pretty reliable and long-lived to me (opinions about gen2's mechanics seem to vary quite a lot!), so it may be a better use of my time to target new hardware to gen1/gen2 Petnet instead of the Wopet...

so, are there any other developments re gen1 I should be aware of? given a new brain, is there much interest in getting gen1 working with this repo that you know of? (i only just discovered this repo, so I'll have a poke around some more).

@dorfman2
Copy link

dorfman2 commented May 19, 2021

@techydude I'm about to start the process of just replacing the board, and am happy to help. I have limited experience with PCD design, or even better, if we can just drop in a ESP8266 or similar.

My goal would be to capitalize on all the hard work done here with the app if possible. My question:

What board/setup would be able to talk to the app that has been developed here?

@techydude
Copy link

techydude commented May 19, 2021

@dorfman2 Thanks for replying!

Since my 1st post, I've proceeded on the assumption (from other's investigation above) that the electricIMP on the Gen1 is locked & not reprogrammable, though not confirmed this myself.

I've looked at the Gen1's mechanics and the electrical peripherals, and discovered they're almost identical to the cheaper/nastier WoPet I was originally targeting with a new brain/PCB (tho of course the PetNet has no UI other than the manual dispense button with 2-colour LEDs, whereas the WoPet has an LCD + buttons).

Better yet, I think it will be possible to make 1 PCB design with 'snap-off' section(s) that will allow that 1 PCB to fit either PetNet gen1 (no LCD or buttons fitted), or the WoPet (with LCD & buttons fitted). So that's my plan at this point. I hope to tackle that over the coming month. Of course I'll be posting it here on GitHub so others can make it if they wish. Whether I go as far as having a batch made and selling them (e.g. Tindie) depends on demand, and so far you're the only one who's replied :-), and admittedly the PetNet Angst was a 2020 thing, so I might've missed the wave there, who knows...

I've no idea if anyone's interested in new hardware for PetNet Gen-2? It's great that this repo will work with Gen-2's firmware as-is, but there's little to no room for modification. I'd need a few photos & dimensions of the Gen2 board to work out if I can kill 3 birds with 1 PCB... ;)

Anyhoo, I was planning to use a Particle.io Argon board (wifi + BT; BT likely not needed), as the Particle cloud can be used for dead easy firmware updates without needing to add any of one's own infrastructure, whilst still having an open LAN/internet connection for accessing application support (i.e. this repo). But I'm also OK with putting in an ESP32 variant, if there was a decent reliable OTA-firmware-update mech available? I'm not up-to-date on that scene, so open to suggestions!

@dorfman2
Copy link

@techydude Sound fine to me! My background is a bit more on the DIY hardware side, so this sounds more refined that my solution of stick a Raspberry Pi in it. Are you on the Tedder slack to talk about this further?

@tedder
Copy link
Collaborator Author

tedder commented May 20, 2021

sent.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants