-
Hello again
06/15/2020 at 14:43 • 0 commentsLong time without update. It has been crazy busy in the past 6 month! We start shipping PiSugar 2. And the Pro version for bigger Pi is on the way.
There is still one thing we did not satisfy that we can only detect the charging status according to the increasing of the voltage, which is not precise. Therefore we decide the change the charging solution to make it perfect.
-
Pwnagotchi with clear case
12/14/2019 at 04:00 • 1 commentMorning! Looking for new friends around....
-
PiSugar2 in Beta
11/25/2019 at 02:39 • 3 commentsWe start sending PiSugar2 beta last week for some friends to evaluate!
Since the springs are quite strong, which will make it not that easy to install as the previous version, we are considering solder four nuts on the pisugar board so that you don't have to align them while installing. The case has to be redesigned to adapt this.
The i2c address we are using is 0x32(RTC) and 0x75(power ic). I found that some led phats are using 0x75, it's a disaster to write something wrong on the power ic. But since it's i2c, it seems that we can prevent this from happening, just be careful when you have a 0x75 phat. (some phats allow you to change the address)
-
some progress
10/26/2019 at 03:05 • 2 comments1. We finally get qualified pin samples today... It has been almost two months since we started testing this design. The next thing is to start making new pcbs to intergrate these tiny pins. Then PiSugar 2 is about to release.
2. A working prototype of PiSugar 2 pro! ( Please ignore the 1200mah sticker, it's actually a 5000mah battery, about 12 hours battery life for rpi 3B... ) The otuput chip we used is IP5332, which claims to have 3A output capability. However, we just find out that it has only 2.6A output without charging... Which is inacceptable... So we are now switching to another chip which will have real 3A output.
-
Wireless Charging
09/21/2019 at 01:37 • 4 commentsJust found a perfect solution for wireless charging! The size of it fits so well to the pi zero and the battery. Maybe we should add two solder pads and take this coil as an optional sub-module.
-
New pin samples
09/18/2019 at 06:39 • 1 commentJust get a photo of new pin parts from the vendor. These are headers, bases and springs waiting for assembling. They have produced so many units, much more than we expect 0_0'
-
Use Web Bluetooth to Connect Your Pi
08/18/2019 at 03:54 • 0 commentsIt was three days ago I found that bluetooth can be accessed by web content in Chrome! So I have written a webpage as new client for our previous bluetooth project.
First, install the server-side program on your pi, see how: https://github.com/PiSugar/sugar-wifi-conf
Then you can connect your pi through BLE with your laptop or smartphone by opening this link in chrome app: https://www.pisugar.com/sugar-wifi-conf
Since web bluetooth has not been widely supported yet, I have tested on several devices:
- It works well with latest Chrome for MacOS and Android.
- On Win10, Chrome is able to detect the bluetooth but I am not able to open it, which is pretty strange. (If you can open it, please do tell me how)
- Chrome for iOS doesn't support web-bluetooth. There is an ios app called WebBLE which implements the web-bluetooth api. However, it doesn't works. It seems different from the standard api. I will see how to fix this later.
For other compatibility information please see here.
UPDATE
It's able to run on iOS now!
The iOS problem I mentioned above, it's because WebBLE browser only supports the early version of web-bluetooth api, which doesn't include "getCharacteristics" method. (Click here to see more detail) Therefore I had to use the old way to get characteristics when it runs on iOS.
Make sure you have install the latest version of sugar-wifi-conf on your pi. Download the WebBLE app and open this link: https://www.pisugar.com/sugar-wifi-conf
-
Software architecture
08/14/2019 at 02:56 • 0 commentsHonestly I didn't have a clear view at the beginning of the coding work, but I believe a friendly UI is always needed. As I go deeper, I found some suitable tools to achieve this goal.
The diagram below shows the architecture behind this.
There are several ways to interact with PiSugar 2:
- shell script: if you are familiar with linux, or you want write some program that needs information from the battery, you can access it with shell scripts. It's based on UDS and you know have to go across the network layer.
- web UI : you can manage PiSugar2 through a web page. Although pi zero is able to run a desktop but I use it without screens in most of time. Web UI is accessble for other machines in the same local network.
- electron UI: electron is one of my favourites. It can build a really nice desktop app written in html5, also I can use the same code to generate the web UI. Double kill! The problem is that electron does not support armv6l (pi zero). Never mind, I can still use the web UI on pi zero.
- system tray: if you have a desktop raspbian, I do think a battery tray icon indicating power level is necessary. For compatibility with armv6l, I use pyQt5 to build the icon. ( I had tried Qt to build the main window, although it can run on pi zero, it's cumbersome. )
The http sever is just for hosting html and js files, most of the UI communication is based on websocket, which mean we can get realtime data such as button events, whether the RTC alarm is triggered, etc.
To be continue...
-
Mass production of the first generation
08/13/2019 at 03:59 • 0 commentsJust recieve two boxes of PiSugar (semi-finished) today.
Since our recent work is focused on the development of PiSugar 2, it is perhaps the last mass production of the first generation! It's not easy since from design to PCB, SMT, soldering, testing, if something goes wrong we have to start over.
-
Coding for PiSugar 2
08/02/2019 at 07:06 • 1 commentThis week we start coding for PiSugar 2.
There will be a core python program allowing you to interact with it using shell.
Also there will be a system tray icon and a nice UI build in electron.
However, I found that electron has no support for armv6l (pi zero), it can only run on pi 2, 3 ,4.
So I will build a webpage ui for armv6l as replacement.
But wait... why I need to run such program on a bigger Pi? Isn't PiSugar is just for Pi zero?
Well... maybe it will be more than that.