You are logged in as:
SingingCat is the first to market with a full stack, opensource, licensable IoT-as-a-Service offering.
From electronic engineering over connectivity, security, to cloud backend, remote debugging and logging as well as upgrades and rollouts, SingingCat has that one single platform to catch them all.
...substantially facilitates management of those scores of IoT-enabled devices of various backgrounds out there on customer's premise, therefore eliminating the need for a manufacturer to reinvent the wheel again... letting especially startups focus on finding their own USP
We believe that the Internet of Things is not just about one particular device bound to a single app. Instead we believe, the true power of the Internet of Things comes when many devices 'know' about their environment. Then, since you can combine the devices, you can put much smarter rules in place. (Frankly, we don't think a home is 'smart' just because one can turn a light on or off with a smartphone app!). So all the information our devices have are there for you. Of course, none of it is reported to any servers in a cloud (unless of course you want to!).
Flashing, updating and provisioning of Modules is here
You can find the API documentation (protobuf) to access the modules on our servers here: HTML
You can find the API documentation of our modules here:API
A tutorial on how to add custom code to the modules:Simple Customisation
And here is how you blink remote lights: Remote Blinky
A description of the routing algorithm is available here: Routing Description
Request sent.
Sending request...
You may enter a module number, a nodeid, or the module's wifi-SSID
 Please note, that for privacy reasons we cannot confirm if your request was successful or not. (Because we would be giving away the information wether or not a given identifier exists and has an owner or not)
If your request is for a valid module, we will share your email address with the current owner
At first, I used arduinos and rasperry PIs, which are a lot of fun, and one can share a lot of code with others. But it quickly made the livingroom look very untidy. It also didn't feel right to have to purchase a power-supply, a wifi-shield, a raspberry pi, and even a transistor, seperately, then write the code, and then solder it to a simple little device. And each time we changed the wifi password we had to get the device, plug it into a computer and upload new code via USB. This had to be easier.
After talking to several people, we thought, it would be great if it wouldn't only react to email, and if it not only be a cat, but a more generic device, but still 'ready-to-go' and 'plug'n play' and 'turnkey solution'.
UK:
Freephone:0800 012 4784
International:+44 20 7099 4804
DE:
Telefon:+49 (0) 30 51 300 021
E-Mail:
If you want to know more about the people behind this, read more about the team here.
SingingCat ltd.
Registered Office: 1 Kilmarsh Road, W6 0PL, London, UK
SingingCat UG
Registered Office: Schönhauser Allee 152, 10435 Berlin, Germany
Managing Director/Geschäftsführer: Conrad Wood
ID: {{state.current_gitrepo.ID}}
ID |
Commits |
Type |
Name |
Description |
loading data... | ||||
{{repo.UserCommits}} | {{repo.Type}} | {{repo.ArtefactName}} | {{repo.Description}} |
ID: {{rdata.builddir[state.current_build.Artefact.ArtefactID.ID].data.ArtefactInfo?.ID}}
Name: "{{rdata.builddir[state.current_build.Artefact.ArtefactID.ID].data.ArtefactInfo?.Name}}"
Version: {{state.current_build.BuildVersion}}
Path: "{{rdata.builddir[state.current_build.Artefact.ArtefactID.ID].data.Path}}"
{{rdata.scwebapi_BuildsOverview.status}}
{{file.Name}}
Name
Latest Version
Repository ID
{{af.Version}}
{{af.RepositoryID}}
Loading...
Name: | |
Location: | |
Owner: {{CurrentDeviceData().ModDetails.Owner.Email}}
CloudToken: {{CurrentDeviceData().ModDetails.CloudToken}}
Access Point password: {{CurrentDeviceData().ModDetails.APPassword}}
Node: 0x{{CurrentDeviceData().ModDetails.ModuleStatus.NodeStr}}
Statistics
Direct Peers:
{{peer.Device}} | {{peer.SignalIndicator}} |
Current SSID: | {{CurrentDeviceData().ModDetails.MostRecentSSID}} | |
Current IP: | {{CurrentDeviceData().ModDetails.MostRecentIP}} | |
SSID Password: | {{CurrentDeviceData().ModDetails.SSIDPassword}} | |
Wifi Firmware: | {{CurrentDeviceData().ModDetails.WifiFirmware}} | |
  | ||
Loader version: | {{CurrentDeviceData().ModDetails.ModuleStatus.LoaderVersion}} | |
  | ||
RepositoryID: | {{CurrentDeviceData().ModDetails.ModuleStatus.Repository}} (retrieving more data...) | |
RepositoryID: | {{FirmwareForDevice().data.Firmware.RepositoryID}} {{FirmwareForDevice().data.Firmware.ArtefactName}} | |
Active Version: | {{FirmwareForDevice().data.Firmware.InstalledVersion}} Upgrade | |
Latest Version: | {{FirmwareForDevice().data.Firmware.LatestVersion}} | |
  | ||
UserApp Repository: | (loading more detail...) {{CurrentModule().ConfiguredUserAppRepository}}  Add | Add |
UserApp Configured Version: | automatic | {{CurrentDeviceData().ModDetails.Module.ConfiguredUserAppVersion}} |
UserApp Installed Version: | {{CurrentDeviceData().ModDetails.Module.InstalledUserAppVersion}} @ 0x{{toHex(CurrentDeviceData().ModDetails.Module.InstalledUserAppAddress)}} |
Test Utilities: {{rdata.testbutton?.testbutton?.update_status}}
ID | Enabled | FriendlyName | Name | ReportingInterval | PollingInterval | Available | Detected |
{{sensor.Config.SensorDef.ID}} | {{sensor.Config.SensorDef.Name}} | seconds | milliseconds | {{sensor.Config.SensorDef.Available}} | {{sensor.Config.SensorDef.Detected}} |
{{row.Title}} |
Request ownership to new module
ID | Node | Name | Status | App/Sensor | Build | ||
Loading more data... | |||||||
Status: Online | App #{{mod.RunningApp}} | App Build: {{mod.AppBuildDate}} | |||||
{{sensor.ID}} | {{sensor.FriendlyName}} | {{sensor.Name}} | {{sensor.Name}} | {{sensor.Value}} | {{sensor.Timestamp}} | Graph |
Select a delivery address:
We will be delivering to this address:
shop snippet
{{ item.MarketingName }} | {{ item.GrosAmountText}} each | Currently out of stock | Currently out of stock {{ item.StockLevel }} in stock |
Loading basket...
Description | Quantity | Net Amount | Vat Rate | Vat | Amount |
{{item.Item.MarketingName}} | {{item.Quantity}} | {{item.NetTotalString}} | {{item.Item.VatRate}}% | {{item.TotalVatString}} | {{item.GrosTotalString}} |
Total: | {{rdata.shop.basket.data.Basket.NetTotalString}} | {{rdata.shop.basket.data.Basket.TotalVatString}} | {{rdata.shop.basket.data.Basket.GrosTotalString}} |
Total amount to pay: {{rdata.shop.basket.data.Basket.GrosTotalString}}
To proceed to payment, please tell us which address to deliver to.
 Delivery Address:
{{rdata.new.addaddress.update_error.message}}
 Saved.
 Description | Quantity | Net Amount | Vat Rate | Vat | Gros Amount |
{{item.Description}} | {{item.Quantity}} | {{item.NetAmount}} | {{item.VatRate}}% | {{item.Vat}} | {{item.GrossAmount}} |
Total: | {{ rdata.payment[1].data.Basket?.NetTotal}} | {{ rdata.payment[1].data.Basket?.TotalVat}} | {{ rdata.payment[1].data.Basket?.GrossTotal}} |
We do not process your credit card. We use a third party, called Square. We transmit your credit card and the amount to be debited to Square. In turn, they process the payment and inform us of the outcome. This means we do not store your credit card nor does it ever go through our systems. It is transmitted from your web browser directly to Square. We looked closely at Square and believe it is secure and takes privacy seriously.
You need to log in to access this page.
Click here to log in.
An Error has occured on page {{error_page}}
{{error}}
{{errornerdy}}